Update Files

This commit is contained in:
2025-01-22 16:18:30 +01:00
parent ed4603cf95
commit a36294b518
16718 changed files with 2960346 additions and 0 deletions

View File

@ -0,0 +1,101 @@
<xml>
<!-- Set architecture -->
<section if="HXCPP_X86">
<set name="ARCH" value="-x86" />
<set name="PLATFORM_NUMBER" value="19" unless="PLATFORM_NUMBER" />
<set name="ABITRIPLE" value="i686-linux-android" />
</section>
<section if="HXCPP_X86_64">
<set name="ARCH" value="-x86_64" />
<set name="PLATFORM_NUMBER" value="21" unless="PLATFORM_NUMBER" />
<set name="ABITRIPLE" value="x86_64-linux-android" />
</section>
<section if="HXCPP_ARMV7">
<set name="ARCH" value="-v7" />
<set name="PLATFORM_NUMBER" value="19" unless="PLATFORM_NUMBER" />
<set name="ABITRIPLE" value="armv7a-linux-androideabi" />
<set name="EXEPREFIX" value="arm-linux-androideabi" />
</section>
<section if="HXCPP_ARM64">
<set name="ARCH" value="-64"/>
<set name="PLATFORM_NUMBER" value="21" unless="PLATFORM_NUMBER" />
<set name="ABITRIPLE" value="aarch64-linux-android" />
</section>
<error value="Please set one of the architectures, eg HXCPP_ARM64, HXCPP_X86, ..." unless="ABITRIPLE" />
<set name="PLATFORM" value="android-${PLATFORM_NUMBER}" />
<set name="ANDROID_PLATFORM_DEFINE" value="HXCPP_ANDROID_PLATFORM=${PLATFORM_NUMBER}" />
<path name="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${ANDROID_HOST}/bin" />
<section unless="NDKV22+">
<set name="HXCPP_AR" value="arm-linux-androideabi-ar" />
<set name="EXEPREFIX" value="${ABITRIPLE}" unless="EXEPREFIX" />
</section>
<section if="NDKV22+">
<set name="HXCPP_AR" value="llvm-ar" />
<set name="EXEPREFIX" value="llvm" />
</section>
<include name="toolchain/gcc-toolchain.xml"/>
<compiler id="android-gcc" exe="clang++">
<exe name="clang++" />
<flag value="--target=${ABITRIPLE}${PLATFORM_NUMBER}" />
<!-- File Related -->
<include name="toolchain/common-defines.xml" />
<flag value="-I${HXCPP}/include"/>
<flag value="-Iinclude"/>
<objdir value="obj/android${OBJEXT}${ARCH}" />
<ext value=".obj"/>
<pchflag value="-x" />
<pchflag value="c++-header" />
<!-- Macros -->
<flag value="-DANDROID=ANDROID"/>
<flag value="-DHXCPP_CLANG"/>
<flag value="-DHX_ANDROID"/>
<flag value="-DHXCPP_LOAD_DEBUG" if="HXCPP_LOAD_DEBUG"/>
<flag value="-D${ANDROID_PLATFORM_DEFINE}"/>
<!-- Options -->
<flag value="-flto" if="HXCPP_OPTIMIZE_LINK" unless="debug"/>
<flag value="-fvisibility=hidden"/>
<flag value="-ffunction-sections"/>
<flag value="-fstack-protector"/>
<flag value="-fexceptions"/>
<flag value="-g" if="HXCPP_DEBUG_LINK"/>
<flag value="-c"/>
<flag value="-fpic"/>
<flag value="-O2" unless="debug"/>
<!-- Warning Supression -->
<flag value="-Wno-invalid-offsetof" />
<flag value="-Wno-return-type-c-linkage" />
<flag value="-Wno-parentheses" />
</compiler>
<linker id="dll" exe="clang++" >
<exe name="clang++" />
<flag value ="-shared" />
<flag value="--target=${ABITRIPLE}${PLATFORM_NUMBER}" />
<flag value ="-static-libstdc++" />
<flag value ="-v" />
<prefix value="lib"/>
<lib name="-llog"/>
</linker>
</xml>

View File

@ -0,0 +1,213 @@
<xml>
<!-- Android TOOLS -------------------------------------->
<!--
Configure build via variables, otherwise defaults will be used:
Set the path to the exact ndk to use with ANDROID_NDK_ROOT,
or set where all your ndks are installed with ANDROID_NDK_DIR and hxcpp will guess.
Set the version number by setting the variable:
NDKV?? - base version of ndk to use, hxcpp will find the letter, like "NDKV10" -> may end up with "10c"
TOOLCHAIN_VERSION - the compiler number, like "4.8" or "4.4.3"
PLATFORM - the android platform api level, like "android-19"
- you can also set the variable "android-19" directly
-->
<set name="HXCPP_CPP11" value="1" if="NDKV9+ || NDKV10+" unless="HXCPP_NO_CPP11" />
<!-- Set architecture -->
<section if="HXCPP_X86">
<set name="ARCH" value="-x86" />
<set name="ABI" value="x86" />
<set name="PLATFORM_ARCH" value="arch-x86" />
<set name="TOOLCHAIN" value="x86-${TOOLCHAIN_VERSION}" />
<set name="EXEPREFIX" value="i686-linux-android" />
<set name="PLATFORM" value="android-14" unless="PLATFORM" />
</section>
<section unless="HXCPP_X86">
<set name="ARCH" value="-v7" if="HXCPP_ARMV7" />
<set name="ABI" value="armeabi" />
<set name="PLATFORM_ARCH" value="arch-arm" />
<set name="TOOLCHAIN" value="arm-linux-androideabi-${TOOLCHAIN_VERSION}" />
<set name="EXEPREFIX" value="arm-linux-androideabi" />
<set name="PLATFORM" value="android-5" unless="PLATFORM" />
</section>
<section if="HXCPP_ARM64">
<set name="ARCH" value="-64"/>
<set name="ABI" value="arm64-v8a" />
<set name="PLATFORM_ARCH" value="arch-arm64" />
<set name="TOOLCHAIN" value="aarch64-linux-android-${TOOLCHAIN_VERSION}" />
<set name="EXEPREFIX" value="aarch64-linux-android" />
<set name="PLATFORM" value="android-19" unless="PLATFORM" />
</section>
<set name="prebuiltBase" value="${ANDROID_NDK_ROOT}/toolchains/${TOOLCHAIN}/prebuilt/${ANDROID_HOST}" />
<path name="${prebuiltBase}/bin" />
<set name="HXCPP_AR" value="${EXEPREFIX}-ar" />
<include name="toolchain/gcc-toolchain.xml"/>
<compiler id="android-gcc" exe="g++">
<exe name="${EXEPREFIX}-g++" />
<!-- These must appear in this order! -->
<flag value="--sysroot=${ANDROID_NDK_ROOT}/platforms/${PLATFORM}/${PLATFORM_ARCH}"/>
<section if="NDKV8+">
<flag value="-I${ANDROID_NDK_ROOT}/sources/cxx-stl/gnu-libstdc++/${TOOLCHAIN_VERSION}/include" />
<flag value="-I${ANDROID_NDK_ROOT}/sources/cxx-stl/gnu-libstdc++/${TOOLCHAIN_VERSION}/libs/${ABI}/include" />
</section>
<section unless="NDKV8+">
<flag value="-I${ANDROID_NDK_ROOT}/sources/cxx-stl/gnu-libstdc++/libs/${ABI}/include" />
<flag value="-I${ANDROID_NDK_ROOT}/sources/cxx-stl/gnu-libstdc++/include" />
</section>
<include name="toolchain/common-defines.xml" />
<flag value="-flto" if="HXCPP_OPTIMIZE_LINK" unless="debug"/>
<flag value="-I${HXCPP}/include"/>
<flag value="-Iinclude"/>
<flag value="-fpic"/>
<flag value="-fvisibility=hidden"/>
<flag value="-ffunction-sections"/>
<flag value="-funwind-tables"/>
<flag value="-fstack-protector"/>
<flag value="-fno-short-enums"/>
<flag value="-Wno-overflow" />
<cppflag value="-Wno-invalid-offsetof" />
<cppflag value="-frtti"/>
<flag value="-D_LINUX_STDDEF_H "/> <!-- Avoid compiler including 2 version of file -->
<flag value="-Wno-psabi" />
<cppflag value="-std=c++11" if="HXCPP_CPP11"/>
<flag value="-DHXCPP_CPP11" if="HXCPP_CPP11"/>
<section unless="HXCPP_X86">
<section if="HXCPP_ARM64">
<flag value="-DHXCPP_ARM64" />
</section>
<section if="HXCPP_ARMV7">
<flag value="-DHXCPP_ARMV7" />
<flag value="-march=armv7-a" />
<flag value="-mfpu=vfpv3-d16" />
<flag value="-mfloat-abi=softfp" />
</section>
<section unless="HXCPP_ARMV7 || HXCPP_ARM64">
<flag value="-DHXCPP_ARMV5" />
<flag value="-D__ARM_ARCH_5__"/>
<flag value="-D__ARM_ARCH_5T__"/>
<flag value="-D__ARM_ARCH_5E__"/>
<flag value="-D__ARM_ARCH_5TE__"/>
<flag value="-march=armv5te" />
<flag value="-mtune=xscale" />
<flag value="-msoft-float" />
</section>
</section>
<section if="HXCPP_X86">
<flag value="-DANDROID_X86"/>
</section>
<flag value="-fomit-frame-pointer"/>
<flag value="-fexceptions"/>
<flag value="-fno-strict-aliasing"/>
<flag value="-finline-limit=10000"/>
<flag value="-DANDROID=ANDROID"/>
<flag value="-DHX_ANDROID"/>
<flag value="-D${ANDROID_PLATFORM_DEFINE}"/>
<!-- todo <flag value="-Werror"/> -->
<flag value="-Wa,--noexecstack"/>
<flag value="-O2" unless="debug || HXCPP_OPTIMIZE_FOR_SIZE || HXCPP_OPTIMIZE_FOR_FAST"/>
<section if="HXCPP_OPTIMIZE_FOR_SIZE" unless="debug || HXCPP_OPTIMIZE_FOR_FAST">
<!-- see https://software.intel.com/en-us/blogs/2013/01/17/x86-gcc-code-size-optimizations -->
<flag value="-Os" />
<flag value="-fno-asynchronous-unwind-tables" />
</section>
<section if="HXCPP_OPTIMIZE_FOR_FAST" unless="debug">
<flag value="-Ofast" />
</section>
<flag value="-O0" if="debug"/>
<flag value="-g" if="HXCPP_DEBUG_LINK"/>
<flag value="-DNDEBUG"/>
<flag value="-DHXCPP_LOAD_DEBUG" if="HXCPP_LOAD_DEBUG"/>
<flag value="-c"/>
<outflag value="-o"/>
<ext value=".obj"/>
<objdir value="obj/android${OBJEXT}${ARCH}" />
</compiler>
<linker id="dll" exe="g++" >
<exe name="${EXEPREFIX}-g++" />
<ext value=".so"/>
<outflag value="-o"/>
<prefix value="lib"/>
<flag value="-frtti"/>
<flag value="-nostdlib"/>
<flag value="-std=c++11" if="HXCPP_CPP11"/>
<flag value="-Wl,-shared,-Bsymbolic"/>
<section if="HXCPP_OPTIMIZE_FOR_SIZE || HXCPP_GC_SECTIONS" unless="debug">
<flag value="-Wl,--gc-sections" />
</section>
<section if="HXCPP_STRIP_ALL" unless="debug || HXCPP_DEBUG_LINK">
<flag value="-Wl,--strip-all" unless="HXCPP_DEBUG_LINK"/>
</section>
<flag value="-Wl,--no-undefined" unless="dll_import" />
<flag value="-Wl,--unresolved-symbols=ignore-in-object-files" if="dll_import" />
<flag value="-Wl,-z,noexecstack"/>
<flag value="--sysroot=${ANDROID_NDK_ROOT}/platforms/${PLATFORM}/${PLATFORM_ARCH}"/>
<flag value="-L${ANDROID_NDK_ROOT}/platforms/${PLATFORM}/${PLATFORM_ARCH}/usr/lib"/>
<lib name="${ANDROID_NDK_ROOT}/sources/cxx-stl/gnu-libstdc++/libs/${ABI}/libstdc++.a" if="NDKV6" unless="dll_import" />
<lib name="${ANDROID_NDK_ROOT}/sources/cxx-stl/gnu-libstdc++/libs/${ABI}/libgnustl_static.a" if="NDKV7" unless="dll_import" />
<lib name="${ANDROID_NDK_ROOT}/sources/cxx-stl/gnu-libstdc++/${TOOLCHAIN_VERSION}/libs/${ABI}/libgnustl_static.a" if="NDKV8+" unless="dll_import" />
<lib name="${ANDROID_NDK_ROOT}/platforms/${PLATFORM}/${PLATFORM_ARCH}/usr/lib/crtbegin_so.o"/>
<lib name="${prebuiltBase}/lib/gcc/${EXEPREFIX}/${TOOLCHAIN_VERSION}/libgcc.a" unless="NDKV12+"/>
<lib name="${prebuiltBase}/lib/gcc/${EXEPREFIX}/${TOOLCHAIN_VERSION}.x/libgcc.a" if="NDKV12+"/>
<lib name="${ANDROID_NDK_ROOT}/platforms/${PLATFORM}/${PLATFORM_ARCH}/usr/lib/libc.so"/>
<lib name="${ANDROID_NDK_ROOT}/platforms/${PLATFORM}/${PLATFORM_ARCH}/usr/lib/libm.so"/>
<lib name="-llog"/>
<lib name="-ldl"/>
</linker>
<linker id="exe" exe="g++" >
<exe name="${EXEPREFIX}-g++" />
<ext value=""/>
<outflag value="-o"/>
<prefix value=""/>
<flag value="-frtti"/>
<flag value="-nostdlib"/>
<flag value="-std=c++11" if="HXCPP_CPP11"/>
<flag value="-Wl,--no-undefined" unless="dll_import" />
<flag value="-Wl,--unresolved-symbols=ignore-in-object-files" if="dll_import" />
<flag value="-Wl,-z,noexecstack"/>
<flag value="--sysroot=${ANDROID_NDK_ROOT}/platforms/${PLATFORM}/${PLATFORM_ARCH}"/>
<flag value="-L${ANDROID_NDK_ROOT}/platforms/${PLATFORM}/${PLATFORM_ARCH}/usr/lib"/>
<lib name="${ANDROID_NDK_ROOT}/sources/cxx-stl/gnu-libstdc++/libs/${ABI}/libstdc++.a" if="NDKV6" unless="dll_import" />
<lib name="${ANDROID_NDK_ROOT}/sources/cxx-stl/gnu-libstdc++/libs/${ABI}/libgnustl_static.a" if="NDKV7" unless="dll_import" />
<lib name="${ANDROID_NDK_ROOT}/sources/cxx-stl/gnu-libstdc++/${TOOLCHAIN_VERSION}/libs/${ABI}/libgnustl_static.a" if="NDKV8+" unless="dll_import" />
<lib name="${ANDROID_NDK_ROOT}/platforms/${PLATFORM}/${PLATFORM_ARCH}/usr/lib/crtbegin_static.o"/>
<lib name="${prebuiltBase}/lib/gcc/${EXEPREFIX}/${TOOLCHAIN_VERSION}/libgcc.a" unless="NDKV12+"/>
<lib name="${prebuiltBase}/lib/gcc/${EXEPREFIX}/${TOOLCHAIN_VERSION}.x/libgcc.a" if="NDKV12+"/>
<lib name="${ANDROID_NDK_ROOT}/platforms/${PLATFORM}/${PLATFORM_ARCH}/usr/lib/libc.so"/>
<lib name="${ANDROID_NDK_ROOT}/platforms/${PLATFORM}/${PLATFORM_ARCH}/usr/lib/libm.so"/>
<lib name="${ANDROID_NDK_ROOT}/platforms/${PLATFORM}/${PLATFORM_ARCH}/usr/lib/crtend_android.o"/>
<lib name="-llog"/>
<lib name="-ldl"/>
</linker>
</xml>

View File

@ -0,0 +1,8 @@
<xml>
<setup name="androidNdk" />
<include name="toolchain/android-toolchain-clang.xml" if="NDKV20+" />
<include name="toolchain/android-toolchain-gcc.xml" unless="NDKV20+" />
</xml>

View File

