forked from LeenkxTeam/LNXSDK
Update Files
This commit is contained in:
@ -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>
|
@ -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>
|
@ -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>
|
@ -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>
|
@ -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>
|
@ -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>
|
42
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/common-defines.xml
Normal file
42
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/common-defines.xml
Normal 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>
|
@ -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>
|
||||
|
1
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/dospath.bat
Normal file
1
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/dospath.bat
Normal file
@ -0,0 +1 @@
|
||||
@for %%I in (.) do @echo %%~sI
|
@ -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>
|
@ -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>
|
||||
|
120
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/finish-setup.xml
Normal file
120
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/finish-setup.xml
Normal 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>
|
59
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/gcc-toolchain.xml
Normal file
59
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/gcc-toolchain.xml
Normal 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>
|
79
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/gcw0-toolchain.xml
Normal file
79
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/gcw0-toolchain.xml
Normal 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>
|
72
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/gph-toolchain.xml
Normal file
72
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/gph-toolchain.xml
Normal 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>
|
245
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/haxe-target.xml
Normal file
245
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/haxe-target.xml
Normal 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>
|
||||
|
||||
|
114
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/iphoneos-toolchain.xml
Normal file
114
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/iphoneos-toolchain.xml
Normal 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>
|
105
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/iphonesim-toolchain.xml
Normal file
105
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/iphonesim-toolchain.xml
Normal 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>
|
93
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/linux-toolchain.xml
Normal file
93
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/linux-toolchain.xml
Normal 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>
|
113
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/mac-toolchain.xml
Normal file
113
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/mac-toolchain.xml
Normal 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>
|
111
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/mingw-toolchain.xml
Normal file
111
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/mingw-toolchain.xml
Normal 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>
|
@ -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.
|
||||
)
|
89
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/msvc-setup.bat
Normal file
89
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/msvc-setup.bat
Normal 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
|
||||
)
|
204
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/msvc-toolchain.xml
Normal file
204
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/msvc-toolchain.xml
Normal 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>
|
@ -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
|
||||
)
|
@ -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
|
||||
)
|
48
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/msvc64-setup.bat
Normal file
48
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/msvc64-setup.bat
Normal 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
|
||||
)
|
12
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/nvcc-setup.xml
Normal file
12
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/nvcc-setup.xml
Normal 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>
|
14
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/setup.xml
Normal file
14
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/setup.xml
Normal 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>
|
||||
|
||||
|
121
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/tizen-toolchain.xml
Normal file
121
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/tizen-toolchain.xml
Normal 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>
|
@ -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>
|
@ -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>
|
72
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/webos-toolchain.xml
Normal file
72
Kha/Backends/Kinc-hxcpp/khacpp/toolchain/webos-toolchain.xml
Normal 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>
|
Reference in New Issue
Block a user