<!-- -->
<!-- Warranty & Liability -->
<!-- To the extent permitted by applicable law and unless explicitly -->
<!-- otherwise agreed upon, XLOG Technologies AG makes no warranties -->
<!-- regarding the provided information. XLOG Technologies AG assumes -->
<!-- no liability that any problems might be solved with the information -->
<!-- provided by XLOG Technologies AG. -->
<!-- -->
<!-- Rights & License -->
<!-- All industrial property rights regarding the information - copyright -->
<!-- and patent rights in particular - are the sole property of XLOG -->
<!-- Technologies AG. If the company was not the originator of some -->
<!-- excerpts, XLOG Technologies AG has at least obtained the right to -->
<!-- reproduce, change and translate the information. -->
<!-- -->
<!-- Reproduction is restricted to the whole unaltered document. Reproduction -->
<!-- of the information is only allowed for non-commercial uses. Selling, -->
<!-- giving away or letting of the execution of the library is prohibited. -->
<!-- The library can be distributed as part of your applications and libraries -->
<!-- for execution provided this comment remains unchanged. -->
<!-- -->
<!-- Restrictions -->
<!-- Only to be distributed with programs that add significant and primary -->
<!-- functionality to the library. Not to be distributed with additional -->
<!-- software intended to replace any components of the library. -->
<!-- -->
<!-- Trademarks -->
<!-- Jekejeke is a registered trademark of XLOG Technologies AG. -->
<!-- -->

<project name="run_transpile_playerj" default="main">
    <import file="../../transpiler/envir.xml"/>

    <target name="main" depends="cross_playerj">
    </target>

    <target name="cross_playerj" depends="cross_playerj_liblet,
          cross_playerj_transpile, cross_playerj_compile">
    </target>

    <target name="cross_playerj_liblet">
        <delete dir="../../playerj/canned/liblet"/>
        <copy todir="../../playerj/canned/liblet">
            <fileset dir="../../transpiler/drawer/liblet"/>
        </copy>
    </target>

    <!--                                              -->
    <!-- Self Hosting                                 -->
    <!--                                              -->

    <target name="cross_playerj_transpile">
        <java jvm="${jdk9}"
              classname="Dogelog"
              fork="true">
            <jvmarg value="--add-opens=java.base/jdk.internal.misc=ALL-UNNAMED"/>
            <classpath>
                <pathelement location="../../playerj/canned"/>
            </classpath>
            <arg file="main.p"/>
        </java>
    </target>

    <!--                                                           -->
    <!-- JDK 17 compile with debug="true"                          -->
    <!--                                                           -->

    <target name="cross_playerj_compile" depends="cross_playerj_novacore,
              cross_playerj_foreign">
    </target>

    <target name="cross_playerj_novacore">
        <javac executable="${jdk9c}"
               includeantruntime="false"
               srcdir="../../playerj/drawer"
               destdir="../../playerj/canned"
               debug="true">
            <compilerarg value="--source"/>
            <compilerarg value="21"/>
            <compilerarg value="--target"/>
            <compilerarg value="21"/>
            <compilerarg value="--add-exports"/>
            <compilerarg value="java.base/jdk.internal.misc=ALL-UNNAMED"/>
            <include name="nova/**/*.java"/>
            <include name="Dogelog.java"/>
        </javac>
    </target>

    <target name="cross_playerj_foreign">
        <javac executable="${jdk9c}"
               includeantruntime="false"
               srcdir="../../playerj/canned"
               destdir="../../playerj/canned"
               debug="true">
            <compilerarg value="--source"/>
            <compilerarg value="21"/>
            <compilerarg value="--target"/>
            <compilerarg value="21"/>
            <compilerarg value="--add-exports"/>
            <compilerarg value="java.base/jdk.internal.misc=ALL-UNNAMED"/>
            <include name="foreign/**/*.java"/>
        </javac>
    </target>

    <target name="cross_playerj_canned">
        <!-- jar: type system_url not yet working -->
        <!-- copy todir="../../playerj/canned">
            <fileset dir="../../playerj/drawer">
                <include name="**/*.properties"/>
            </fileset>
        </copy -->
        <!-- delete file="../../playerj/canned/dogelog.zip"/>
        <zip destfile="../../playerj/canned/dogelog.zip"
             modificationtime="1746816224755">
            <fileset dir="../../playerj/canned"
                     includes="**/*.class"
                     excludes="player/**/*.class,
                               playerpy/**/*.class,
                               transpiler/**/*.class,
                               Compress.class,
                               Unicode.class,
                               UnicodePy.class"/>
        </zip -->
    </target>
    
</project>