@ -0,0 +1,88 @@
<xml>
<echo value="Using tvOS SDK ${TVOS_VER}" if="VERBOSE"/>
<set name="ARCH" value ="-64" if="HXCPP_ARM64" />
<set name="HXCPP_USE_LIBTOOL" value="1" />
<set name="HXCPP_LIBTOOL" value="xcrun --sdk appletvos${TVOS_VER} libtool" />
<include name="toolchain/gcc-toolchain.xml"/>
<!--<path name="${DEVELOPER_DIR}/Platforms/iPhoneOS.platform/Developer/usr/bin" />-->
<set name="FORCE_LIBGCC" value="1" if="HXCPP_IOS_STDCPP" unless="HXCPP_GCC" />
<set name="OBJGCC" value="-c11" if="HXCPP_CPP11" />
<set name="OBJGCC" value="-gcc" if="HXCPP_GCC" />
<set name="OBJDBG" value="-dbg" if="debug" />
<compiler id="AppleTVOS" exe="g++" if="appletvos">
<exe name="xcrun --sdk appletvos${TVOS_VER} g++" if="HXCPP_GCC" />
<exe name="xcrun --sdk appletvos${TVOS_VER} clang++" />
<flag value="-c"/>
<!-- Removed for iOS 8 -->
<!-- <cppflag value="-fvisibility-inlines-hidden"/> -->
<pchflag value="-x" />
<pchflag value="c++-header" />
<flag value="-stdlib=libstdc++" if="FORCE_LIBGCC" />
<flag value="-stdlib=libc++" if="HXCPP_CPP11" />
<flag value="-g" if="HXCPP_DEBUG_LINK"/>
<flag value="-O2" unless="debug"/>
<flag value="-arch"/>
<flag value="arm64" if="HXCPP_ARM64" />
<flag value="-isysroot"/>
<flag value="${DEVELOPER_DIR}/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS${TVOS_VER}.sdk"/>
<!-- <flag value="-miphoneos-version-min=3.0" if="HXCPP_GCC" unless="HXCPP_ARMV7" />
<flag value="-miphoneos-version-min=5.0" if="HXCPP_ARMV7" /> -->
<flag value="-mappletvos-version-min=9.0" unless="HXCPP_GCC" />
<flag value="-fobjc-arc" if="OBJC_ARC" />
<flag value="-DOBJC_ARC" if="OBJC_ARC" />
<flag value="-Wno-parentheses" />
<flag value="-Wno-null-dereference" unless="HXCPP_GCC"/>
<flag value="-Wno-unused-value" />
<flag value="-Wno-overflow" />
<cppflag value="-Wno-invalid-offsetof" />
<flag value="-Wno-bool-conversion" unless="HXCPP_GCC"/>
<!-- Removed for iOS 8 -->
<!-- <flag value="-fvisibility=hidden"/> -->
<flag value="-fno-stack-protector"/>
<flag value="-DAPPLETV=APPLETV"/>
<flag value="-DAPPLETVOS=APPLETVOS"/>
<flag value="-fembed-bitcode"/>
<flag value="-DENABLE_BITCODE=YES"/>
<include name="toolchain/common-defines.xml" />
<flag value="-DHXCPP_BIG_ENDIAN" if="HXCPP_BIG_ENDIAN"/>
<flag value="-I${HXCPP}/include"/>
<!-- Removed for iOS 8 (no need) -->
<!-- <cppflag value="-frtti"/> -->
<!-- Added for iOS8 -->
<flag value="-fexceptions"/>
<flag value="-fstrict-aliasing"/>
<!-- End of Added for iOS8 -->
<outflag value="-o"/>
<ext value=".o"/>
<objdir value="obj/appletvos${OBJGCC}${OBJDBG}${ARCH}/" />
</compiler>
<linker id="dll" exe="g++" >
<exe name="xcrun --sdk appletvos${TVOS_VER} g++" if="HXCPP_GCC" />
<exe name="xcrun --sdk appletvos${TVOS_VER} clang++" />
<flag value="-stdlib=libstdc++" if="FORCE_LIBGCC" />
<flag value="-stdlib=libc++" if="HXCPP_CPP11" />
<flag value="-dynamiclib"/>
<flag value="-arch"/>
<flag value="arm64" if="HXCPP_ARM64" />
<flag value="-isysroot"/>
<flag value="${DEVELOPER_DIR}/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS${TVOS_VER}.sdk"/>
<flag value="-Wl,-undefined,dynamic_lookup"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<flag value="-fvisibility=hidden"/>
<ext value=".tvos.dylib"/>
<outflag value="-o "/>
</linker>
</xml>

View File

@ -0,0 +1,97 @@
<xml>
<echo value="Using tvOS SDK ${TVOS_VER}" if="VERBOSE"/>
<set name="ARCH" value ="-64" if="HXCPP_M64" />
<set name="HXCPP_USE_LIBTOOL" value="1" />
<set name="HXCPP_LIBTOOL" value="xcrun --sdk appletvsimulator${TVOS_VER} libtool" />
<include name="toolchain/gcc-toolchain.xml"/>
<!--<path name="${DEVELOPER_DIR}/Platforms/iPhoneSimulator.platform/Developer/usr/bin" />-->
<set name="FORCE_LIBGCC" value="1" if="HXCPP_IOS_STDCPP" unless="HXCPP_GCC" />
<set name="OBJGCC" value="-c11" if="HXCPP_CPP11" />
<set name="OBJGCC" value="-gcc" if="HXCPP_GCC" />
<set name="OBJDBG" value="-dbg" if="debug" />
<compiler id="AppleTVSim" exe="g++" if="appletvsim">
<exe name="xcrun --sdk appletvsimulator${TVOS_VER} g++" if="HXCPP_GCC" />
<exe name="xcrun --sdk appletvsimulator${TVOS_VER} clang++" />
<flag value="-c"/>
<!-- Removed for iOS 8 -->
<!-- <cppflag value="-fvisibility-inlines-hidden"/> -->
<pchflag value="-x" />
<pchflag value="c++-header" />
<flag value="-stdlib=libstdc++" if="FORCE_LIBGCC" />
<flag value="-stdlib=libc++" if="HXCPP_CPP11" />
<flag value="-g" if="HXCPP_DEBUG_LINK"/>
<flag value="-O2" unless="debug"/>
<flag value="-fmessage-length=0"/>
<flag value="-pipe"/>
<flag value="-Wno-trigraphs"/>
<flag value="-fno-stack-protector"/>
<flag value="-Wno-overflow" />
<cppflag value="-Wno-invalid-offsetof" />
<flag value="-fpascal-strings"/>
<flag value="-fasm-blocks"/>
<flag value="-Wreturn-type"/>
<!-- Simulator has been upgraded to ABI version 2. Old code may not like the following 2 lines -->
<mmflag value="-fobjc-abi-version=2"/>
<mmflag value="-fobjc-legacy-dispatch"/>
<flag value="-Wno-unused-variable"/>
<flag value="-arch"/>
<flag value="x86_64" />
<flag value="-isysroot"/>
<flag value="${DEVELOPER_DIR}/Platforms/AppleTVSimulator.platform/Developer/SDKs/AppleTVSimulator${TVOS_VER}.sdk"/>
<!-- Removed for iOS 8 -->
<!-- <flag value="-fvisibility=hidden"/> -->
<!-- <flag value="-miphoneos-version-min=${IPHONE_VER}"/> -->
<flag value="-mappletvos-version-min=9.0"/>
<flag value="-DAPPLETV=APPLETV"/>
<flag value="-DAPPLETVSIM=APPLETVSIM"/>
<flag value="-DENABLE_BITCODE=YES"/>
<flag value="-fembed-bitcode"/>
<flag value="-fobjc-arc" if="OBJC_ARC" />
<flag value="-DOBJC_ARC" if="OBJC_ARC" />
<flag value="-Wno-parentheses" />
<flag value="-Wno-null-dereference" unless="HXCPP_GCC"/>
<flag value="-Wno-unused-value" />
<flag value="-Wno-bool-conversion" unless="HXCPP_GCC"/>
<include name="toolchain/common-defines.xml" />
<flag value="-DHXCPP_BIG_ENDIAN" if="HXCPP_BIG_ENDIAN"/>
<flag value="-I${HXCPP}/include"/>
<!-- Removed for iOS 8 (no need) -->
<!-- <cppflag value="-frtti"/> -->
<!-- Added for iOS8 -->
<flag value="-fexceptions"/>
<flag value="-fstrict-aliasing"/>
<!-- End of Added for iOS8 -->
<outflag value="-o"/>
<ext value=".o"/>
<objdir value="obj/appletvsim${OBJGCC}${OBJDBG}/" />
</compiler>
<linker id="dll" exe="g++" >
<exe name="xcrun --sdk appletvsimulator${TVOS_VER} g++" if="HXCPP_GCC" />
<exe name="xcrun --sdk appletvsimulator${TVOS_VER} clang++" />
<flag value="-stdlib=libstdc++" if="FORCE_LIBGCC" />
<flag value="-stdlib=libc++" if="HXCPP_CPP11" />
<flag value="-dynamiclib"/>
<flag value="-arch"/>
<flag value="i386" unless="HXCPP_M64"/>
<flag value="x86_64" if="HXCPP_M64"/>
<flag value="-isysroot"/>
<flag value="${DEVELOPER_DIR}/Platforms/AppleTVSimulator.platform/Developer/SDKs/AppleTVSimulator${TVOS_VER}.sdk"/>
<flag value="-Wl,-undefined,dynamic_lookup"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<flag value="-fvisibility=hidden"/>
<ext value=".sim.dylib"/>
<outflag value="-o "/>
</linker>
</xml>

View File

@ -0,0 +1,89 @@
<xml>
<set name="HXCPP_X86" value="1" if="simulator" />
<section if="HXCPP_X86">
<set name="ARCH" value="-x86" />
<set name="PLATFORM_ARCH" value="x86" />
<set name="EXEPREFIX" value="ntox86" />
<set name="QCC_TARGET" value="gcc_ntox86" />
</section>
<section unless="HXCPP_X86">
<set name="ARCH" value="-v7" />
<set name="PLATFORM_ARCH" value="armle-v7" />
<set name="EXEPREFIX" value="ntoarmv7" />
<set name="QCC_TARGET" value="gcc_ntoarmv7le" />
</section>
<setup name="blackberry" />
<path name="${QNX_HOST}/usr/bin/" />
<include name="toolchain/gcc-toolchain.xml"/>
<!-- BLACKBERRY TOOLS -------------------------------------------------->
<compiler id="blackberry" exe="qcc" if="blackberry">
<flag value="-V${QCC_TARGET}" />
<flag value="-c"/>
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-I${HXCPP}/include"/>
<flag value="-I${QNX_TARGET}/usr/include"/>
<flag value="-DBLACKBERRY=BLACKBERRY"/>
<flag value="-fvisibility=hidden"/>
<flag value="-fdollars-in-identifiers"/>
<!--<flag value="-fpermissive"/>-->
<cppflag value="-lang-c++"/>
<include name="toolchain/common-defines.xml" />
<flag value="-DHXCPP_LOAD_DEBUG" if="HXCPP_LOAD_DEBUG"/>
<flag value="-DHXCPP_MULTI_THREADED" if="HXCPP_MULTI_THREADED"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<cppflag value="-frtti"/>
<outflag value="-o"/>
<objdir value="./obj/bb${OBJEXT}${ARCH}"/>
</compiler>
<linker id="exe" exe="qcc" if="blackberry">
<!-- <fromfile value="-filelist " /> -->
<flag value="-V${QCC_TARGET}" />
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-s" unless="debug"/>
<flag value="-lang-c++"/>
<flag value="-Wl,-z,relro,-z,now"/>
<!-- <flag value="-rdynamic"/> -->
<flag value="-L${QNX_TARGET}/${PLATFORM_ARCH}/lib"/>
<ext value=""/>
<outflag value="-o"/>
<lib name="-lm"/>
<!-- <lib name="-lpthread"/> -->
<!-- <lib name="-ldl"/> -->
</linker>
<linker id="dll" exe="qcc" if="blackberry">
<!-- <fromfile value="-filelist " /> -->
<flag value="-V${QCC_TARGET}" />
<flag value="-shared"/>
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-s" unless="debug"/>
<flag value="-L${QNX_TARGET}/${PLATFORM_ARCH}/lib"/>
<flag value="-lang-c++"/>
<flag value="-Wl,-z,relro,-z,now"/>
<cppflag value="-frtti"/>
<!-- <lib name="-lpthread"/> -->
<flag value="-fpic"/>
<flag value="-fPIC"/>
<!-- <flag value="-Wl,-z,defs"/> -->
<ext value=".so"/>
<outflag value="-o"/>
</linker>
</xml>

View File

@ -0,0 +1,42 @@
<xml>
<flag value="-DHXCPP_DEBUG" if="debug" />
<flag value="-DSTATIC_LINK" if="static_link" tag="static" />
<flag value="-DHXCPP_EXE_LINK" if="exe_link" tag="static" />
<flag value="-DHXCPP_ARM64" if="HXCPP_ARM64"/>
<flag value="-DHXCPP_ARMV7" if="HXCPP_ARMV7"/>
<flag value="-DHXCPP_M64" if="HXCPP_M64||HXCPP_ARM64||HXCPP_X86_64"/>
<flag value="-DHXCPP_VISIT_ALLOCS" tag="haxe" />
<flag value="-Dhaxe_210" if="haxe_210" tag="haxe" />
<flag value="-DHXCPP_FLOAT32" if="HXCPP_FLOAT32" tag="haxe" />
<flag value="-DHXCPP_CHECK_POINTER" if="HXCPP_CHECK_POINTER" tag="haxe" />
<flag value="-DHXCPP_STACK_TRACE" if="HXCPP_STACK_TRACE" tag="haxe" />
<flag value="-DHXCPP_TELEMETRY" if="HXCPP_TELEMETRY" tag="haxe" />
<flag value="-DHXCPP_PROFILER" if="HXCPP_PROFILER" tag="haxe" />
<flag value="-DHXCPP_PROFILE_EXTERNS" if="HXCPP_PROFILE_EXTERNS" tag="debug" />
<flag value="-DHXCPP_STACK_LINE" if="HXCPP_STACK_LINE" tag="haxe" />
<flag value="-DHXCPP_STACK_VARS" if="HXCPP_STACK_VARS" tag="haxe" />
<flag value="-DHXCPP_DEBUGGER" if="HXCPP_DEBUGGER" tag="haxe" />
<flag value="-DHXCPP_PARANOID" if="HXCPP_PARANOID" tag="haxe" />
<flag value="-DHXCPP_GC_MOVING" if="HXCPP_GC_MOVING" tag="gc" />
<flag value="-DHXCPP_GC_BIG_BLOCKS" if="HXCPP_GC_BIG_BLOCKS" tag="gc" />
<flag value="-DHXCPP_GC_SUMMARY" if="HXCPP_GC_SUMMARY" tag="gc" />
<flag value="-DHXCPP_GC_DYNAMIC_SIZE" if="HXCPP_GC_DYNAMIC_SIZE" tag="gc" />
<flag value="-DHXCPP_GC_CHECK_POINTER" if="HXCPP_GC_CHECK_POINTER" tag="haxe" />
<flag value="-DHXCPP_GC_DEBUG_ALWAYS_MOVE" if="HXCPP_GC_DEBUG_ALWAYS_MOVE" tag="haxe" />
<flag value="-DHXCPP_GC_GENERATIONAL" if="HXCPP_GC_GENERATIONAL" tag="haxe" />
<flag value="-DHXCPP_GC_NURSERY" if="HXCPP_GC_NURSERY" tag="haxe" />
<flag value="-DHXCPP_DLL_IMPORT" if="dll_import" tag="haxe" />
<flag value="-I${dll_import_include}" if="dll_import_include" tag="haxe" />
<flag value="-DHXCPP_DLL_EXPORT" if="dll_export||dll_link" tag="haxe" />
<flag value="-DHXCPP_SCRIPTABLE" if="scriptable" tag="haxe" />
<flag value="-DHXCPP_SINGLE_THREADED_APP" if="HXCPP_SINGLE_THREADED_APP" tag="haxe" />
<flag value='-DHX_SMART_STRINGS' if="hxcpp_smart_strings" tag="haxe" />
<flag value='-DHXCPP_CATCH_SEGV' if="HXCPP_CATCH_SEGV" tag="haxe" />
<flag value='-DHXCPP_API_LEVEL=${removeQuotes:hxcpp_api_level}' if="hxcpp_api_level" tag="haxe" />
<flag value='-DHXCPP_API_LEVEL=0' unless="hxcpp_api_level" tag="haxe"/>
<flag value='-DHXCPP_OBJC' if="objc" tag="haxe"/>
<flag value='-DHXCPP_GC_DEBUG_LEVEL=${HXCPP_GC_DEBUG_LEVEL}' if="HXCPP_GC_DEBUG_LEVEL" tag="gc" />
<flag value='-DHXCPP_WINXP_COMPAT' if="HXCPP_WINXP_COMPAT" tag="haxe"/>
<mmflag value='-Wno-invalid-offsetof' />
<mmflag value='-Wno-format-security' />
</xml>

View File

@ -0,0 +1,47 @@
<!-- CYGWIN TOOLS -------------------------------------->
<xml>
<include name="toolchain/gcc-toolchain.xml"/>
<set name="SUBSYSTEMWINDOWS" value="1" if="no_console" unless="HXCPP_DEBUGGER" />
<compiler id="cygwin" exe="env g++" if="cygwin">
<flag value="-c"/>
<cppflag value="-frtti"/>
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-DHX_LINUX"/>
<flag value="-DHXCPP_BIG_ENDIAN" if="HXCPP_BIG_ENDIAN"/>
<include name="toolchain/common-defines.xml" />
<flag value="-m32" unless="HXCPP_M64"/>
<flag value="-m64" if="HXCPP_M64"/>
<flag value="-I${HXCPP}/include"/>
<objdir value="obj/cygwin${OBJEXT}/"/>
<outflag value="-o"/>
<ext value=".o"/>
</compiler>
<linker id="dll" exe="env g++" if="cygwin">
<flag value="-shared"/>
<flag value="-m32" unless="HXCPP_M64"/>
<flag value="-m64" if="HXCPP_M64"/>
<flag value="-W,l--unresolved-symbols=report-all"/>
<flag value="-Xlinker"/>
<flag value="--no-undefined"/>
<flag value="-debug" if="debug"/>
<lib name="-ldl"/>
<ext value=".dso"/>
<outflag value="-o "/>
</linker>
<linker id="exe" exe="env g++" if="cygwin">
<flag value="-debug" if="debug"/>
<flag value="-m32" unless="HXCPP_M64"/>
<flag value="-m64" if="HXCPP_M64"/>
<flag value="-mwindows" if="SUBSYSTEMWINDOWS" />
<lib name="-ldl"/>
<ext value=".exe"/>
<outflag value="-o "/>
</linker>
</xml>

