Refactor Linux build file similarly to macOS build file

This commit is contained in:
Michael Pfaff 2022-03-29 12:55:52 -04:00
parent 5f66c07685
commit 9cb793315f
Signed by: michael
GPG Key ID: F1A27427218FCA77
1 changed files with 29 additions and 39 deletions

View File

@ -1,22 +1,12 @@
<?xml version="1.0"?>
<project name="lwjgl native code, linux" basedir="../../bin/lwjgl" default="compile">
<property name="native" location="../../src/native"/>
<project name="lwjgl native code, linux" basedir="/dev/null" default="compile">
<property name="libname32" value="liblwjgl.so"/>
<property name="libname64" value="liblwjgl64.so"/>
<property name="libs32" value="-L/usr/X11R6/lib -L/usr/X11/lib -lm -lX11 -lXext -lXcursor -lXrandr -lXxf86vm -lpthread -L${java.home}/lib/i386 -ljawt" />
<property name="libs64" value="-L/usr/X11R6/lib64 -L/usr/X11/lib64 -lm -lX11 -lXext -lXcursor -lXrandr -lXxf86vm -lpthread -L${java.home}/lib/amd64 -ljawt" />
<property name="cflags32" value="-O3 -Wall -c -fPIC -std=c99 -Wunused"/>
<target name="clean">
<delete>
<fileset dir="x32"/>
<fileset dir="x64"/>
<fileset dir="." includes="*.o"/>
<fileset dir="." includes="*.so"/>
</delete>
</target>
<target name="compile">
<exec executable="uname" outputproperty="hwplatform">
<arg value="-m"/>
@ -24,10 +14,10 @@
<condition property="cflags_pthread" value="-pthreads" else="-pthread">
<os name="SunOS" />
</condition>
<condition property="version_script_flags32" value="" else="-Wl,--version-script='${native}/linux/lwjgl.map'">
<condition property="version_script_flags32" value="" else="-Wl,--version-script='${lwjgl.src.native}/linux/lwjgl.map'">
<os name="SunOS" />
</condition>
<condition property="version_script_flags64" value="-m64" else="-Wl,--version-script='${native}/linux/lwjgl.map'">
<condition property="version_script_flags64" value="-m64" else="-Wl,--version-script='${lwjgl.src.native}/linux/lwjgl.map'">
<and>
<os name="SunOS" />
</and>
@ -61,65 +51,65 @@
</target>
<target name="compile32" unless="build.64bit.only">
<mkdir dir="x32"/>
<apply dir="x32" executable="gcc" skipemptyfilesets="true" failonerror="true" parallel="true">
<mkdir dir="${lwjgl.target.gen.obj}/i386"/>
<apply dir="${lwjgl.target.gen.obj}/i386" executable="gcc" skipemptyfilesets="true" failonerror="true" parallel="true">
<arg line="${cflags32} ${cflags_pthread}"/>
<arg value="-I${java.home}/include"/>
<arg value="-I${java.home}/include/linux"/>
<arg value="-I${java.home}/../include"/>
<arg value="-I${java.home}/../include/linux"/>
<arg value="-I${java.home}/../include/solaris"/>
<arg value="-I${native}/common"/>
<arg value="-I${native}/common/opengl"/>
<arg value="-I${native}/linux"/>
<arg value="-I${native}/linux/opengl"/>
<arg value="-I${lwjgl.src.native}/common"/>
<arg value="-I${lwjgl.src.native}/common/opengl"/>
<arg value="-I${lwjgl.src.native}/linux"/>
<arg value="-I${lwjgl.src.native}/linux/opengl"/>
<mapper type="glob" from="*.c" to="*.o"/>
<fileset dir="${native}/common" includes="*.c"/>
<fileset dir="${native}/common/opengl" includes="*.c"/>
<fileset dir="${lwjgl.src.native}/common" includes="*.c"/>
<fileset dir="${lwjgl.src.native}/common/opengl" includes="*.c"/>
<fileset dir="${lwjgl.target.gen.native}/openal" includes="*.c"/>
<fileset dir="${lwjgl.target.gen.native}/opencl" includes="*.c"/>
<fileset dir="${lwjgl.target.gen.native}/opengl" includes="*.c"/>
<fileset dir="${native}/linux" includes="*.c"/>
<fileset dir="${native}/linux/opengl" includes="*.c"/>
<fileset dir="${lwjgl.src.native}/linux" includes="*.c"/>
<fileset dir="${lwjgl.src.native}/linux/opengl" includes="*.c"/>
</apply>
<apply dir="." parallel="true" executable="gcc" failonerror="true">
<apply dir="${lwjgl.target.bundle}" parallel="true" executable="gcc" failonerror="true">
<srcfile/>
<arg line="${linker_flags32}"/>
<fileset dir="x32" includes="*.o"/>
<fileset dir="${lwjgl.target.gen.obj}/i386" includes="*.o"/>
</apply>
<apply dir="." parallel="true" executable="strip" failonerror="true">
<apply dir="${lwjgl.target.bundle}" parallel="true" executable="strip" failonerror="true">
<fileset file="${libname32}"/>
</apply>
</target>
<target name="compile64" unless="build.32bit.only">
<mkdir dir="x64"/>
<apply dir="x64" executable="gcc" skipemptyfilesets="true" failonerror="true" parallel="true">
<mkdir dir="${lwjgl.target.gen.obj}/x86_64"/>
<apply dir="${lwjgl.target.gen.obj}/x86_64" executable="gcc" skipemptyfilesets="true" failonerror="true" parallel="true">
<arg line="${cflags64} ${cflags_pthread}"/>
<arg value="-I${java.home}/include"/>
<arg value="-I${java.home}/include/linux"/>
<arg value="-I${java.home}/../include"/>
<arg value="-I${java.home}/../include/linux"/>
<arg value="-I${java.home}/../include/solaris"/>
<arg value="-I${native}/common"/>
<arg value="-I${native}/common/opengl"/>
<arg value="-I${native}/linux"/>
<arg value="-I${native}/linux/opengl"/>
<arg value="-I${lwjgl.src.native}/common"/>
<arg value="-I${lwjgl.src.native}/common/opengl"/>
<arg value="-I${lwjgl.src.native}/linux"/>
<arg value="-I${lwjgl.src.native}/linux/opengl"/>
<mapper type="glob" from="*.c" to="*.o"/>
<fileset dir="${native}/common" includes="*.c"/>
<fileset dir="${native}/common/opengl" includes="*.c"/>
<fileset dir="${lwjgl.src.native}/common" includes="*.c"/>
<fileset dir="${lwjgl.src.native}/common/opengl" includes="*.c"/>
<fileset dir="${lwjgl.target.gen.native}/openal" includes="*.c"/>
<fileset dir="${lwjgl.target.gen.native}/opencl" includes="*.c"/>
<fileset dir="${lwjgl.target.gen.native}/opengl" includes="*.c"/>
<fileset dir="${native}/linux" includes="*.c"/>
<fileset dir="${native}/linux/opengl" includes="*.c"/>
<fileset dir="${lwjgl.src.native}/linux" includes="*.c"/>
<fileset dir="${lwjgl.src.native}/linux/opengl" includes="*.c"/>
</apply>
<apply dir="." parallel="true" executable="gcc" failonerror="true">
<apply dir="${lwjgl.target.bundle}" parallel="true" executable="gcc" failonerror="true">
<srcfile/>
<arg line="${linker_flags64}"/>
<fileset dir="x64" includes="*.o"/>
<fileset dir="${lwjgl.target.gen.obj}/x86_64" includes="*.o"/>
</apply>
<apply dir="." parallel="true" executable="strip" failonerror="true">
<apply dir="${lwjgl.target.bundle}" parallel="true" executable="strip" failonerror="true">
<fileset file="${libname64}"/>
</apply>
</target>