View File

@ -0,0 +1 @@
@for %%I in (.) do @echo %%~sI

View File

@ -0,0 +1,171 @@
<xml>
<setup name="emscripten" />
<set name="HXCPP_LINK_EMSCRIPTEN_EXT" value=".js" unless="HXCPP_LINK_EMSCRIPTEN_EXT" />
<path name="${EMSCRIPTEN_SDK}" if="EMSCRIPTEN_SDK" />
<path name="${dir:EMSCRIPTEN_PYTHON}" if="EMSCRIPTEN_PYTHON" />
<set name="HXCPP_RANLIB" value="emranlib" />
<set name="HXCPP_AR" value="emar" />
<section if="windows_host">
<set name="HXCPP_RANLIB" value='python "${EMSCRIPTEN_SDK}/emranlib.py"' />
<set name="HXCPP_AR" value='python "${EMSCRIPTEN_SDK}/emar.py"' />
<set name="CXX" value='python "${EMSCRIPTEN_SDK}/emcc.py"' />
</section>
<set name="nostrip" value="1" if="emscripten"/>
<include name="toolchain/gcc-toolchain.xml"/>
<!-- EMCC TOOLS -->
<section unless="HXCPP_OPTIM_LEVEL" >
<!-- O2 generates stack-overflow when running unit tests - not sure what best default value is
But you may be able to adjust the node stack size ti fix this.
<set name="HXCPP_OPTIM_LEVEL" value="-O2" />
-->
<set name="HXCPP_OPTIM_LEVEL" value="-O1" />
<set name="HXCPP_OPTIM_LEVEL" value="-g" if="debug" />
</section>
<compiler id="emscripten" exe="emcc">
<exe name="${CXX}" if="CXX" />
<flag value="-c"/>
<flag value="-fvisibility=hidden"/>
<cppflag value="-frtti"/>
<pchflag value="-x" />
<pchflag value="c++-header" />
<cppflag value="--std=c++11" />
<flag value="${HXCPP_OPTIM_LEVEL}" />
<flag value="-fpic" if="HXCPP_EMSCRIPTEN_FPIC" />
<flag value="-fPIC" if="HXCPP_EMSCRIPTEN_FPIC" />
<flag value="-DEMSCRIPTEN"/>
<flag value="-DHXCPP_JS_PRIME" if="HXCPP_JS_PRIME" />
<flag value="-DHXCPP_MULTI_THREADED" if="HXCPP_MULTI_THREADED"/>
<flag value="-DHXCPP_BIG_ENDIAN" if="HXCPP_BIG_ENDIAN"/>
<flag value="-Wno-overflow" />
<cppflag value="-Wno-invalid-offsetof" />
<cppflag value="-Wno-return-type-c-linkage" />
<flag value="-Wno-parentheses" />
<flag value="-Wno-unknown-warning-option" />
<flag value="-Wno-null-dereference" />
<flag value="-Wno-unused-value" />
<flag value="-Wno-format-extra-args" />
<flag value="-Wno-bool-conversion" />
<flag value="-Wno-warn-absolute-paths" />
<include name="toolchain/common-defines.xml" />
<flag value="-I${HXCPP}/include"/>
<objdir value="obj/emscripten${OBJEXT}"/>
<outflag value="-o "/>
<ext value=".o"/>
</compiler>
<section unless="HXCPP_LINK_OPTIM_LEVEL" >
<!-- O2 generates dodgy 'else' statement - seems ok now
<set name="HXCPP_LINK_OPTIM_LEVEL" value="-O2" />
-->
<set name="HXCPP_LINK_OPTIM_LEVEL" value="-O2" />
<set name="HXCPP_LINK_OPTIM_LEVEL" value="-O1" if="HXCPP_DEBUG_LINK" />
<set name="HXCPP_LINK_OPTIM_LEVEL" value="-g" if="debug" />
</section>
<linker id="dll" exe="emcc">
<exe name="${CXX}" if="CXX" />
<fromfile value="" if="GCC_OLD" />
<flag value="-shared"/>
<flag value="-fpic" if="HXCPP_EMSCRIPTEN_FPIC" />
<flag value="-fPIC" if="HXCPP_EMSCRIPTEN_FPIC" />
<flag value="--bind" if="HXCPP_JS_PRIME" />
<!-- <flag value="-Wl,--unresolved-symbols=report-all"/> -->
<flag value="-Xlinker"/>
<flag value="--no-undefined" unless="HXCPP_ALLOW_UNDEFINED" />
<flag value="${HXCPP_LINK_OPTIM_LEVEL}"/>
<section if="HXCPP_LINK_TOTAL_MEMORY" >
<flag value="-s" />
<flag value="TOTAL_MEMORY=${HXCPP_LINK_TOTAL_MEMORY}" />
</section>
<section if="HXCPP_LINK_MEM_FILE" >
<flag value="--memory-init-file"/>
<flag value="${HXCPP_LINK_MEM_FILE}"/>
</section>
<!-- <flag value="-DBUILD_AS_SHARED_LIBRARY" /> -->
<!-- <lib name="-ldl"/> -->
<!-- <ext value=".js"/> -->
<ext value=".so"/>
<outflag value="-o "/>
</linker>
<linker id="exe" exe="emcc">
<exe name="${CXX}" if="CXX" />
<fromfile value="" if="GCC_OLD" />
<flag value="${HXCPP_LINK_OPTIM_LEVEL}" />
<section unless="HXCPP_LINK_NO_EXCEPTIONS" >
<flag value="-s" />
<flag value="DISABLE_EXCEPTION_CATCHING=0" />
</section>
<section if="HXCPP_LINK_MEMORY_GROWTH" >
<flag value="-s" />
<flag value="ALLOW_MEMORY_GROWTH=1" />
</section>
<section if="HXCPP_LINK_SAFE_HEAP" >
<flag value="-s" />
<flag value="SAFE_HEAP=1" />
</section>
<section if="HXCPP_LINK_TOTAL_MEMORY" >
<flag value="-s" />
<flag value="TOTAL_MEMORY=${HXCPP_LINK_TOTAL_MEMORY}" />
</section>
<section if="HXCPP_LINK_MEM_FILE" >
<flag value="--memory-init-file"/>
<flag value="${HXCPP_LINK_MEM_FILE}"/>
</section>
<section if="HXCPP_LINK_EMRUN" >
<flag value="--emrun" />
<flag value="-s" />
<flag value="DEMANGLE_SUPPORT=1" />
</section>
<section if="HXCPP_DEBUG_LINK" >
<flag value="-s" />
<flag value="DEMANGLE_SUPPORT=1" />
<flag value="-debug" />
</section>
<section if="WASM" >
<flag value="-s"/>
<flag value="WASM=1" />
</section>
<section if="BINARYEN_METHOD" >
<flag name="-s" />
<flag value="BINARYEN_METHOD='${BINARYEN_METHOD}'" />
</section>
<flag value="--bind" if="HXCPP_JS_PRIME" />
<!-- <lib name="-ldl"/> -->
<ext value="${HXCPP_LINK_EMSCRIPTEN_EXT}"/>
<outflag value="-o "/>
</linker>
</xml>

View File

@ -0,0 +1,107 @@
<!--
This file will get included twice - once at the beginning - once at the end.
The first time though, the "vars" section is parsed, and this is where you can
set variables to control the setup of the standard compilers and install paths etc.
The second time, the "exes" section is parsed, and you can modify the linkers/compilers
by adding flags to these executables.
-->
<xml>
<!-- This section is parses at the beginning of the build .... -->
<section id="vars">
<!-- Use this to control the SDK used when compiling for iphone/iphonesim, and the
default is not found, or you wish to use a specific version -->
<!-- <set name="IPHONE_VER" value="4.2" /> -->
<!-- If you put all your SDKs in one directory, then you can just set this
single variable. If you put them in exactly this place, then you should not
need to setup anything ! -->
<set name="SDK_ROOT" value="c:\SDKs\" unless="SDK_ROOT" if="windows_host" />
<set name="SDK_ROOT" value="${HOME}/SDKs/" unless="SDK_ROOT" />
<!-- ANDROID_NDK_ROOT is required for building android binaries. See:
http://developer.android.com/sdk/ndk/index.html
Alternatively, you can set the directory and let hxcpp choose the best one with ANDROID_NDK_DIR
if ANDROID_NDK_DIR is not set, or a valid NDK version is not found there,
it tries to use the default SDK Manager installation (ndk-bundle directory)
<set name="ANDROID_NDK_ROOT" value="${SDK_ROOT}/android-ndk-r6" unless="ANDROID_NDK_ROOT" />
-->
<set name="ANDROID_NDK_DIR" value="${SDK_ROOT}" unless="ANDROID_NDK_DIR" />
<!-- ant is required to build android packages. See:
http://ant.apache.org/bindownload.cgi -->
<set name="ANT_HOME" value="${SDK_ROOT}/ant" unless="ANT_HOME" />
<!-- The ANDROID_SDK is required for building android packages. See
http://developer.android.com/sdk/index.html -->
<set name="ANDROID_SDK" value="${SDK_ROOT}/android-sdk" unless="ANDROID_SDK" />
<!-- The Java development kit (which should include the java runtime) is
also required for android dev. Make sure to get the 32 bit version! -->
<set name="JAVA_HOME" value="${SDK_ROOT}/java_jdk" unless="JAVA_HOME" />
<!-- If you want to control how many compilers get spawned .
The default will use the number of processors.
Reducing this to 1 can help deciphering error messages. -->
<!-- <set name="HXCPP_COMPILE_THREADS" value="1" /> -->
<!-- Add this if your compiler does not support precompiled headers -->
<!-- <set name="NO_PRECOMPILED_HEADERS" value="1"/> -->
<!-- Older versions of gcc do not suport the @file syntax for an obj file list
and precompiled headers. Set this if you have these issues -->
<!-- <set name="GCC_OLD" value="1" /> -->
<!-- Skip the "stripping" phase. This will leave extra symbols in you exe, which
may allow reverse engineering and larger file sizes. You might want to do
this to debug some problems though. -->
<!-- <set name="nostrip" value="1" /> -->
<!-- Let the system detect the latest version of MSVC on windows
(otherwise must setup the environment yourself) -->
<!-- Disable with <set name="NO_AUTO_MSVC" value="1" /> -->
<!-- To disable specific versions: <setenv name="VS110COMNTOOLS" value="disable" /> -->
</section>
<!-- Use this section to add flags to the compilers and linkers -->
<section id="exes">
<!-- Compiling on windows ... -->
<compiler id="MSVC" if="windows">
<!-- Example adding a build flag -->
<!-- <flag value = "-Ie:/VS8//PlatformSDK/Include"/> -->
</compiler>
<!-- Linking on windows ... -->
<linker id="dll" if="windows">
<!-- Add library paths for windows (DirectX needed for building NME) -->
<!-- <flag value = "-libpath:e:\VS8\DirectXSDK\Lib\x86"/>
<flag value = "-libpath:e:/VS8/PlatformSDK/Lib"/> -->
</linker>
<!-- And for linking executables -->
<linker id="exe" if="windows">
<!-- <flag value = "-libpath:e:/VS8/PlatformSDK/Lib"/> -->
</linker>
</section>
</xml>

View File

@ -0,0 +1,120 @@
<xml>
<set name="DBG" value="-debug" if="debug" unless="DEBUGSUFFIX" />
<set name="DBG" value="${DEBUGSUFFIX}" if="debug" unless="DBG" />
<set name="M64" value="64" if="HXCPP_M64"/>
<set name="M64" value="arm64" if="HXCPP_ARM64"/>
<set name="F32" value="-f32" if="HXCPP_FLOAT32"/>
<set name="NEEDS_NC" value="-nc" if="windows"/>
<set name="NOCONSOLE" value="${NEEDS_NC}" if="no_console"/>
<set name="RPI" value="-rpi" if="rpi"/>
<set name="APIFP" value="-hfp" if="hardfp"/>
<set name="STD_MODULE_LINK" value="dll"/>
<set name="static_link" value="1" if="iphoneos" unless="dll_import||exe_link" />
<set name="static_link" value="1" if="iphonesim" unless="dll_import||exe_link" />
<set name="static_link" value="1" if="appletvos" unless="dll_import||exe_link" />
<set name="static_link" value="1" if="appletvsim" unless="dll_import||exe_link" />
<set name="LIBPREFIX" value="lib" if="static_link" unless="STATICLIBPREFIX" />
<set name="LIBPREFIX" value="${STATICLIBPREFIX}" if="static_link" unless="LIBPREFIX" />
<unset name="HXCPP_JS_PRIME" if="static_link" />
<set name="STAT" value="-stat" if="static_link" />
<set name="PRIME" value="" />
<set name="PRIME" value="-p" if="HXCPP_JS_PRIME" />
<set name="OBJDBG" value="-debug" if="debug" />
<set name="OBJOPT" value="-fast" if="HXCPP_FAST_LINK" />
<set name="HXCPP_OPTIMIZE_LINK_INCREMENTAL" value="1" if="HXCPP_FAST_LINK HXCPP_OPTIMIZE_LINK" unless="debug" />
<set name="OBJOPT" value="-opt" if="HXCPP_OPTIMIZE_LINK" unless="debug" />
<set name="OBJOPT" value="-optinc" if="HXCPP_OPTIMIZE_LINK_INCREMENTAL" unless="debug" />
<set name="OBJEXT" value="${M64}${F32}${STAT}${OBJDBG}${OBJOPT}${NOCONSOLE}${RPI}${APIFP}${PRIME}" />
<set name="STD_MODULE_LINK" value="static_link" if="static_link"/>
<set name="STD_MODULE_LINK" value="exe" if="HXCPP_JS_PRIME"/>
<set name="LIBEXTRA" value=".iphonesim-64" if="iphonesim"/>
<set name="LIBEXTRA" value=".iphonesim" if="iphonesim" unless="HXCPP_M64"/>
<section if="iphoneos">
<set name="LIBEXTRA" value=".iphoneos-v7" if="HXCPP_ARMV7"/>
<set name="LIBEXTRA" value=".iphoneos-v7s" if="HXCPP_ARMV7S"/>
<set name="LIBEXTRA" value=".iphoneos-64" if="HXCPP_ARM64"/>
<set name="HXCPP_ARMV6" value="1" unless="LIBEXTRA"/>
<set name="LIBEXTRA" value=".iphoneos" if = "HXCPP_ARMV6"/>
</section>
<set name="LIBEXTRA" value=".appletvsim-64" if="appletvsim"/>
<set name="LIBEXTRA" value=".appletvsim" if="appletvsim" unless="HXCPP_M64"/>
<set name="LIBEXTRA" value=".watchos" if="watchos" />
<set name="LIBEXTRA" value=".watchsimulator" if="watchsimulator" />
<section if="appletvos">
<set name="LIBEXTRA" value=".appletvos-64" if="HXCPP_ARM64"/>
</section>
<set name="LIBEXTRA" value="-x86" if="blackberry"/>
<set name="LIBEXTRA" value="" if="blackberry" unless="simulator" />
<set name="LIBEXTRA" value="-x86" if="HXCPP_X86" />
<set name="LIBEXTRA" value="-x86_64" if="HXCPP_X86_64" />
<set name="LIBEXTRA" value="-v7" if="HXCPP_ARMV7" unless="LIBEXTRA||linux" />
<set name="LIBEXTRA" value="-64" if="HXCPP_ARM64" unless="LIBEXTRA||linux||isMsvc" />
<set name="LIBEXTRA" value="-x86" if="tizen"/>
<set name="LIBEXTRA" value="" if="tizen" unless="simulator" />
<set name="LIBEXT" value=".a" />
<set name="LIBEXT" value=".lib" if="windows" unless="mingw" />
<set name="haxelink" value="exe" unless="static_link"/>
<set name="haxelink" value="static_link" if="static_link"/>
<set name="haxelink" value="dll" if="android" unless="static_link" />
<set name="haxelink" value="exe" if="exe_link"/>
<set name="haxelink" value="dll" if="dll_import"/>
<set name="haxelink" value="dll" if="dll_link"/>
<set name="HXCPP_IOS_STDCPP" value="1" unless="HXCPP_CPP11" if="iphoneos"/>
<set name="HXCPP_IOS_STDCPP" value="1" unless="HXCPP_CPP11" if="iphonesim"/>
<set name="HXCPP_IOS_STDCPP" value="1" unless="HXCPP_CPP11" if="appletvos"/>
<set name="HXCPP_IOS_STDCPP" value="1" unless="HXCPP_CPP11" if="appletvsim"/>
<set name="DESTDIR" value="bin" />
<set name="DESTDIR" value="lib" if="static_link" unless="HXCPP_IOS_STDCPP"/>
<set name="NDLLDIR" value="ndll" />
<set name="NDLLDIR" value="lib" if="static_link" />
<!-- <set name="IPHONE_VER" value="4.2" unless="IPHONE_VER" /> -->
<set name="HXCPP_DEBUG_LINK" value="1" if="debug" unless="HXCPP_NO_DEBUG_LINK" />
<set name="HXCPP_DEBUG_LINK" value="1" if="HXCPP_DEBUG_LINK_AND_STRIP" />
<set name="HX_LINK_SUFFIX" value="${LIBEXTRA}" />
<set name="HX_TARGET_SUFFIX" value="${LIBEXTRA}" />
<set name="HX_TARGET_PREFIX" value="${LIBPREFIX}" />
<section if="isMsvc">
<setup name="msvc"/>
<section if="static_link" >
<set name="MSVC_LIB_VERSION" value="-${MSVC_VER}" />
</section>
<set name="LIBEXTRA" value="-19" if="MSVC19" />
<set name="LIBEXTRA" value="-arm64" if="HXCPP_ARM64" />
<set name="HXCPP_M64" value="1" if="HXCPP_ARM64" />
<set name="HX_LINK_SUFFIX" value="-19" if="MSVC19" />
<set name="HX_TARGET_SUFFIX" value="-19" if="MSVC19 static_link" />
<section if="HXCPP_OPTIMIZE_LINK_INCREMENTAL" unless="debug || MSVC19">
<echo value="Warning: INCREMENTAL requies Visual Studio 2015+"/>
<!-- without INCREMENTAL -->
<unset name="HXCPP_OPTIMIZE_LINK_INCREMENTAL"/>
<set name="HXCPP_OPTIMIZE_LINK" value="1"/>
<set name="OBJOPT" value="-opt" if="HXCPP_OPTIMIZE_LINK || HXCPP_OPTIMIZE_LINK_INCREMENTAL" unless="debug" />
<set name="OBJEXT" value="${M64}${F32}${STAT}${OBJDBG}${OBJOPT}${NOCONSOLE}${RPI}${APIFP}${PRIME}" />
</section>
</section>
</xml>

View File

@ -0,0 +1,59 @@
<xml>
<set name="NO_PRECOMPILED_HEADERS" value="1" if="GCC_OLD" />
<set name="USE_PRECOMPILED_HEADERS" value="gcc" unless="NO_PRECOMPILED_HEADERS"/>
<set name="USE_GCC_FILETYPES" value="1"/>
<linker id="static_link" exe="ar" unless="windows">
<ext value="${LIBEXT}"/>
<exe name="${EXEPREFIX}-ar" if="EXEPREFIX" />
<exe name="${HXCPP_AR}" if="HXCPP_AR" />
<fromfile value="" if="GCC_OLD" />
<fromfile value="" if="tizen" />
<fromfile value="" if="blackberry" />
<outflag value="-cr "/>
<outflag value="cr " if="emscripten" />
<section if="HXCPP_USE_LIBTOOL">
<exe name="libtool" />
<exe name="${HXCPP_LIBTOOL}" if="HXCPP_LIBTOOL" />
<outflag value="-o " />
<fromfile value="-filelist " needsQuotes="false" />
</section>
<!-- <outflag value="-o " if="emscripten" /> -->
<recreate value="1" unless="HXCPP_LIBTOOL" />
<expandAr value="1" if="android" />
<expandAr value="1" if="emscripten" />
<expandAr value="1" if="linux" />
<section unless="HXCPP_USE_LIBTOOL">
<ranlib name="ranlib" />
<ranlib name="${EXEPREFIX}-ranlib" if="EXEPREFIX" />
<ranlib name="${HXCPP_RANLIB}" if="HXCPP_RANLIB" />
</section>
</linker>
<set name="nostrip" value="1" if="debug"/>
<set name="nostrip" value="1" if="dll_import"/>
<set name="nostrip" value="1" if="dll_export"/>
<set name="nostrip" value="1" if="HXCPP_DEBUG_LINK"/>
<unset name="nostrip" if="HXCPP_DEBUG_LINK_AND_STRIP"/>
<stripper id="strip" exe="strip" unless="nostrip">
<exe name="strip"/>
<exe name="arm-none-linux-gnueabi-strip" if="webos" />
<exe name="${EXEPREFIX}-strip" if="EXEPREFIX" />
<exe name="${HXCPP_STRIP}" if="HXCPP_STRIP" />
<exe name="mipsel-linux-strip" if="gcw0" />
<exe name="mipsel-gcw0-linux-uclibc-strip" if="gcw0 windows_host" />
<flag value="-u" if="macos"/>
<flag value="-r" if="macos"/>
<flag value="-x" if="macos"/>
<flag value="-d" if="linux"/>
</stripper>
</xml>

View File

@ -0,0 +1,79 @@
<xml>
<set name="GCW0_SDK" value="/opt/gcw0-toolchain" unless="GCW0_SDK" if="linux_host" />
<set name="GCW0_SDK" value="${SDK_ROOT}/gcw0-toolchain" unless="GCW0_SDK" if="windows_host SDK_ROOT" />
<error value="Please set GCW0_SDK" unless="GCW0_SDK" />
<echo value="Using sdk ${GCW0_SDK}" if="HXCPP_VERBOSE" />
<set name="GCW0_PLATFORM" value="${GCW0_SDK}/usr/mipsel-gcw0-linux-uclibc/sysroot" />
<path name="${GCW0_SDK}/usr/bin/" />
<include name="gcc-toolchain.xml"/>
<!-- GCW-Zero TOOLS -->
<compiler id="gcw0" exe="mipsel-linux-g++" if="gcw0">
<exe name="mipsel-gcw0-linux-uclibc-g++.exe" if="windows_host" />
<flag value="-c"/>
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-I${HXCPP}/include"/>
<flag value="-I${GCW0_PLATFORM}/usr/include"/>
<flag value="-DGCW0"/>
<flag value="-D_APP_LOG"/>
<flag value="-march=mips32r2" />
<include name="common-defines.xml" />
<flag value="-fvisibility=hidden"/>
<flag value="-fdollars-in-identifiers"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<cppflag value="-frtti"/>
<cppflag value="-std=c++11" />
<cppflag value="-Wno-invalid-offsetof" />
<flag value="-g" if="HXCPP_DEBUG_LINK"/>
<!-- <flag value="-fPIE" /> -->
<flag value="--sysroot=${GCW0_PLATFORM}" />
<outflag value="-o"/>
<objdir value="./obj/gcw0${OBJEXT}" />
</compiler>
<linker id="exe" exe="mipsel-linux-g++" if="gcw0">
<exe name="mipsel-gcw0-linux-uclibc-g++" if="windows_host" />
<flag value="-g" if="debug||HXCPP_DEBUG_LINK"/>
<flag value="-O2" unless="debug||HXCPP_DEBUG_LINK"/>
<flag value="-s" unless="debug||HXCPP_DEBUG_LINK"/>
<flag value="-pie" />
<lib name="-lpthread" />
<flag value="-march=mips32r2" />
<flag value="--sysroot=${GCW0_PLATFORM}" />
<flag value="-L${GCW0_PLATFORM}/usr/lib" />
<!-- <flag value="-fpic"/>
<flag value="-fPIC"/> -->
<ext value=""/>
<outflag value="-o"/>
<lib name="-ldl"/>
</linker>
<linker id="dll" exe="mipsel-linux-g++" if="gcw0">
<exe name="mipsel-gcw0-linux-uclibc-g++" if="windows_host" />
<flag value="-shared"/>
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-s" unless="debug"/>
<!-- <flag value="-pie" /> -->
<lib name="-lpthread" />
<flag value="-march=mips32r2" />
<flag value="--sysroot=${GCW0_PLATFORM}" />
<flag value="-L${GCW0_PLATFORM}/usr/lib" />
<cppflag value="-frtti"/>
<!-- <flag value="-fpic"/>
<flag value="-fPIC"/> -->
<!-- <flag value="-pie" /> -->
<lib name="-ldl"/>
<ext value=".dso"/>
<outflag value="-o"/>
</linker>
</xml>

View File

@ -0,0 +1,72 @@
<xml>
<!-- GPH (Caanoo) TOOLS -------------------------------------------------->
<error value="Please define GPH_ROOT" unless="GPH_ROOT"/>
<set name="GPH_TOOL" value="${GPH_ROOT}/" if="windows_host"/>
<set name="GPH_TOOL" value="${GPH_ROOT}/tools/" unless="windows_host"/>
<include name="toolchain/gcc-toolchain.xml"/>
<path name="${GPH_TOOL}/gcc-4.2.4-glibc-2.7-eabi/bin/"/>
<path name="${GPH_TOOL}/gcc-4.2.4-glibc-2.7-eabi/libexec/gcc/arm-gph-linux-gnueabi/4.2.4/"/>
<path name="${GPH_TOOL}/libexec/gcc/arm-gph-linux-gnueabi/4.2.4"/>
<path name="${GPH_TOOL}/gcc-4.2.4-glibc-2.7-eabi/arm-gph-linux-gnueabi/bin"/>
<setenv name="CYGWIN" value="nodosfilewarning"/>
<set name="GPH_SYS" value="${GPH_TOOL}/gcc-4.2.4-glibc-2.7-eabi/arm-gph-linux-gnueabi/sys-root"/>
<compiler id="gph" exe="arm-gph-linux-gnueabi-g++">
<flag value="-c"/>
<flag value="-g" if="debug"/>
<flag value="-Os" unless="debug"/>
<flag value="-I${HXCPP}/include"/>
<flag value="--sysroot=${GPH_SYS}"/>
<flag value="-I${GPH_TOOL}/gcc-4.2.4-glibc-2.7-eabi/arm-gph-linux-gnueabi/include/c++/4.2.4/"/>
<flag value="-I${GPH_TOOL}/gcc-4.2.4-glibc-2.7-eabi/arm-gph-linux-gnueabi/include/c++/4.2.4/arm-gph-linux-gnueabi"/>
<flag value="-DGPH"/>
<flag value="-fvisibility=hidden"/>
<flag value="-fdollars-in-identifiers"/>
<flag value="-fno-common"/>
<flag value="-march=armv5te"/>
<flag value="-mtune=arm9tdmi"/>
<flag value="-mapcs"/>
<flag value="-msoft-float"/>
<flag value="-mfloat-abi=soft"/>
<cppflag value="-frtti"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<outflag value="-o"/>
<objdir value="./obj/gph/Debug" if="debug"/>
<objdir value="./obj/gph/Release" unless="debug"/>
</compiler>
<linker id="exe" exe="arm-gph-linux-gnueabi-g++">
<ext value=".gpe"/>
<flag value="--sysroot=${GPH_SYS}"/>
<flag value="-mfloat-abi=soft"/>
<outflag value="-o"/>
<lib name="-ldl"/>
<lib name="-lc"/>
<lib name="-lpthread"/>
<lib name="-lm"/>
</linker>
<linker id="dll" exe="arm-gph-linux-gnueabi-g++">
<flag value="-Wl,--no-undefined"/>
<flag value="--sysroot=${GPH_SYS}"/>
<flag value="-msoft-float"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<flag value="-shared"/>
<ext value=".so"/>
<outflag value="-o"/>
<lib name="-ldl"/>
<lib name="-lc"/>
<lib name="-lpthread"/>
<lib name="-lm"/>
</linker>
</xml>

View File

@ -0,0 +1,245 @@
<xml>
<!-- make sure hxcpp.n is up to date -->
<pleaseUpdateHxcppTool version="3" />
<pragma once="true" />
<!-- Use value from Build.xml file unless one is specified from the haxe defines -->
<set name="hxcpp_api_level" value="${HXCPP_API_LEVEL}" unless="hxcpp_api_level" if="HXCPP_API_LEVEL" />
<!-- You can override the exes an "exe" section on your own .hxcpp_config -->
<!-- You can use replace="1" to change the compiler, or omit to add flags -->
<!-- Library files & targets -------------------------------------->
<files id="cffi-depends">
<depend name="${HXCPP}/include/hx/CFFI.h"/>
<depend name="${HXCPP}/include/hx/CFFIAPI.h"/>
<depend name="${HXCPP}/include/hx/CFFILoader.h"/>
<depend name="${HXCPP}/include/hx/StringAlloc.h"/>
</files>
<files id="hxcpp-depends">
<depend name="${HXCPP}/include/hxcpp.h"/>
<depend name="${HXCPP}/include/Array.h"/>
<depend name="${HXCPP}/include/Dynamic.h"/>
<depend name="${HXCPP}/include/hxString.h"/>
<depend name="${HXCPP}/include/hxMath.h"/>
<depend name="${HXCPP}/include/null.h"/>
<depend name="${HXCPP}/include/hx/Class.h"/>
<depend name="${HXCPP}/include/Enum.h"/>
<depend name="${HXCPP}/include/hx/StackContext.h"/>
<depend name="${HXCPP}/include/hx/Debug.h"/>
<depend name="${HXCPP}/include/hx/QuickVec.h"/>
<depend name="${HXCPP}/include/hx/StringAlloc.h"/>
<depend name="${HXCPP}/include/hx/Telemetry.h"/>
<depend name="${HXCPP}/include/hx/Thread.h"/>
<depend name="${HXCPP}/include/hx/Object.h"/>
<depend name="${HXCPP}/include/hx/Anon.h"/>
<depend name="${HXCPP}/include/hx/Operators.h"/>
<depend name="${HXCPP}/include/hx/Macros.h"/>
<depend name="${HXCPP}/include/hx/GC.h"/>
<depend name="${HXCPP}/include/hx/Tls.h"/>
<depend name="${HXCPP}/include/hx/GcTypeInference.h"/>
<depend name="${HXCPP}/include/hx/CFFI.h"/>
<depend name="${HXCPP}/include/hx/CFFIAPI.h"/>
<depend name="${HXCPP}/include/hx/CFFILoader.h"/>
<depend name="${HXCPP}/include/hx/StringAlloc.h"/>
<depend name="${HXCPP}/include/hx/StdLibs.h"/>
<depend name="${HXCPP}/include/hx/Native.h"/>
<depend name="${HXCPP}/include/hx/OS.h"/>
<depend name="${HXCPP}/include/hx/ObjcHelpers.h"/>
<depend name="${HXCPP}/include/hx/HeaderVersion.h"/>
<depend name="${HXCPP}/include/hx/Unordered.h"/>
<depend name="${HXCPP}/include/hx/LessThanEq.h"/>
<depend name="${HXCPP}/include/hx/Interface.h"/>
<depend name="${HXCPP}/include/cpp/Pointer.h"/>
<depend name="${HXCPP}/include/cpp/Int64.h"/>
<depend name="${HXCPP}/include/cpp/Variant.h"/>
<depend name="${HXCPP}/include/cpp/VirtualArray.h"/>
<depend name="${HXCPP}/include/hx/Scriptable.h"/>
<section unless="HXCPP_LINK_NO_TOOL_DEPENDS" >
<depend name="${HXCPP}/toolchain/haxe-target.xml" dateOnly="true" />
<depend name="${HXCPP}/toolchain/${toolchain}-toolchain.xml" ifExists="${HXCPP}/toolchain/${toolchain}-toolchain.xml" dateOnly="true" />
<depend name="${HXCPP}/hxcpp.n" ifExists="${HXCPP}/hxcpp.n" dateOnly="true" />
</section>
</files>
<!-- Additional dependencies for haxe target -->
<files id="haxe">
<depend files="hxcpp-depends"/>
<options name="Options.txt"/>
<config name="HxcppConfig${LIBEXTRA}.h"/>
<precompiledheader name="hxcpp" dir="${HXCPP}/include" />
<cache value="1" />
</files>
<files id="__resources__" tags="haxe" >
<cache value="1" project="haxe" />
</files>
<files id="__externs__">
<cache value="1" project="haxe" />
</files>
<files id="__main__" tags="haxe,main,static" >
<depend files="hxcpp-depends"/>
<depend name="${HXCPP}/include/hx/HxcppMain.h"/>
<options name="Options.txt"/>
<compilerflag value="-DHX_DECLARE_MAIN"/>
<cache value="1" project="haxe" />
</files>
<files id="__lib__" tags="haxe,main,static" >
<depend files="hxcpp-depends"/>
<options name="Options.txt"/>
<compilerflag value="-DHX_DECLARE_MAIN"/>
<cache value="1" project="haxe" />
</files>
<set name="CPPIA_JIT" value="1" unless="CPPIA_NO_JIT" />
<files id="cppia" dir="${HXCPP}" tags="haxe" >
<depend files="hxcpp-depends"/>
<options name="Options.txt"/>
<depend name="${HXCPP}/src/hx/cppia/Cppia.h" />
<depend name="${HXCPP}/src/hx/cppia/CppiaStream.h" />
<depend name="${HXCPP}/src/hx/cppia/CppiaOps.inc" />
<depend name="${HXCPP}/src/hx/cppia/CppiaCompiler.h" if="CPPIA_JIT" />
<compilerflag value="-DHX_UNDEFINE_H" />
<compilerflag value="-DCPPIA_JIT" if="CPPIA_JIT" />
<file name = "src/hx/cppia/Cppia.cpp" />
<file name = "src/hx/cppia/CppiaCtx.cpp" />
<file name = "src/hx/cppia/CppiaClasses.cpp" />
<file name = "src/hx/cppia/CppiaFunction.cpp" />
<file name = "src/hx/cppia/CppiaModule.cpp" />
<file name = "src/hx/cppia/ArrayBuiltin.cpp" />
<file name = "src/hx/cppia/ArrayVirtual.cpp" />
<file name = "src/hx/cppia/StringBuiltin.cpp" />
<file name = "src/hx/cppia/GlobalBuiltin.cpp" />
<file name = "src/hx/cppia/HaxeNative.cpp" />
<file name = "src/hx/cppia/CppiaVars.cpp" />
<file name = "src/hx/cppia/CppiaCompiler.cpp" if="CPPIA_JIT" />
<cache value="1" project="hxcpp-cppia" asLibrary="true" />
</files>
<files id="runtime" dir="${HXCPP}" tags="haxe" >
<depend files="hxcpp-depends"/>
<options name="Options.txt"/>
<depend name="${HXCPP}/src/hx/Hash.h"/>
<depend name="${HXCPP}/src/hx/Unicase.h"/>
<depend name="${HXCPP}/src/hx/gc/GcRegCapture.h"/>
<compilerflag value="-D_CRT_SECURE_NO_DEPRECATE"/>
<compilerflag value="-DHX_UNDEFINE_H" />
<precompiledheader name="hxcpp" dir="${HXCPP}/include" />
<file name = "src/hx/Anon.cpp"/>
<file name = "src/hx/Boot.cpp"/>
<file name = "src/hx/CFFI.cpp" tags="haxe,static" />
<file name = "src/hx/Date.cpp"/>
<file name = "src/hx/gc/GcCommon.cpp" tags="haxe,gc" />
<file name = "src/hx/gc/Immix.cpp" tags="haxe,gc" />
<file name = "src/hx/gc/GcRegCapture.cpp" tags="haxe,gc" />
<file name = "src/hx/Hash.cpp"/>
<file name = "src/hx/Interface.cpp"/>
<file name = "src/hx/Lib.cpp" tags="haxe,static" />
<file name = "src/hx/Object.cpp"/>
<file name = "src/hx/StdLibs.cpp" tags="haxe,static" />
<file name = "src/hx/Debug.cpp"/>
<file name = "src/hx/Debugger.cpp" if="HXCPP_DEBUGGER" />
<file name = "src/hx/Telemetry.cpp" if="HXCPP_TELEMETRY" />
<file name = "src/hx/Profiler.cpp" if="HXCPP_PROFILER" />
<file name = "src/hx/Thread.cpp"/>
<file name = "src/hx/RunLibs.cpp" if="static_link||dll_link"/>
<file name = "src/hx/AndroidCompat.cpp" if="android"/>
<file name = "src/Array.cpp"/>
<file name = "src/hx/Class.cpp"/>
<file name = "src/Dynamic.cpp"/>
<file name = "src/ObjcData.mm" if="objc"/>
<file name = "src/Enum.cpp"/>
<file name = "src/Math.cpp"/>
<file name = "src/String.cpp" tags="haxe,hxstring" />
<addTwice if="linux||android" />
<cache value="1" project="hxcpp_runtime" asLibrary="true" />
</files>
<files id="rc" >
<cache value='false'/>
<file name='${resourceFile}' if="resourceFile" />
</files>
<target id="default">
<target id="haxe"/>
</target>
<target id="clean" tool="clean">
<dir name="obj"/>
</target>
<set name="EXESUFFIX" value=".exe" if="windows" />
<set name="HAXE_OUTPUT_PART" value="${HAXE_OUTPUT}" unless="HAXE_OUTPUT_PART" />
<set name="HAXE_OUTPUT_FILE" value="${LIBPREFIX}${HAXE_OUTPUT_PART}${DBG}" unless="HAXE_OUTPUT_FILE" />
<set name="magiclibs" value="1" unless="nomagiclibs" />
<section if="magiclibs" >
<magiclib name="lib/${BINDIR}/libstd${LIBEXTRA}${LIBEXT}" replace="project/libs/std/Build.xml" />
<magiclib name="lib/${BINDIR}/libzlib${LIBEXTRA}${LIBEXT}" replace="project/libs/zlib/Build.xml" />
<magiclib name="lib/${BINDIR}/libregexp${LIBEXTRA}${LIBEXT}" replace="project/libs/regexp/Build.xml" />
<magiclib name="lib/${BINDIR}/libmysql5${LIBEXTRA}${LIBEXT}" replace="project/libs/mysql/Build.xml" />
<magiclib name="lib/${BINDIR}/libsqlite${LIBEXTRA}${LIBEXT}" replace="project/libs/sqlite/Build.xml" />
</section>
<target id="haxe" tool="linker" toolid="${haxelink}" output="${HAXE_OUTPUT_FILE}">
<files id="haxe"/>
<options name="Options.txt"/>
<ext value="${LIBEXTRA}.a" if="iphoneos" unless="dll_import" />
<ext value="${LIBEXTRA}.a" if="iphonesim" unless="dll_import" />
<ext value="${LIBEXTRA}.a" if="appletvos" unless="dll_import" />
<ext value="${LIBEXTRA}.a" if="appletvsim" unless="dll_import" />
<ext value="${LIBEXTRA}.a" if="watchos" unless="dll_import" />
<ext value="${LIBEXTRA}.a" if="watchsimulator" unless="dll_import" />
<section if="android">
<ext value="${LIBEXTRA}.so" />
<ext value="${LIBEXTRA}.a" if="static_link" />
<ext value="${LIBEXTRA}" if="exe_link" />
</section>
<fullouput name="${HAXE_FULL_OUTPUT_NAME}" if="HAXE_FULL_OUTPUT_NAME" />
<fullunstripped name="${HAXE_FULL_UNSTRIPPED_NAME}" if="HAXE_FULL_UNSTRIPPED_NAME" />
<files id="__main__" unless="static_link" />
<files id="__lib__" if="static_link"/>
<files id="__resources__" />
<files id="__externs__" />
<files id="runtime" unless="dll_import" />
<files id="cppia" if="scriptable" />
<files id="rc" unless="static_link" />
<lib name="-lpthread" if="linux" unless="static_link" />
<lib name="-ldl" if="linux" unless="static_link" />
</target>
</xml>

View File

@ -0,0 +1,114 @@
<xml>
<echo value="Using iOS SDK ${IPHONE_VER}" if="VERBOSE"/>
<set name="HXCPP_CPP11" value="1" unless="HXCPP_NO_CPP11" />
<set name="ARCH" value ="-v7" if="HXCPP_ARMV7" />
<set name="ARCH" value ="-v7s" if="HXCPP_ARMV7S" />
<set name="ARCH" value ="-64" if="HXCPP_ARM64" />
<set name="HXCPP_USE_LIBTOOL" value="1" />
<set name="HXCPP_LIBTOOL" value="xcrun --sdk iphoneos${IPHONE_VER} libtool" />
<include name="toolchain/gcc-toolchain.xml"/>
<!--<path name="${DEVELOPER_DIR}/Platforms/iPhoneOS.platform/Developer/usr/bin" />-->
<set name="FORCE_LIBGCC" value="1" if="HXCPP_IOS_STDCPP" unless="HXCPP_GCC" />
<set name="OBJGCC" value="-c11" if="HXCPP_CPP11" />
<set name="OBJGCC" value="-gcc" if="HXCPP_GCC" />
<set name="OBJDBG" value="-dbg" if="debug" />
<set name="HXCPP_LTO_THIN" value="1" if="HXCPP_OPTIMIZE_LINK_INCREMENTAL"/>
<compiler id="iPhoneOS" exe="g++" if="iphoneos">
<exe name="xcrun --sdk iphoneos${IPHONE_VER} g++" if="HXCPP_GCC" />
<exe name="xcrun --sdk iphoneos${IPHONE_VER} clang++" />
<flag value="-c"/>
<!-- Removed for iOS 8 -->
<!-- <cppflag value="-fvisibility-inlines-hidden"/> -->
<pchflag value="-x" />
<pchflag value="c++-header" />
<cppflag value="-stdlib=libstdc++" if="FORCE_LIBGCC" />
<cppflag value="-stdlib=libc++" if="HXCPP_CPP11" />
<cppflag value="-std=c++11" if="HXCPP_CPP11" />
<mmflag value="-stdlib=libstdc++" if="FORCE_LIBGCC" />
<mmflag value="-stdlib=libc++" if="HXCPP_CPP11" />
<mmflag value="-std=c++11" if="HXCPP_CPP11" />
<flag value="-g" if="HXCPP_DEBUG_LINK"/>
<flag value="-O2" unless="debug"/>
<flag value="-arch"/>
<flag value="armv6" if="HXCPP_ARMV6" />
<flag value="armv7" if="HXCPP_ARMV7" />
<flag value="armv7s" if="HXCPP_ARMV7S" />
<flag value="arm64" if="HXCPP_ARM64" />
<flag value="-isysroot"/>
<flag value="${DEVELOPER_DIR}/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS${IPHONE_VER}.sdk"/>
<!-- <flag value="-miphoneos-version-min=3.0" if="HXCPP_GCC" unless="HXCPP_ARMV7" />
<flag value="-miphoneos-version-min=5.0" if="HXCPP_ARMV7" /> -->
<flag value="-miphoneos-version-min=9.0" unless="HXCPP_IOS_MIN_VERSION" />
<flag value="-miphoneos-version-min=${HXCPP_IOS_MIN_VERSION}" if="HXCPP_IOS_MIN_VERSION" />
<flag value="-fobjc-arc" if="OBJC_ARC" />
<flag value="-DOBJC_ARC" if="OBJC_ARC" />
<flag value="-DENABLE_BITCODE=YES"/>
<flag value="-fembed-bitcode" unless="debug" />
<flag value="-fembed-bitcode-marker" if="debug" />
<flag value="-Wno-parentheses" />
<flag value="-Wno-null-dereference" unless="HXCPP_GCC"/>
<flag value="-Wno-unused-value" />
<flag value="-Wno-overflow" />
<flag value="-Wno-trigraphs"/>
<cppflag value="-Wno-invalid-offsetof" />
<cppflag value="-Wno-return-type-c-linkage" />
<mmflag value="-Wno-return-type-c-linkage" />
<flag value="-Wno-bool-conversion" unless="HXCPP_GCC"/>
<!-- Removed for iOS 8 -->
<!-- <flag value="-fvisibility=hidden"/> -->
<flag value="-fno-stack-protector"/>
<flag value="-DIPHONE=IPHONE"/>
<flag value="-DIPHONEOS=IPHONEOS"/>
<include name="toolchain/common-defines.xml" />
<flag value="-flto" if="HXCPP_OPTIMIZE_LINK" unless="debug || HXCPP_LTO_THIN"/>
<flag value="-flto=thin" if="HXCPP_LTO_THIN" unless="debug"/>
<flag value="-DHXCPP_BIG_ENDIAN" if="HXCPP_BIG_ENDIAN"/>
<flag value="-I${HXCPP}/include"/>
<!-- Removed for iOS 8 (no need) -->
<!-- <cppflag value="-frtti"/> -->
<!-- Added for iOS8 -->
<flag value="-fexceptions"/>
<flag value="-fstrict-aliasing"/>
<!-- End of Added for iOS8 -->
<outflag value="-o"/>
<ext value=".o"/>
<objdir value="obj/iphoneos${OBJGCC}${OBJDBG}${ARCH}/" />
</compiler>
<linker id="dll" exe="g++" >
<exe name="xcrun --sdk iphoneos${IPHONE_VER} g++" if="HXCPP_GCC" />
<exe name="xcrun --sdk iphoneos${IPHONE_VER} clang++" />
<flag value="-Wl,-cache_path_lto,/tmp" if="HXCPP_OPTIMIZE_LINK_INCREMENTAL" unless="debug"/>
<flag value="-stdlib=libstdc++" if="FORCE_LIBGCC" />
<flag value="-stdlib=libc++" if="HXCPP_CPP11" />
<flag value="-dynamiclib"/>
<flag value="-arch"/>
<flag value="armv6" if="HXCPP_ARMV6" />
<flag value="armv7" if="HXCPP_ARMV7" />
<flag value="armv7s" if="HXCPP_ARMV7S" />
<flag value="arm64" if="HXCPP_ARM64" />
<flag value="-isysroot"/>
<flag value="${DEVELOPER_DIR}/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS${IPHONE_VER}.sdk"/>
<flag value="-Wl,-undefined,dynamic_lookup"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<flag value="-fvisibility=hidden"/>
<ext value=".ios.dylib"/>
<outflag value="-o "/>
</linker>
</xml>

View File

@ -0,0 +1,105 @@
<xml>
<echo value="Using iOS SDK ${IPHONE_VER}" if="VERBOSE"/>
<set name="HXCPP_CPP11" value="1" unless="HXCPP_NO_CPP11" />
<set name="ARCH" value ="-64" if="HXCPP_M64" />
<set name="HXCPP_USE_LIBTOOL" value="1" />
<set name="HXCPP_LIBTOOL" value="xcrun --sdk iphonesimulator${IPHONE_VER} libtool" />
<include name="toolchain/gcc-toolchain.xml"/>
<!--<path name="${DEVELOPER_DIR}/Platforms/iPhoneSimulator.platform/Developer/usr/bin" />-->
<set name="FORCE_LIBGCC" value="1" if="HXCPP_IOS_STDCPP" unless="HXCPP_GCC" />
<set name="OBJGCC" value="-c11" if="HXCPP_CPP11" />
<set name="OBJGCC" value="-gcc" if="HXCPP_GCC" />
<set name="OBJDBG" value="-dbg" if="debug" />
<compiler id="iPhoneSim" exe="g++" if="iphonesim">
<exe name="xcrun --sdk iphonesimulator${IPHONE_VER} g++" if="HXCPP_GCC" />
<exe name="xcrun --sdk iphonesimulator${IPHONE_VER} clang++" />
<flag value="-c"/>
<!-- Removed for iOS 8 -->
<!-- <cppflag value="-fvisibility-inlines-hidden"/> -->
<pchflag value="-x" />
<pchflag value="c++-header" />
<cppflag value="-stdlib=libstdc++" if="FORCE_LIBGCC" />
<cppflag value="-stdlib=libc++" if="HXCPP_CPP11" />
<cppflag value="-std=c++11" if="HXCPP_CPP11" />
<mmflag value="-stdlib=libstdc++" if="FORCE_LIBGCC" />
<mmflag value="-stdlib=libc++" if="HXCPP_CPP11" />
<mmflag value="-std=c++11" if="HXCPP_CPP11" />
<flag value="-g" if="HXCPP_DEBUG_LINK"/>
<flag value="-O2" unless="debug"/>
<flag value="-fmessage-length=0"/>
<flag value="-pipe"/>
<flag value="-Wno-trigraphs"/>
<flag value="-fno-stack-protector"/>
<flag value="-Wno-overflow" />
<cppflag value="-Wno-invalid-offsetof" />
<cppflag value="-Wno-return-type-c-linkage" />
<mmflag value="-Wno-return-type-c-linkage" />
<flag value="-fpascal-strings"/>
<flag value="-fasm-blocks"/>
<flag value="-Wreturn-type"/>
<!-- Simulator has been upgraded to ABI version 2. Old code may not like the following 2 lines -->
<mmflag value="-fobjc-abi-version=2"/>
<mmflag value="-fobjc-legacy-dispatch"/>
<flag value="-Wno-unused-variable"/>
<flag value="-arch"/>
<flag value="i386" unless="HXCPP_M64"/>
<flag value="x86_64" if="HXCPP_M64"/>
<flag value="-isysroot"/>
<flag value="${DEVELOPER_DIR}/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator${IPHONE_VER}.sdk"/>
<!-- Removed for iOS 8 -->
<!-- <flag value="-fvisibility=hidden"/> -->
<!-- <flag value="-miphoneos-version-min=${IPHONE_VER}"/> -->
<flag value="-miphoneos-version-min=9.0" unless="HXCPP_IOS_MIN_VERSION" />
<flag value="-miphoneos-version-min=${HXCPP_IOS_MIN_VERSION}" if="HXCPP_IOS_MIN_VERSION" />
<flag value="-DIPHONE=IPHONE"/>
<flag value="-DIPHONESIM=IPHONESIM"/>
<flag value="-fobjc-arc" if="OBJC_ARC" />
<flag value="-DOBJC_ARC" if="OBJC_ARC" />
<flag value="-Wno-parentheses" />
<flag value="-Wno-null-dereference" unless="HXCPP_GCC"/>
<flag value="-Wno-unused-value" />
<flag value="-Wno-bool-conversion" unless="HXCPP_GCC"/>
<include name="toolchain/common-defines.xml" />
<flag value="-DHXCPP_BIG_ENDIAN" if="HXCPP_BIG_ENDIAN"/>
<flag value="-I${HXCPP}/include"/>
<!-- Removed for iOS 8 (no need) -->
<!-- <cppflag value="-frtti"/> -->
<!-- Added for iOS8 -->
<flag value="-fexceptions"/>
<flag value="-fstrict-aliasing"/>
<!-- End of Added for iOS8 -->
<outflag value="-o"/>
<ext value=".o"/>
<objdir value="obj/iphonesim${OBJGCC}${OBJDBG}/" />
</compiler>
<linker id="dll" exe="g++" >
<exe name="xcrun --sdk iphonesimulator${IPHONE_VER} g++" if="HXCPP_GCC" />
<exe name="xcrun --sdk iphonesimulator${IPHONE_VER} clang++" />
<flag value="-stdlib=libstdc++" if="FORCE_LIBGCC" />
<flag value="-stdlib=libc++" if="HXCPP_CPP11" />
<flag value="-dynamiclib"/>
<flag value="-arch"/>
<flag value="i386" unless="HXCPP_M64"/>
<flag value="x86_64" if="HXCPP_M64"/>
<flag value="-isysroot"/>
<flag value="${DEVELOPER_DIR}/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator${IPHONE_VER}.sdk"/>
<flag value="-Wl,-undefined,dynamic_lookup"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<flag value="-fvisibility=hidden"/>
<ext value=".sim.dylib"/>
<outflag value="-o "/>
</linker>
</xml>

View File

@ -0,0 +1,93 @@
<xml>
<!-- LINUX TOOLS -------------------------------------->
<section if="xcompile" >
<section if="HXCPP_M64">
<set name="CXX" value="${HXCPP_XLINUX64_CXX}" />
<set name="HXCPP_STRIP" value="${HXCPP_XLINUX64_STRIP}" />
<set name="HXCPP_AR" value="${HXCPP_XLINUX64_AR}" />
<set name="HXCPP_RANLIB" value="${HXCPP_XLINUX64_RANLIB}" />
</section>
<section unless="HXCPP_M64">
<set name="CXX" value="${HXCPP_XLINUX32_CXX}" />
<set name="HXCPP_STRIP" value="${HXCPP_XLINUX32_STRIP}" />
<set name="HXCPP_AR" value="${HXCPP_XLINUX32_AR}" />
<set name="HXCPP_RANLIB" value="${HXCPP_XLINUX32_RANLIB}" />
</section>
<section if="rpi">
<path name="c:/SysGCC/Raspberry/bin/" unless="HXCPP_XCOMPILE_RPI_PATH" />
<path name="${HXCPP_XCOMPILE_RPI_PATH}" if="HXCPP_XCOMPILE_RPI_PATH" />
<set name="CXX" value="arm-linux-gnueabihf-g++" />
<set name="HXCPP_STRIP" value="arm-linux-gnueabihf-strip" />
<set name="HXCPP_AR" value="arm-linux-gnueabihf-ar" />
<set name="HXCPP_RANLIB" value="arm-linux-gnueabihf-ranlib" />
</section>
</section>
<set name="HXCPP_CPP11" value="1" unless="HXCPP_NO_CPP11" />
<include name="toolchain/gcc-toolchain.xml"/>
<set name="noM32" value="1" if="HXCPP_NO_M32" />
<set name="noM32" value="1" if="HXCPP_M64" />
<set name="noM32" value="1" if="rpi" />
<set name="noM32" value="1" if="HXCPP_ARM64" />
<set name="noM64" value="1" if="HXCPP_ARM64" />
<compiler id="linux" exe="g++" if="linux">
<exe name="${CXX}" if="CXX" />
<flag value="-c"/>
<flag value="-fvisibility=hidden"/>
<cppflag value="-frtti"/>
<cppflag value="-std=c++11" if="HXCPP_CPP11" />
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<flag value="-Wno-overflow" />
<cppflag value="-Wno-invalid-offsetof" />
<flag value="-DHX_LINUX"/>
<flag value="-DRASPBERRYPI=RASPBERRYPI" if="rpi"/>
<flag value="-DHXCPP_MULTI_THREADED" if="HXCPP_MULTI_THREADED"/>
<flag value="-DHXCPP_BIG_ENDIAN" if="HXCPP_BIG_ENDIAN"/>
<include name="toolchain/common-defines.xml" />
<flag value="-m32" unless="noM32"/>
<flag value="-m64" if="HXCPP_M64" unless="noM64" />
<flag value="-DHXCPP_M64" if="HXCPP_M64"/>
<flag value="-I${HXCPP}/include"/>
<objdir value="obj/linux${OBJEXT}/"/>
<outflag value="-o"/>
<ext value=".o"/>
</compiler>
<linker id="dll" exe="g++" if="linux">
<exe name="${CXX}" if="CXX" />
<fromfile value="" if="GCC_OLD" />
<flag value="-shared"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<flag value="-m32" unless="noM32"/>
<flag value="-m64" if="HXCPP_M64" unless="noM64" />
<!-- <flag value="-Wl,--unresolved-symbols=report-all"/> -->
<flag value="-Xlinker"/>
<flag value="--no-undefined" unless="HXCPP_ALLOW_UNDEFINED" />
<flag value="-debug" if="debug"/>
<lib name="-ldl"/>
<ext value=".dso"/>
<outflag value="-o "/>
</linker>
<linker id="exe" exe="g++" if="linux">
<exe name="${CXX}" if="CXX" />
<fromfile value="" if="GCC_OLD" />
<flag value="-debug" if="debug"/>
<flag value="-rdynamic"/>
<flag value="-m32" unless="noM32"/>
<flag value="-m64" if="HXCPP_M64" unless="noM64" />
<lib name="-ldl"/>
<ext value=""/>
<outflag value="-o "/>
</linker>
</xml>

View File

@ -0,0 +1,113 @@
<xml>
<!-- MACOS TOOLS -->
<set name="HXCPP_USE_LIBTOOL" value="1" />
<set name="HXCPP_CPP11" value="1" unless="HXCPP_NO_CPP11 || HXCPP_CPP14" />
<include name="toolchain/gcc-toolchain.xml"/>
<setenv name="MACOSX_DEPLOYMENT_TARGET" value="10.9" if="HXCPP_CPP11||HXCPP_CPP14" unless="MACOSX_DEPLOYMENT_TARGET"/>
<setenv name="MACOSX_DEPLOYMENT_TARGET" value="10.7" if="OBJC_ARC" unless="MACOSX_DEPLOYMENT_TARGET" />
<setenv name="MACOSX_DEPLOYMENT_TARGET" value="10.6" unless="MACOSX_DEPLOYMENT_TARGET" />
<path name="${DEVELOPER_DIR}/usr/bin" />
<set name="HXCPP_LTO_THIN" value="1" if="HXCPP_OPTIMIZE_LINK_INCREMENTAL"/>
<set name="STDLIBCPP" value="1" unless="HXCPP_GCC || HXCPP_CPP11 || HXCPP_CPP14" />
<section unless="HXCPP_ARCH">
<set name="HXCPP_ARCH" value="arm64" if="HXCPP_ARM64"/>
<set name="HXCPP_ARCH" value="x86" if="HXCPP_M32"/>
<set name="HXCPP_ARCH" value="x86_64" unless="HXCPP_ARCH"/>
</section>
<compiler id="darwin" exe="g++" if="macos">
<exe name="xcrun --sdk macosx${MACOSX_VER} clang++" if="HXCPP_CLANG" />
<flag value="-c"/>
<flag value="-fvisibility=hidden"/>
<cppflag value="-std=c++11" if="HXCPP_CPP11"/>
<cppflag value="-std=c++14" if="HXCPP_CPP14"/>
<cppflag value="-Wc++14-extensions" if="HXCPP_CPP14"/>
<flag value="-stdlib=libc++" unless="STDLIBCPP" />
<flag value="-stdlib=libstdc++" if="STDLIBCPP" />
<cppflag value="-frtti"/>
<pchflag value="-x" />
<pchflag value="c++-header" />
<flag value="-Qunused-arguments" if="LEGACY_MACOSX_SDK"/>
<flag value="-isysroot" unless="LEGACY_MACOSX_SDK"/>
<flag value="${DEVELOPER_DIR}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX${MACOSX_VER}.sdk" unless="LEGACY_MACOSX_SDK"/>
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-I${HXCPP}/include"/>
<flag value="-DHX_MACOS"/>
<flag value="-arch" />
<flag value="${HXCPP_ARCH}"/>
<flag value="-DHXCPP_BIG_ENDIAN" if="HXCPP_BIG_ENDIAN"/>
<flag value="-Wno-parentheses" />
<flag value="-Wno-null-dereference" if="HXCPP_CLANG"/>
<flag value="-Wno-unused-value" />
<flag value="-Wno-format-extra-args" />
<flag value="-Wno-overflow" />
<flag value="-fsanitize=thread" if="HXCPP_THREAD_SANITIZE" />
<cppflag value="-Wno-invalid-offsetof" />
<cppflag value="-Wno-return-type-c-linkage" />
<mmflag value="-Wno-return-type-c-linkage" />
<flag value="-Wno-bool-conversion" if="HXCPP_CLANG"/>
<flag value="-fobjc-arc" if="OBJC_ARC" />
<flag value="-DOBJC_ARC" if="OBJC_ARC" />
<include name="toolchain/common-defines.xml" />
<flag value="-flto" if="HXCPP_OPTIMIZE_LINK" unless="debug || HXCPP_LTO_THIN"/>
<flag value="-flto=thin" if="HXCPP_LTO_THIN" unless="debug"/>
<objdir value="obj/darwin${OBJEXT}/" />
<flag value="-msse4.1" if="HXCPP_SSE4" unless="HXCPP_ARM" />
<outflag value="-o"/>
<ext value=".o"/>
<getversion value="xcrun --sdk macosx${MACOSX_VER} clang++ -v" if="HXCPP_CLANG" />
</compiler>
<linker id="dll" exe="g++" if="macos">
<exe name="xcrun --sdk macosx${MACOSX_VER} clang++" if="HXCPP_CLANG" />
<fromfile value="" if="GCC_OLD" />
<flag value="-Wl,-bundle,-bundle_loader,${dll_import_link}" if="dll_import_link" />
<flag value="-Wl,-cache_path_lto,/tmp" if="HXCPP_LTO_THIN" unless="debug"/>
<flag value="-stdlib=libc++" unless="STDLIBCPP" />
<flag value="-stdlib=libstdc++" if="STDLIBCPP" />
<flag value="-fpic"/>
<flag value="-fPIC"/>
<flag value="-dynamiclib"/>
<flag value="-arch" />
<flag value="${HXCPP_ARCH}"/>
<flag value="-framework"/>
<flag value="Cocoa"/>
<flag value="-isysroot" unless="LEGACY_MACOSX_SDK"/>
<flag value="${DEVELOPER_DIR}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX${MACOSX_VER}.sdk" unless="LEGACY_MACOSX_SDK"/>
<flag value="-fvisibility=hidden"/>
<!-- <flag value="-debug" if="debug"/> -->
<ext value=".dylib"/>
<outflag value="-o "/>
</linker>
<linker id="exe" exe="g++" if="macos">
<exe name="xcrun --sdk macosx${MACOSX_VER} clang++" if="HXCPP_CLANG" />
<!-- <flag value="-Wl,-stack_size,0x8000"/> -->
<flag value="-rpath" />
<flag value="@executable_path"/>
<flag value="-Wl,-rpath,${HXCPP_RPATH}" if="HXCPP_RPATH" />
<flag value="-Wl,-cache_path_lto,/tmp" if="HXCPP_OPTIMIZE_LINK_INCREMENTAL" unless="debug"/>
<fromfile value="" if="GCC_OLD" />
<flag value="-stdlib=libstdc++" if="STDLIBCPP" />
<flag value="-framework"/>
<flag value="Cocoa"/>
<flag value="-isysroot" unless="LEGACY_MACOSX_SDK"/>
<flag value="${DEVELOPER_DIR}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX${MACOSX_VER}.sdk" unless="LEGACY_MACOSX_SDK"/>
<flag value="-fsanitize=thread" if="HXCPP_THREAD_SANITIZE" />
<!-- <flag value="-debug" if="debug"/> -->
<flag value="-arch" />
<flag value="${HXCPP_ARCH}"/>
<ext value=""/>
<outflag value="-o "/>
</linker>
</xml>

View File

@ -0,0 +1,111 @@
<xml>
<!-- MINGW TOOLS -------------------------------------->
<section if="linux_host">
<section if="HXCPP_M64">
<set name="HXCPP_MINGW_EXE" value="x86_64-w64-mingw32-g++" unless="HXCPP_MINGW_EXE" />
<set name="MINGW_ROOT" value="/usr/x86_64-w64-mingw32" unless="MINGW_ROOT" />
</section>
<section unless="HXCPP_M64">
<set name="HXCPP_MINGW_EXE" value="i686-w64-mingw32-g++" unless="HXCPP_MINGW_EXE" />
<set name="MINGW_ROOT" value="/usr/i686-w64-mingw32" unless="MINGW_ROOT" />
</section>
</section>
<set name="HXCPP_MINGW_EXE" value="g++.exe" unless="HXCPP_MINGW_EXE"/>
<setup name="mingw" />
<path name="${MINGW_ROOT}/bin"/>
<include name="toolchain/gcc-toolchain.xml"/>
<unset name="USE_PRECOMPILED_HEADERS"/>
<set name="HXCPP_CPP11" value="1" unless="HXCPP_NO_CPP11" />
<set name="SUBSYSTEMWINDOWS" value="1" if="no_console" unless="HXCPP_DEBUGGER" />
<compiler id="mingw" exe="gcc">
<exe name="${HXCPP_MINGW_EXE}" />
<flag value="-c"/>
<cppflag value="-frtti"/>
<flag value="-Wno-overflow" />
<cppflag value="-Wno-invalid-offsetof" />
<flag value="-g" if="HXCPP_DEBUG_LINK"/>
<flag value="-O2" unless="debug||O3"/>
<flag value="-O3" if="O3"/>
<include name="toolchain/common-defines.xml" />
<flag value="-DHX_WINDOWS"/>
<flag value="-DHXCPP_BIG_ENDIAN" if="HXCPP_BIG_ENDIAN"/>
<cppflag value="-std=c++11" if="HXCPP_CPP11" />
<cppflag value="-U__STRICT_ANSI__" />
<flag value="-m32" unless="HXCPP_M64"/>
<flag value="-DHXCPP_M64" if="HXCPP_M64"/>
<flag value="-I${HXCPP}/include"/>
<objdir value="obj/mingw${OBJEXT}/"/>
<outflag value="-o"/>
<ext value=".o"/>
</compiler>
<linker id="dll" exe="g++">
<exe name="${HXCPP_MINGW_EXE}" />
<flag value="-shared"/>
<flag value="-debug" if="debug"/>
<flag value="--enable-auto-import"/>
<flag value="-m32" unless="HXCPP_M64"/>
<flag value="-static" if="no_shared_libs"/>
<flag value="-static-libgcc" if="no_shared_libs"/>
<flag value="-static-libstdc++" if="no_shared_libs"/>
<flag value="-L${MINGW_ROOT}/lib/libs" />
<ext value=".dll"/>
<outflag value="-o "/>
</linker>
<linker id="exe" exe="g++">
<exe name="${HXCPP_MINGW_EXE}" />
<flag value="-debug" if="debug"/>
<flag value="-Wl,--enable-auto-import"/>
<flag value="-mwindows" if="SUBSYSTEMWINDOWS" />
<flag value="-m32" unless="HXCPP_M64"/>
<flag value="-static" if="no_shared_libs"/>
<flag value="-static-libgcc" if="no_shared_libs" unless="linux_host"/>
<flag value="-static-libstdc++" if="no_shared_libs" unless="linux_host"/>
<flag value="-static-libgcc" if="linux_host"/>
<flag value="-static-libstdc++" if="linux_host"/>
<flag value="-L${MINGW_ROOT}/lib/libs" />
<ext value=".exe"/>
<outflag value="-o "/>
</linker>
<copyFile toolId="exe" name="libgcc_s_dw2-1.dll" from="${MINGW_ROOT}/bin" allowMissing="true" unless="no_shared_libs"/>
<copyFile toolId="exe" name="libstdc++-6.dll" from="${MINGW_ROOT}/bin" allowMissing="true" unless="no_shared_libs"/>
<copyFile toolId="exe" name="libwinpthread-1.dll" from="${MINGW_ROOT}/sys-root/mingw/bin" allowMissing="true" unless="no_shared_libs"/>
<copyFile toolId="exe" name="libwinpthread-1.dll" from="${MINGW_ROOT}/lib" allowMissing="true" unless="no_shared_libs"/>
<linker id="static_link" exe="ar" >
<ext value="${LIBEXT}"/>
<exe name="${EXEPREFIX}-ar" if="EXEPREFIX" />
<exe name="${HXCPP_AR}" if="HXCPP_AR" />
<fromfile value="" if="GCC_OLD" />
<outflag value="-cr "/>
<expandAr value="true" unless="HXCPP_USE_LIBTOOL" />
<section if="HXCPP_USE_LIBTOOL">
<exe name="libtool" />
<outflag value="-o " />
<fromfile value="-filelist " />
</section>
<!-- <outflag value="-o " if="emscripten" /> -->
<section unless="HXCPP_USE_LIBTOOL">
<ranlib name="ranlib" />
<ranlib name="${EXEPREFIX}-ranlib" if="EXEPREFIX" />
<ranlib name="emranlib" if="emscripten" />
<ranlib name="${HXCPP_RANLIB}" if="HXCPP_RANLIB" />
</section>
</linker>
</xml>

View File

@ -0,0 +1,24 @@
setlocal enabledelayedexpansion
@if exist "%HXCPP_MSVC%\..\..\VC\" (
@if not exist "%hxcpp_msvc%\..\..\VC\Auxiliary\Build\vcvars%msvc_host_arch%_arm64.bat" (
@echo Error: the specified MSVC version does not have vcvars%msvc_host_arch%_arm64.bat setup script
) else (
@echo "%HXCPP_MSVC%"
@call "%HXCPP_MSVC%\..\..\VC\Auxiliary\Build\vcvars%msvc_host_arch%_amd64.bat"
@echo HXCPP_VARS
@set
)
) else if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (
for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -products * -requires Microsoft.VisualStudio.Component.VC.Tools.arm64 -property installationPath`) do (
@set InstallDir=%%i
)
@if exist "!InstallDir!\Common7\Tools\VsDevCmd.bat" (
@call "!InstallDir!\Common7\Tools\VsDevCmd.bat" -host_arch=%msvc_host_arch% -arch=arm64 -app_platform=Desktop -no_logo
@echo HXCPP_VARS
@set
) else (
echo Warning: Could not find Visual Studio VsDevCmd
)
) else (
echo Error: arm64 is not automatically supported for this version of VC.
)

View File

@ -0,0 +1,89 @@
setlocal enabledelayedexpansion
@if exist "%HXCPP_MSVC%\vcvars32.bat" (
@call "%HXCPP_MSVC%\vcvars32.bat"
@echo HXCPP_VARS
@set
exit
) else if exist "%HXCPP_MSVC%\vsvars32.bat" (
@call "%HXCPP_MSVC%\vsvars32.bat"
@echo HXCPP_VARS
@set
exit
)
if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (
for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath`) do (
@set InstallDir=%%i
)
@if exist "!InstallDir!\Common7\Tools\VsDevCmd.bat" (
@call "!InstallDir!\Common7\Tools\VsDevCmd.bat" -arch=x86 -app_platform=Desktop -no_logo
@echo HXCPP_VARS
@set
exit
) else (
echo Warning: Could not find Visual Studio VsDevCmd
)
)
@if exist "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat" (
@call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat" -arch=x86 -app_platform=Desktop -no_logo
@echo HXCPP_VARS
@set
) else if exist "%VS140COMNTOOLS%\vsvars32.bat" (
@call "%VS140COMNTOOLS%\vsvars32.bat"
@if defined HXCPP_WINXP_COMPAT (
@set "INCLUDE=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Include;!INCLUDE!"
@set "PATH=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Bin;!PATH!"
@set "LIB=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Lib;!LIB!"
@set HXCPP_XP_DEFINE=_USING_V140_SDK71_
)
@echo HXCPP_VARS
@set
) else if exist "%VS120COMNTOOLS%\vsvars32.bat" (
@call "%VS120COMNTOOLS%\vsvars32.bat"
@if defined HXCPP_WINXP_COMPAT (
@if exist "%ProgramFiles(x86)%\Microsoft SDKs\Windows\v7.1A\" (
@set "INCLUDE=%ProgramFiles(x86)%\Microsoft SDKs\Windows\v7.1A\Include;!INCLUDE!"
@set "PATH=%ProgramFiles(x86)%\Microsoft SDKs\Windows\v7.1A\Bin;!PATH!"
@set "LIB=%ProgramFiles(x86)%\Microsoft SDKs\Windows\v7.1A\Lib;!LIB!"
) else if exist "%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\" (
@set "INCLUDE=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Include;!INCLUDE!"
@set "PATH=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Bin;!PATH!"
@set "LIB=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Lib;!LIB!"
)
@set HXCPP_XP_DEFINE=_USING_V120_SDK71_
)
@echo HXCPP_VARS
@set
) else if exist "%VS110COMNTOOLS%\vsvars32.bat" (
@call "%VS110COMNTOOLS%\vsvars32.bat"
@if defined HXCPP_WINXP_COMPAT (
@set "INCLUDE=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Include;!INCLUDE!"
@set "PATH=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Bin;!PATH!"
@set "LIB=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Lib;!LIB!"
@set HXCPP_XP_DEFINE=_USING_V110_SDK71_
)
@echo HXCPP_VARS
@set
) else if exist "%VS100COMNTOOLS%\vsvars32.bat" (
@call "%VS100COMNTOOLS%\vsvars32.bat"
@echo HXCPP_VARS
@set
) else if exist "%VS90COMNTOOLS%\vsvars32.bat" (
@call "%VS90COMNTOOLS%\vsvars32.bat"
@echo HXCPP_VARS
@set
) else if exist "%VS80COMNTOOLS%\vsvars32.bat" (
@call "%VS80COMNTOOLS%\vsvars32.bat"
@echo HXCPP_VARS
@set
) else if exist "%VS71COMNTOOLS%\vsvars32.bat" (
@call "%VS71COMNTOOLS%\vsvars32.bat"
@echo HXCPP_VARS
@set
) else if exist "%VS70COMNTOOLS%\vsvars32.bat" (
@call "%VS70COMNTOOLS%\vsvars32.bat"
@echo HXCPP_VARS
@set
) else (
echo Warning: Could not find environment variables for Visual Studio
)

View File

@ -0,0 +1,204 @@
<xml>
<!-- WINDOWS TOOLS -------------------------------------->
<set name="USE_PRECOMPILED_HEADERS" value="msvc" unless="NO_PRECOMPILED_HEADERS" />
<section if="winrt">
<set name="ABI" value="-ZW" unless="ABI" />
<set name="C_ABI" value="-MD" />
</section>
<section unless="winrt">
<set name="ABI" value="-MT" unless="ABI" />
<set name="C_ABI" value="${ABI}" />
</section>
<set name="CPP_ABI" value="${ABI}" />
<unset name="HXCPP_WINXP_COMPAT" if="HXCPP_ARM64" />
<set name="XPOBJ" value="xp" if="HXCPP_WINXP_COMPAT" />
<set name="OBJCACHE" value="-c" if="HXCPP_COMPILE_CACHE"/>
<unset name="HXCPP_FORCE_PDB_SERVER" if="HXCPP_COMPILE_CACHE" />
<set name="SUBSYSTEMWINDOWS" value="1" if="no_console" unless="HXCPP_DEBUGGER" />
<set name="SUBSYSTEMCONSOLE" value="1" unless="SUBSYSTEMWINDOWS" />
<section if="HXCPP_WINXP_COMPAT">
<set name="SUBSYSTEM_VER" value=",5.01" unless="HXCPP_M64" />
<set name="SUBSYSTEM_VER" value=",5.02" if="HXCPP_M64" />
</section>
<set name="SUBSYSTEM_VER" value=",6.02" if="HXCPP_ARM64" />
<set name="MSVC_OBJ_DIR" value="obj/msvc${MSVC_VER}${OBJEXT}${OBJCACHE}${XPOBJ}" unless="winrt" />
<set name="MSVC_OBJ_DIR" value="obj/msvc${MSVC_VER}-rt${OBJEXT}${OBJCACHE}${XPOBJ}" if="winrt" />
<set name="MSVC_OBJ_DIR" value="obj/msvc${MSVC_VER}-arm${OBJEXT}${OBJCACHE}${XPOBJ}" if="HXCPP_ARM64" />
<set name="MACHINE" value="x86" />
<set name="MACHINE" value="x64" if="HXCPP_M64" />
<set name="MACHINE" value="ARM64" if="HXCPP_ARM64" />
<!-- Seem vc does not know how to start its own pdbserver in 64 bit mode -->
<setup name="pdbserver" if="HXCPP_DEBUG_LINK HXCPP_HACK_PDBSRV HXCPP_FORCE_PDB_SERVER" />
<set name="MSVC_ARCH" value="SSE2" unless="HXCPP_M64" />
<set name="HXCPP_LTCG_INCREMENTAL" value="1" if="HXCPP_OPTIMIZE_LINK_INCREMENTAL"/>
<unset name="HXCPP_FAST_LINK" if="HXCPP_FAST_LINK" unless="MSVC19"/>
<compiler id="MSVC" exe="cl.exe" if="windows">
<flag value="-nologo"/>
<!-- Newer options -->
<!-- <flag value = "/analyze-" if="MSVC17+" /> -->
<flag value = "/WX-" if="MSVC17+" />
<flag value = "/fp:precise" if="MSVC17+" />
<flag value = "-DWINAPI_FAMILY=WINAPI_FAMILY_APP" if="winrt" />
<flag value = "-DHX_WINRT" if="winrt" />
<flag value = "-errorReport:prompt" if="winrt" />
<cflag value="${C_ABI}" />
<cppflag value="${CPP_ABI}" />
<flag value="-DHX_WINDOWS"/>
<flag value="-DHXCPP_BIG_ENDIAN" if="HXCPP_BIG_ENDIAN"/>
<flag value="-D${HXCPP_XP_DEFINE}" if="HXCPP_XP_DEFINE"/>
<flag value="-GR"/>
<!-- standard optimization flags -->
<flag value="-Od" if="debug" tag="optim-std" />
<flag value="-O2" unless="debug" tag="optim-std" />
<section if="HXCPP_DEBUG_LINK">
<flag value="-Zi" unless="HXCPP_COMPILE_CACHE" tag="optim-std" />
<flag value="-Z7" if="HXCPP_COMPILE_CACHE" tag="optim-std" />
<flag value="-Fd${HXCPP_BUILD_DIR}${MSVC_OBJ_DIR}/vc.pdb" unless="HXCPP_COMPILE_CACHE" tag="optim-std" />
</section>
<!-- non-standard optimization flags -->
<flag value="-Zi" unless="HXCPP_COMPILE_CACHE" tag="debug" />
<flag value="-Z7" if="HXCPP_COMPILE_CACHE" tag="debug" />
<flag value="-Fd${HXCPP_BUILD_DIR}${MSVC_OBJ_DIR}/vc.pdb" unless="HXCPP_COMPILE_CACHE" tag="debug" />
<flag value="-Od" tag="debug" />
<flag value="-O2" tag="release" />
<flag value="-bigobj" if="debug" />
<flag value="-Zc:inline" if="HXCPP_FAST_LINK" unless="debug || HXCPP_OPTIMIZE_LINK || HXCPP_LTCG_INCREMENTAL" /><!-- not available with -Od and -GL -->
<flag value="-Os" tag="optim-size" />
<flag value="-GL" if="HXCPP_OPTIMIZE_LINK || HXCPP_LTCG_INCREMENTAL" unless="debug"/>
<flag value="-FS" if="HXCPP_FORCE_PDB_SERVER" />
<flag value="-Oy-"/>
<flag value="-c"/>
<flag value="-EHa" if="HXCPP_CATCH_SEGV" />
<flag value="-EHs" unless="HXCPP_CATCH_SEGV || winrt"/>
<flag value="-EHsc" if="winrt" unless="HXCPP_CATCH_SEGV" />
<flag value="-GS-"/>
<flag value="-arch:${MSVC_ARCH}" if="MSVC_ARCH" />
<flag value="-I${HXCPP}/include"/>
<include name="toolchain/common-defines.xml" />
<flag value="-D_CRT_SECURE_NO_DEPRECATE"/>
<flag value="-D_ALLOW_MSC_VER_MISMATCH"/>
<flag value="-D_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH"/>
<flag value="-DHX_WIN_MAIN" if="SUBSYSTEMWINDOWS" tag="main" />
<flag value="-wd4996"/>
<outflag value="-Fo"/>
<ext value=".obj"/>
<objdir value="${MSVC_OBJ_DIR}" />
<rcexe name="rc.exe" />
<rcext value=".res" />
<rcflag value="-nologo" />
<getversion value="cl.exe"/>
</compiler>
<linker id="dll" exe="link.exe" if="windows">
<flag value="-nologo"/>
<flag value="-machine:${MACHINE}"/>
<flag value="-dll"/>
<flag value="-debug:full" if="HXCPP_DEBUG_LINK" unless="HXCPP_FAST_LINK"/>
<flag value="-debug:fastlink" if="HXCPP_FAST_LINK HXCPP_DEBUG_LINK"/>
<flag value="-OPT:REF,ICF" if="HXCPP_PDB_FILE"/>
<flag value="-pdb:${HXCPP_PDB_FILE}" if="HXCPP_PDB_FILE" />
<flag value="-LTCG" if="HXCPP_OPTIMIZE_LINK" unless="debug || HXCPP_LTCG_INCREMENTAL"/>
<flag value="-LTCG:INCREMENTAL" if="HXCPP_LTCG_INCREMENTAL" unless="debug"/>
<flag value="-map:${HXCPP_MAP_FILE}" if="HXCPP_MAP_FILE" />
<lib name="${dll_import_link}" if="dll_import_link" />
<ext value=".dll"/>
<libdir name="obj/lib"/>
<flag value="-libpath:lib"/>
<fromfile value="@"/>
<outflag value="-out:"/>
<flag value="user32.lib"/>
<libpathflag value="-libpath:"/>
</linker>
<linker id="exe" exe="link.exe" unless="winrt">
<fromfile value="@"/>
<flag value="-nologo"/>
<flag value="-machine:${MACHINE}"/>
<flag value="-debug" if="HXCPP_DEBUG_LINK||HXCPP_PDB_FILE" unless="HXCPP_FAST_LINK"/>
<flag value="-debug:fastlink" if="HXCPP_FAST_LINK HXCPP_DEBUG_LINK"/>
<flag value="-OPT:REF,ICF" if="HXCPP_PDB_FILE"/>
<flag value="-map:${HXCPP_MAP_FILE}" if="HXCPP_MAP_FILE" />
<flag value="-pdb:${HXCPP_PDB_FILE}" if="HXCPP_PDB_FILE" />
<flag value="-INCREMENTAL:NO" if="HXCPP_PDB_FILE" />
<flag value="-LTCG" if="HXCPP_OPTIMIZE_LINK" unless="debug || HXCPP_LTCG_INCREMENTAL"/>
<flag value="-LTCG:INCREMENTAL" if="HXCPP_LTCG_INCREMENTAL" unless="debug"/>
<flag value="-subsystem:windows${SUBSYSTEM_VER}" if="SUBSYSTEMWINDOWS" />
<flag value="-subsystem:console${SUBSYSTEM_VER}" if="SUBSYSTEMCONSOLE" />
<libpathflag value="-libpath:"/>
<flag value="-libpath:lib"/>
<flag value="user32.lib"/>
<ext value=".exe"/>
<outflag value="-out:"/>
</linker>
<manifest exe="mt.exe" >
<flag value="-nologo"/>
<flag value="-manifest"/>
<outPre value="-outputresource:" />
<outPost value=";1" />
</manifest>
<linker id="exe" exe="link.exe" if="winrt">
<fromfile value="@"/>
<flag value="-nologo"/>
<flag value="-machine:${MACHINE}"/>
<flag value="-debug" if="HXCPP_DEBUG_LINK" unless="HXCPP_FAST_LINK"/>
<flag value="-debug:fastlink" if="HXCPP_FAST_LINK HXCPP_DEBUG_LINK"/>
<flag value="-LTCG" if="HXCPP_OPTIMIZE_LINK" unless="debug || HXCPP_LTCG_INCREMENTAL"/>
<flag value="-LTCG:INCREMENTAL" if="HXCPP_LTCG_INCREMENTAL" unless="debug"/>
<flag value="-subsystem:windows" />
<flag value="-MANIFEST:NO" />
<flag value="-WINMD" />
<flag value="-APPCONTAINER" />
<flag value="-WINMDFILE:${MSVC_OBJ_DIR}/app.winmd" />
<flag value="-DYNAMICBASE" />
<flag value="-NXCOMPAT" />
<flag value="-libpath:lib"/>
<libpathflag value="-libpath:"/>
<flag value="user32.lib"/>
<ext value=".exe"/>
<outflag value="-out:"/>
</linker>
<linker id="static_link" exe="lib.exe" if="windows">
<flag value="-LTCG" if="HXCPP_OPTIMIZE_LINK" unless="debug || HXCPP_LTCG_INCREMENTAL"/>
<flag value="-LTCG:INCREMENTAL" if="HXCPP_LTCG_INCREMENTAL" unless="debug"/>
<fromfile value="@"/>
<flag value="-nologo"/>
<flag value="-IGNORE:4264" if="winrt" />
<ext value="${LIBEXT}"/>
<outflag value="-out:"/>
</linker>
</xml>

View File

@ -0,0 +1,25 @@
setlocal enabledelayedexpansion
@if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (
for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath`) do (
@set InstallDir=%%i
)
@if exist "!InstallDir!\Common7\Tools\VsDevCmd.bat" (
@call "!InstallDir!\Common7\Tools\VsDevCmd.bat" -arch=x86 -app_platform=UWP -no_logo
@set "LIB=%VCTOOLSINSTALLDIR%lib\x86\store;%WindowsSdkDir%Lib\%WindowsSDKLibVersion%um\x86;!LIB!"
@set "LIBPATH=%VCTOOLSINSTALLDIR%lib\x86\store\references;!LIBPATH!"
@echo HXCPP_VARS
@set
) else (
echo Warning: Could not find Visual Studio VsDevCmd
)
) else if exist "%VS140COMNTOOLS%\vsvars32.bat" (
@call "%VS140COMNTOOLS%\vsvars32.bat"
@set "INCLUDE=%WindowsSdkDir%Include;!INCLUDE!"
@set "PATH=%WindowsSdkDir%bin\x86;!PATH!"
@set "LIB=%WindowsSdkDir%Lib\%WindowsSDKLibVersion%um\x86;!LIB!"
@set "LIBPATH=%VS140COMNTOOLS%\..\..\VC\lib\store\references;!LIBPATH!"
@echo HXCPP_VARS
@set
) else (
echo Warning: Could not find x64 environment variables for Visual Studio compiler
)

View File

@ -0,0 +1,27 @@
setlocal enabledelayedexpansion
@if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (
for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath`) do (
@set InstallDir=%%i
)
@if exist "!InstallDir!\Common7\Tools\VsDevCmd.bat" (
@call "!InstallDir!\Common7\Tools\VsDevCmd.bat" -arch=amd64 -app_platform=UWP -no_logo
@set "LIB=%VCTOOLSINSTALLDIR%lib\x64\store;%WindowsSdkDir%Lib\%WindowsSDKLibVersion%um\x64;!LIB!"
@set "LIBPATH=%VCTOOLSINSTALLDIR%lib\x86\store\references;!LIBPATH!"
@echo HXCPP_VARS
@set
@echo HXCPP_HACK_PDBSRV=1
) else (
echo Warning: Could not find Visual Studio VsDevCmd
)
) else if exist "%VS140COMNTOOLS%\..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat" (
@call "%VS140COMNTOOLS%\..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat"
@set "INCLUDE=%WindowsSdkDir%Include;!INCLUDE!"
@set "PATH=%WindowsSdkDir%bin\x64;!PATH!"
@set "LIB=%WindowsSdkDir%Lib\%WindowsSDKLibVersion%um\x64;!LIB!"
@set "LIBPATH=%VS140COMNTOOLS%\..\..\VC\lib\store\references;!LIBPATH!"
@echo HXCPP_VARS
@set
@echo HXCPP_HACK_PDBSRV=1
) else (
echo Warning: Could not find x64 environment variables for Visual Studio compiler
)

View File

@ -0,0 +1,48 @@
setlocal enabledelayedexpansion
@if exist "%HXCPP_MSVC%\..\..\VC\" (
@if not exist "%HXCPP_MSVC%\..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat" (
@echo Error: the specified MSVC version does not have vcvarsx86_amd64.bat setup script
) else (
@echo "%HXCPP_MSVC%"
@call "%HXCPP_MSVC%\..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat"
@echo HXCPP_VARS
@set
)
exit
)
@if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (
for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath`) do (
@set InstallDir=%%i
)
@if exist "!InstallDir!\Common7\Tools\VsDevCmd.bat" (
@call "!InstallDir!\Common7\Tools\VsDevCmd.bat" -arch=amd64 -app_platform=Desktop -no_logo
@echo HXCPP_VARS
@set
exit
) else (
echo Warning: Could not find Visual Studio VsDevCmd
)
)
@if exist "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat" (
@call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat" -arch=amd64 -app_platform=Desktop -no_logo
@echo HXCPP_VARS
@set
) else if exist "%VS140COMNTOOLS%\..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat" (
@echo "%VS140COMNTOOLS%"
@call "%VS140COMNTOOLS%\..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat"
@echo HXCPP_VARS
@set
@echo HXCPP_HACK_PDBSRV=1
) else if exist "%VS120COMNTOOLS%\..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat" (
@echo "%VS120COMNTOOLS%"
@call "%VS120COMNTOOLS%\..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat"
@echo HXCPP_VARS
@set
) else if exist "%VS110COMNTOOLS%\..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat" (
@echo "%VS110COMNTOOLS%"
@call "%VS110COMNTOOLS%\..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat"
@echo HXCPP_VARS
@set
) else (
echo Error: 64bit is not automatically supported for this version of VC. Set HXCPP_MSVC_CUSTOM and manually configure the executable, library and include paths
)

View File

@ -0,0 +1,12 @@
<xml>
<pragma once="true" />
<set name="CUDA_SDK" value="c:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v8.0/" unless="CUDA_SDK" if="windows_host" />
<error value="Please specify 'CUDA_SDK' to use nvcc" unless="CUDA_SDK" />
<path name="${CUDA_SDK}/bin" />
<set name="NVCC" value="nvcc" />
<nvccflag value="-c" />
<nvcclinkflag value="-dlink" />
</xml>

View File

@ -0,0 +1,14 @@
<xml>
<!-- You can override this file to setup your own toolchain.
You should peobably include thie following line -->
<include name="${HXCPP_CONFIG}" section="vars" noerror="1"/>
<section if="EMCC_CORES">
<set name="HXCPP_COMPILE_THREADS" value="1" if="emscripten" />
</section>
</xml>

View File

@ -0,0 +1,121 @@
<xml>
<section unless="HXCPP_CLEAN_ONLY" >
<error value="TIZEN_SDK must be defined to build for Tizen" unless="TIZEN_SDK" />
</section>
<set name="HXCPP_X86" value="1" if="simulator" />
<section if="HXCPP_X86">
<set name="ARCH" value="-x86" />
<set name="PLATFORM_TYPE" value="emulator" />
<set name="EXEPREFIX" value="i386-linux-gnueabi" />
</section>
<section unless="HXCPP_X86">
<set name="ARCH" value="-v7" />
<set name="PLATFORM_TYPE" value="device" />
<set name="EXEPREFIX" value="arm-linux-gnueabi" />
</section>
<section if="TIZEN_22" >
<set name="TIZEN_PLATFORM" value="${TIZEN_SDK}/platforms/tizen2.2/rootstraps/tizen-${PLATFORM_TYPE}-2.2.native" />
<path name="${TIZEN_SDK}/tools/${EXEPREFIX}-gcc-4.5/bin" />
</section>
<section unless="TIZEN_22" >
<set name="TIZEN_PLATFORM" value="${TIZEN_SDK}/platforms/mobile-2.3/rootstraps/mobile-2.3-${PLATFORM_TYPE}.core" />
<path name="${TIZEN_SDK}/tools/${EXEPREFIX}-gcc-4.8/bin" />
</section>
<include name="toolchain/gcc-toolchain.xml"/>
<!-- TIZEN TOOLS -------------------------------------------------->
<compiler id="tizen" exe="${EXEPREFIX}-g++" if="tizen">
<flag value="-c"/>
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-I${HXCPP}/include"/>
<flag value="-I${TIZEN_PLATFORM}/usr/include"/>
<flag value="-DTIZEN=TIZEN"/>
<flag value="-D_APP_LOG"/>
<flag value="-march=armv7-a" unless="HXCPP_X86"/>
<flag value="-mfloat-abi=softfp" unless="HXCPP_X86"/>
<flag value="-mfpu=vfpv3-d16" unless="HXCPP_X86"/>
<flag value="-mtune=cortex-a8" unless="HXCPP_X86"/>
<include name="toolchain/common-defines.xml" />
<flag value="-fvisibility=hidden"/>
<flag value="-fdollars-in-identifiers"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<cppflag value="-frtti"/>
<!-- <flag value="-fPIE" /> -->
<flag value="--sysroot=${TIZEN_PLATFORM}" />
<outflag value="-o"/>
<objdir value="./obj/tizen${OBJEXT}${ARCH}" />
</compiler>
<linker id="exe" exe="${EXEPREFIX}-g++" if="tizen">
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-s" unless="debug"/>
<!-- <flag value="-rdynamic"/> -->
<flag value="-pie" />
<lib name="-lpthread" />
<flag value="-march=armv7-a" unless="HXCPP_X86"/>
<flag value="-mfloat-abi=softfp" unless="HXCPP_X86"/>
<flag value="-mfpu=vfpv3-d16" unless="HXCPP_X86"/>
<flag value="-mtune=cortex-a8" unless="HXCPP_X86"/>
<flag value="-Xlinker" />
<flag value="--as-needed" />
<flag value="-Xlinker" />
<flag value="-rpath=/opt/usr/apps/${APP_ID}/lib" />
<flag value="-Xlinker" />
<flag value="-rpath=/home/developer/sdk_tools/lib" />
<flag value="--sysroot=${TIZEN_PLATFORM}" />
<flag value="-L${TIZEN_PLATFORM}/usr/lib" />
<flag value="-L${TIZEN_PLATFORM}/usr/lib/osp" />
<lib name="-losp-appfw" />
<lib name="-lrt" />
<!-- <flag value="-fpic"/>
<flag value="-fPIC"/> -->
<ext value=".exe"/>
<outflag value="-o"/>
<lib name="-ldl"/>
</linker>
<linker id="dll" exe="${EXEPREFIX}-g++" if="tizen">
<flag value="-shared"/>
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-s" unless="debug"/>
<!-- <flag value="-pie" /> -->
<lib name="-lpthread" />
<flag value="-march=armv7-a" unless="HXCPP_X86"/>
<flag value="-mfloat-abi=softfp" unless="HXCPP_X86"/>
<flag value="-mfpu=vfpv3-d16" unless="HXCPP_X86"/>
<flag value="-mtune=cortex-a8" unless="HXCPP_X86"/>
<flag value="-Xlinker" />
<flag value="--as-needed" />
<!--<flag value="-Xlinker" />
<flag value="-rpath=/opt/usr/apps/DugJgh8Hxl/lib" /> -->
<flag value="-Xlinker" />
<flag value="-rpath=/home/developer/sdk_tools/lib" />
<flag value="--sysroot=${TIZEN_PLATFORM}" />
<flag value="-L${TIZEN_PLATFORM}/usr/lib" />
<flag value="-L${TIZEN_PLATFORM}/usr/lib/osp" />
<cppflag value="-frtti"/>
<!-- <flag value="-fpic"/>
<flag value="-fPIC"/> -->
<!-- <flag value="-pie" /> -->
<lib name="-ldl"/>
<ext value=".so"/>
<outflag value="-o"/>
</linker>
</xml>

View File

@ -0,0 +1,79 @@
<xml>
<echo value="Using WatchOS SDK ${WATCHOS_VER}" if="VERBOSE"/>
<set name="HXCPP_USE_LIBTOOL" value="1" />
<set name="HXCPP_LIBTOOL" value="xcrun --toolchain WatchOS libtool" />
<include name="toolchain/gcc-toolchain.xml"/>
<!--<path name="${DEVELOPER_DIR}/Platforms/WatchOS.platform/Developer/usr/bin" />-->
<set name="HXCPP_CPP11" value="1" />
<set name="OBJDBG" value="-dbg" if="debug" />
<compiler id="WatchOS" exe="clang" >
<exe name="xcrun --toolchain WatchOS clang++" />
<flag value="-c"/>
<flag value="-arch"/>
<flag value="${HXCPP_ARCH}" if="HXCPP_ARCH"/>
<section unless="HXCPP_ARCH">
<flag value="armv7k" unless="HXCPP_ARM64_32"/>
<flag value="arm64_32" if="HXCPP_ARM64_32"/>
</section>
<pchflag value="-x" />
<pchflag value="c++-header" />
<flag value="-stdlib=libc++" if="HXCPP_CPP11" />
<flag value="-std=c++11" if="HXCPP_CPP11" />
<flag value="-g" />
<flag value="-isysroot"/>
<flag value="${DEVELOPER_DIR}/Platforms/WatchOS.platform/Developer/SDKs/WatchOS${WATCHOS_VER}.sdk"/>
<flag value="-fapplication-extension" />
<flag value="-O2" unless="debug"/>
<flag value="-fmessage-length=0"/>
<flag value="-pipe"/>
<flag value="-Wno-trigraphs"/>
<flag value="-fno-stack-protector"/>
<flag value="-Wno-overflow" />
<cppflag value="-Wno-invalid-offsetof" />
<flag value="-fpascal-strings"/>
<flag value="-fasm-blocks"/>
<flag value="-Wreturn-type"/>
<mmflag value="-fobjc-abi-version=2"/>
<mmflag value="-fobjc-legacy-dispatch"/>
<flag value="-mwatchos-version-min=3.0"/>
<flag value="-DHX_APPLEWATCH"/>
<flag value="-DHX_WATCHOS"/>
<flag value="-fobjc-arc" />
<flag value="-DOBJC_ARC" />
<flag value="-DENABLE_BITCODE=YES"/>
<flag value="-fembed-bitcode" />
<flag value="-fembed-bitcode-marker" if="debug" />
<flag value="-Wno-parentheses" />
<flag value="-Wno-null-dereference" unless="HXCPP_GCC"/>
<flag value="-Wno-unused-value" />
<flag value="-Wno-bool-conversion" unless="HXCPP_GCC"/>
<include name="toolchain/common-defines.xml" />
<flag value="-I${HXCPP}/include"/>
<!-- Added for iOS8 -->
<flag value="-fexceptions"/>
<flag value="-fstrict-aliasing"/>
<!-- End of Added for iOS8 -->
<outflag value="-o"/>
<ext value=".o"/>
<objdir value="obj/watchos${OBJDBG}/" />
</compiler>
</xml>

View File

@ -0,0 +1,75 @@
<xml>
<echo value="Using WatchSimulator SDK ${WATCHOS_VER}" if="VERBOSE"/>
<set name="HXCPP_USE_LIBTOOL" value="1" />
<set name="HXCPP_LIBTOOL" value="xcrun --toolchain WatchSimulator libtool" />
<include name="toolchain/gcc-toolchain.xml"/>
<!--<path name="${DEVELOPER_DIR}/Platforms/WatchSimulator.platform/Developer/usr/bin" />-->
<set name="HXCPP_CPP11" value="1" />
<set name="OBJDBG" value="-dbg" if="debug" />
<compiler id="WatchSimulator" exe="clang" >
<exe name="xcrun --toolchain WatchSimulator clang++" />
<flag value="-c"/>
<flag value="-arch"/>
<flag value="${HXCPP_ARCH}" if="HXCPP_ARCH"/>
<section unless="HXCPP_ARCH">
<flag value="i386" unless="HXCPP_M64 || HXCPP_ARM64 || HXCPP_X86_64"/>
<flag value="x86_64" if="HXCPP_M64 || HXCPP_X86_64"/>
<flag value="arm64" if="HXCPP_ARM64"/>
</section>
<pchflag value="-x" />
<pchflag value="c++-header" />
<flag value="-stdlib=libc++" if="HXCPP_CPP11" />
<flag value="-std=c++11" if="HXCPP_CPP11" />
<flag value="-g" />
<flag value="-isysroot"/>
<flag value="${DEVELOPER_DIR}/Platforms/WatchSimulator.platform/Developer/SDKs/WatchSimulator${WATCHOS_VER}.sdk"/>
<flag value="-fapplication-extension" />
<flag value="-O2" unless="debug"/>
<flag value="-fmessage-length=0"/>
<flag value="-pipe"/>
<flag value="-Wno-trigraphs"/>
<flag value="-fno-stack-protector"/>
<flag value="-Wno-overflow" />
<cppflag value="-Wno-invalid-offsetof" />
<flag value="-fpascal-strings"/>
<flag value="-fasm-blocks"/>
<flag value="-Wreturn-type"/>
<mmflag value="-fobjc-abi-version=2"/>
<mmflag value="-fobjc-legacy-dispatch"/>
<flag value="-mwatchos-simulator-version-min=3.0"/>
<flag value="-DHX_APPLEWATCH"/>
<flag value="-DHX_WATCHSIM"/>
<flag value="-fobjc-arc" />
<flag value="-DOBJC_ARC" />
<flag value="-Wno-parentheses" />
<flag value="-Wno-null-dereference" unless="HXCPP_GCC"/>
<flag value="-Wno-unused-value" />
<flag value="-Wno-bool-conversion" unless="HXCPP_GCC"/>
<include name="toolchain/common-defines.xml" />
<flag value="-I${HXCPP}/include"/>
<!-- Added for iOS8 -->
<flag value="-fexceptions"/>
<flag value="-fstrict-aliasing"/>
<!-- End of Added for iOS8 -->
<outflag value="-o"/>
<ext value=".o"/>
<objdir value="obj/watchsim${OBJDBG}/" />
</compiler>
</xml>

View File

@ -0,0 +1,72 @@
<xml>
<set name="PalmPDK" value="c:\Program Files (x86)\HP webOS\PDK" unless="PalmPDK" if="windows_host" />
<set name="PalmPDK" value="/opt/PalmPDK" unless="PalmPDK" />
<path name="${PalmPDK}/arm-gcc/bin/" unless="windows_host" />
<set name="CodeSourcery" value="C:\Program Files (x86)\CodeSourcery\Sourcery G++ Lite" unless = "CodeSourcery" />
<path name="${CodeSourcery}/bin" if="windows_host"/>
<include name="toolchain/gcc-toolchain.xml"/>
<!-- WEBOS TOOLS -------------------------------------------------->
<compiler id="webos" exe="arm-none-linux-gnueabi-g++" if="webos">
<flag value="-c"/>
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-I${HXCPP}/include"/>
<flag value="-I${PalmPDK}/include"/>
<flag value="-mcpu=cortex-a8" unless="armv6" />
<flag value="-mfpu=neon" unless="armv6" />
<flag value="-mcpu=arm1136jf-s" if="armv6" />
<flag value="-mfpu=vfp" if="armv6" />
<flag value="-mfloat-abi=softfp"/>
<flag value="-DWEBOS=WEBOS"/>
<include name="toolchain/common-defines.xml" />
<flag value="-fvisibility=hidden"/>
<flag value="-fdollars-in-identifiers"/>
<flag value="-DHXCPP_LOAD_DEBUG" if="HXCPP_LOAD_DEBUG"/>
<flag value="-DHXCPP_RTLD_LAZY" if="HXCPP_RTLD_LAZY"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<cppflag value="-frtti"/>
<outflag value="-o"/>
<objdir value="./obj/webos${OBJEXT}" />
</compiler>
<linker id="exe" exe="arm-none-linux-gnueabi-g++" if="webos">
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-s" unless="debug"/>
<flag value="-rdynamic"/>
<flag value="-L${PalmPDK}/device/lib"/>
<ext value=""/>
<outflag value="-o"/>
<lib name="-lpthread"/>
<lib name="-ldl"/>
<lib name="-lrt"/>
</linker>
<linker id="dll" exe="arm-none-linux-gnueabi-g++" if="webos">
<flag value="-shared"/>
<flag value="-g" if="debug"/>
<flag value="-O2" unless="debug"/>
<flag value="-s" unless="debug"/>
<flag value="-L${PalmPDK}/device/lib"/>
<cppflag value="-frtti"/>
<lib name="-lpthread"/>
<flag value="-fpic"/>
<flag value="-fPIC"/>
<lib name="-ldl"/>
<ext value=".so"/>
<outflag value="-o"/>
</linker>
</xml>