Files
lime/project/Build.xml
2018-08-28 18:36:38 -07:00

531 lines
17 KiB
XML

<xml>
<set name="PLATFORM" value="android-14" if="android" unless="HXCPP_ARM64" />
<set name="PLATFORM" value="android-21" if="android HXCPP_ARM64" />
<set name="HXCPP_CPP11" value="1" />
<include name="${HXCPP}/build-tool/BuildCommon.xml" />
<set name="ios" value="1" if="iphone" />
<set name="tvos" value="1" if="appletv" />
<set name="LIME_CAIRO" value="1" />
<set name="LIME_CURL" value="1" unless="emscripten" />
<set name="LIME_EFSW" value="1" if="windows || mac || linux" unless="winrt" />
<set name="LIME_JPEG" value="1" />
<!-- <set name="LIME_FAUDIO" value="1" /> -->
<set name="LIME_FREETYPE" value="1" />
<set name="LIME_HARFBUZZ" value="1" />
<!-- <set name="LIME_HASHLINK" value="1" if="windows || mac || linux" /> -->
<set name="LIME_HASHLINK" value="1" if="hashlink" unless="HXCPP_M64" />
<set name="LIME_LZMA" value="1" />
<set name="LIME_MBEDTLS" value="1" unless="emscripten || winrt" />
<!-- <set name="LIME_NEKO" value="1" if="linux" /> -->
<set name="LIME_OGG" value="1" />
<set name="LIME_OPENALSOFT" value="1" if="windows || linux || android" unless="static_link" />
<set name="LIME_MOJOAL" value="1" if="switch || static_link || winrt || mojoal" />
<unset name="LIME_OPENALSOFT" if="LIME_MOJOAL" />
<set name="LIME_OPENAL" value="1" if="mac || iphone || emscripten || tvos" />
<set name="LIME_OPENAL" value="1" if="LIME_OPENALSOFT" />
<set name="LIME_OPENAL" value="1" if="LIME_MOJOAL" />
<set name="LIME_OPENGL" value="1" />
<set name="LIME_PIXMAN" value="1" />
<set name="LIME_PNG" value="1" />
<set name="LIME_SDL" value="1" />
<!-- <set name="LIME_SDL_ANGLE" value="1" if="windows" unless="static_link" /> -->
<set name="LIME_SDL_ANGLE" value="1" if="windows LIME_SDL_ANGLE" unless="static_link" />
<set name="LIME_SDL_ANGLE" value="1" if="windows angle" unless="static_link" />
<set name="LIME_SDL_ANGLE" value="1" if="winrt" unless="static_link" />
<set name="LIME_TINYFILEDIALOGS" value="1" if="windows || mac || linux" unless="winrt" />
<set name="LIME_VORBIS" value="1" />
<!-- <set name="LIME_VPX" value="1" />
<set name="LIME_WEBM" value="1" /> -->
<set name="LIME_ZLIB" value="1" />
<set name="OUTPUT_DIR" value="../ndll" unless="OUTPUT_DIR" />
<set name="NATIVE_TOOLKIT_PATH" value="lib" unless="NATIVE_TOOLKIT_PATH" />
<set name="NATIVE_TOOLKIT_HAVE_HARFBUZZ" value="1" if="LIME_HARFBUZZ" />
<set name="NATIVE_TOOLKIT_HAVE_MBEDTLS" value="1" if="LIME_MBEDTLS" />
<set name="NATIVE_TOOLKIT_HAVE_PNG" value="1" if="LIME_PNG" />
<set name="NATIVE_TOOLKIT_SDL_STATIC" value="1" />
<set name="NATIVE_TOOLKIT_SDL_ANGLE" value="1" if="LIME_SDL_ANGLE" />
<set name="NATIVE_TOOLKIT_HAVE_CAIRO" value="1" if="LIME_CAIRO" />
<set name="NATIVE_TOOLKIT_HAVE_FREETYPE" value="1" if="LIME_FREETYPE" />
<files id="lime">
<compilerflag value="-Iinclude" />
<file name="src/ExternalInterface.cpp" />
<section if="LIME_CAIRO">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/cairo/include" />
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/cairo/include/configs/default/" unless="windows || mac || linux"/>
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/cairo/include/configs/linux/" if="linux"/>
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/cairo/include/configs/windows/" if="windows"/>
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/cairo/include/configs/mac/" if="mac"/>
<compilerflag value="-DLIME_CAIRO" />
<compilerflag value="-DHAVE_CONFIG_H" />
<compilerflag value="-DCAIRO_WIN32_STATIC_BUILD" if="windows" />
<compilerflag value="-DCAIRO_HAS_FT_FONT" />
<file name="src/graphics/cairo/CairoBindings.cpp" />
</section>
<section if="LIME_CURL">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/curl/include/" />
<compilerflag value="-DLIME_CURL" />
<compilerflag value="-DCURL_STATICLIB" />
<file name="src/net/curl/CURLBindings.cpp" />
</section>
<section if="LIME_EFSW">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/efsw/include/" />
<compilerflag value="-DLIME_EFSW" />
<file name="src/system/FileWatcher.cpp" />
</section>
<section if="LIME_FAUDIO">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/faudio/src" />
<compilerflag value="-DLIME_FAUDIO" />
<!-- <file name="src/graphics/format/PNG.cpp" /> -->
</section>
<section if="LIME_FREETYPE">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/freetype/include" />
<compilerflag value="-DLIME_FREETYPE" />
<file name="src/text/Font.cpp" />
<section if="LIME_HARFBUZZ">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/harfbuzz/src" />
<compilerflag value="-DLIME_HARFBUZZ" />
<file name="src/text/harfbuzz/HarfbuzzBindings.cpp" />
</section>
</section>
<section if="LIME_HASHLINK">
<compilerflag value="-DLIME_HASHLINK" />
</section>
<section unless="LIME_HASHLINK">
<compilerflag value="-DLIBHL_EXPORTS" />
</section>
<section if="LIME_JPEG">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/jpeg/" />
<compilerflag value="-DLIME_JPEG" />
<file name="src/graphics/format/JPEG.cpp" />
</section>
<section if="LIME_LZMA">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/lzma/src" />
<compilerflag value="-DLIME_LZMA" />
<file name="src/utils/compress/LZMA.cpp" />
</section>
<section if="LIME_NEKO">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/neko/vm/" />
<compilerflag value="-DLIME_NEKO" />
<file name="src/vm/NekoVM.cpp" />
</section>
<section if="LIME_OGG">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/ogg/include/" />
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/vorbis/include/" />
<compilerflag value="-DLIME_OGG" />
<file name="src/media/containers/OGG.cpp" />
</section>
<section if="LIME_OPENAL">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/openal/include/" unless="LIME_MOJOAL || emscripten" />
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/mojoal/" if="LIME_MOJOAL" />
<compilerflag value="-DLIME_OPENAL" />
<compilerflag value="-DLIME_OPENALSOFT" if="LIME_OPENALSOFT" />
<compilerflag value="-DLIME_MOJOAL" if="LIME_MOJOAL" />
<compilerflag value="-DAL_LIBTYPE_STATIC=1" if="LIME_OPENALSOFT || LIME_MOJOAL" />
<compilerflag value="-DAL_ALEXT_PROTOTYPES" if="LIME_OPENALSOFT" />
<file name="src/media/openal/OpenALBindings.cpp" />
</section>
<section if="LIME_OPENGL">
<compilerflag value="-DLIME_OPENGL" />
<compilerflag value="-I${DEVELOPER_DIR}/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS${TVOS_VER}.sdk/" if="tvos" />
<file name="src/graphics/opengl/OpenGLBindings.cpp" />
</section>
<section if="LIME_PNG">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/png/" />
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/zlib/" />
<compilerflag value="-DLIME_PNG" />
<file name="src/graphics/format/PNG.cpp" />
</section>
<section if="LIME_SDL">
<section if="emscripten">
<compilerflag value="-s" />
<compilerflag value="USE_SDL=2" />
</section>
<section unless="emscripten">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/sdl/include/" />
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/sdl/include/configs/default/" unless="windows || mac || linux || rpi"/>
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/sdl/include/configs/linux/" if="linux" unless="rpi"/>
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/sdl/include/configs/windows/" if="windows"/>
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/sdl/include/configs/mac/" if="mac"/>
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/sdl/include/configs/rpi/" if="rpi"/>
<compilerflag value="-DHAVE_LIBC" />
</section>
<section if="rpi">
<compilerflag value="-I/opt/vc/include"/>
<compilerflag value="-I/opt/vc/include/interface/vcos/pthreads"/>
<compilerflag value="-I/opt/vc/include/interface/vmcs_host/linux"/>
<compilerflag value="-lbrcmGLESv2" />
<compilerflag value="-lbrcmEGL" />
<compilerflag value="-Wl,--no-undefined -lm -L/opt/vc/lib -lbcm_host -ldl -lpthread -lrt" />
</section>
<compilerflag value="-DLIME_SDL" />
<compilerflag value="-DNATIVE_TOOLKIT_SDL_ANGLE" if="NATIVE_TOOLKIT_SDL_ANGLE" />
<compilerflag value="-D__IPHONEOS__" if="ios || tvos" />
<compilerflag value="-D__APPLETVOS__" if="tvos" />
<compilerflag value="-DAPPLETV" if="tvos" />
<file name="src/backend/sdl/SDLApplication.cpp" />
<file name="src/backend/sdl/SDLGamepad.cpp" />
<file name="src/backend/sdl/SDLJoystick.cpp" />
<file name="src/backend/sdl/SDLKeyCode.cpp" />
<file name="src/backend/sdl/SDLMutex.cpp" />
<file name="src/backend/sdl/SDLSystem.cpp" />
<file name="src/backend/sdl/SDLWindow.cpp" />
</section>
<section if="LIME_TINYFILEDIALOGS">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/tinyfiledialogs/" />
<compilerflag value="-DLIME_TINYFILEDIALOGS" />
<file name="src/ui/FileDialog.cpp" />
</section>
<section if="LIME_VORBIS">
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/ogg/include/" />
<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/vorbis/include/" />
<compilerflag value="-DLIME_VORBIS" />
<file name="src/media/codecs/vorbis/VorbisBindings.cpp" />
<file name="src/media/codecs/vorbis/VorbisFile.cpp" />
</section>
<section if="LIME_ZLIB">
<compilerflag value="-DSTATIC_LINK" if="emscripten" />
<compilerflag value="-DLIME_ZLIB" />
<file name="${HXCPP}/project/libs/zlib/ZLib.cpp" if="emscripten || ios || static_link || tvos" />
<file name="src/utils/compress/Zlib.cpp" />
</section>
<file name="src/app/ApplicationEvent.cpp" />
<file name="src/graphics/utils/ImageDataUtil.cpp" />
<file name="src/graphics/Image.cpp" />
<file name="src/graphics/ImageBuffer.cpp" />
<file name="src/graphics/RenderEvent.cpp" />
<file name="src/math/ColorMatrix.cpp" />
<file name="src/math/Matrix3.cpp" />
<file name="src/math/Rectangle.cpp" />
<file name="src/math/Vector2.cpp" />
<file name="src/media/containers/WAV.cpp" />
<file name="src/media/AudioBuffer.cpp" />
<file name="src/system/CFFI.cpp" />
<file name="src/system/CFFIPointer.cpp" />
<file name="src/system/ClipboardEvent.cpp" />
<file name="src/system/DisplayMode.cpp" />
<file name="src/system/JNI.cpp" if="android" />
<file name="src/system/Locale.cpp" unless="mac || ios" />
<file name="src/system/Locale.mm" if="mac || ios" />
<file name="src/system/SensorEvent.cpp" />
<file name="src/system/System.cpp" unless="ios" />
<file name="src/system/System.mm" if="ios" />
<file name="src/system/ValuePointer.cpp" />
<file name="src/ui/DropEvent.cpp" />
<file name="src/ui/GamepadEvent.cpp" />
<file name="src/ui/Haptic.mm" if="ios" />
<file name="src/ui/JoystickEvent.cpp" />
<file name="src/ui/KeyEvent.cpp" />
<file name="src/ui/MouseEvent.cpp" />
<file name="src/ui/TextEvent.cpp" />
<file name="src/ui/TouchEvent.cpp" />
<file name="src/ui/WindowEvent.cpp" />
<file name="src/utils/ArrayBufferView.cpp" />
<file name="src/utils/Bytes.cpp" />
<file name="src/hx/CFFIExt.cpp" />
</files>
<include name="lib/cairo/files.xml" />
<include name="lib/curl/files.xml" />
<include name="lib/efsw/files.xml" />
<include name="lib/faudio/files.xml" if="LIME_FAUDIO" />
<include name="lib/freetype/files.xml" />
<include name="lib/harfbuzz/files.xml" />
<include name="lib/jpeg/files.xml" />
<include name="lib/lzma/files.xml" />
<include name="lib/mbedtls/files.xml" />
<include name="lib/mojoal/files.xml" />
<include name="lib/neko/files.xml" />
<include name="lib/ogg/files.xml" />
<include name="lib/openal/files.xml" />
<include name="lib/pixman/files.xml" />
<include name="lib/png/files.xml" />
<include name="lib/sdl/files.xml" />
<include name="lib/tinyfiledialogs/files.xml" />
<include name="lib/vorbis/files.xml" />
<include name="lib/vpx/files.xml" />
<include name="lib/webm/files.xml" />
<include name="lib/zlib/files.xml" />
<set name="DEBUGEXTRA" value="-debug" if="fulldebug" />
<set name="LIBSUFFIX" value="${HX_TARGET_SUFFIX}" if="HX_TARGET_SUFFIX" />
<set name="LIBSUFFIX" value="${LIBEXTRA}" unless="LIBSUFFIX" />
<target id="lime" output="${LIBPREFIX}lime${DEBUGEXTRA}${LIBSUFFIX}" tool="linker" toolid="${STD_MODULE_LINK}">
<outdir name="${OUTPUT_DIR}/${BINDIR}" />
<files id="lime" />
<files id="native-toolkit-cairo" if="LIME_CAIRO" />
<files id="native-toolkit-curl" if="LIME_CURL" />
<files id="native-toolkit-efsw" if="LIME_EFSW" />
<files id="native-toolkit-faudio" if="LIME_FAUDIO" />
<files id="native-toolkit-freetype" if="LIME_FREETYPE" />
<files id="native-toolkit-harfbuzz" if="LIME_HARFBUZZ" />
<files id="native-toolkit-jpeg" if="LIME_JPEG" />
<files id="native-toolkit-lzma" if="LIME_LZMA" />
<files id="native-toolkit-mbedtls" if="LIME_MBEDTLS" />
<files id="native-toolkit-mojoal" if="LIME_MOJOAL" />
<files id="native-toolkit-neko" if="LIME_NEKO" />
<files id="native-toolkit-ogg" if="LIME_OGG" />
<files id="native-toolkit-openal" if="LIME_OPENALSOFT" />
<files id="native-toolkit-pixman" if="LIME_PIXMAN" />
<files id="native-toolkit-png" if="LIME_PNG" />
<files id="native-toolkit-sdl" if="LIME_SDL" unless="emscripten" />
<files id="native-toolkit-tinyfiledialogs" if="LIME_TINYFILEDIALOGS" />
<files id="native-toolkit-vorbis" if="LIME_VORBIS" />
<files id="native-toolkit-vpx" if="LIME_VPX" />
<files id="native-toolkit-webm" if="LIME_WEBM" />
<files id="native-toolkit-zlib" if="LIME_ZLIB" />
<section unless="static_link">
<ext value=".so" />
<ext value=".ndll" if="windows || mac || linux" />
<section if="windows">
<lib name="gdi32.lib" />
<lib name="opengl32.lib" />
<lib name="user32.lib" />
<lib name="kernel32.lib" />
<lib name="advapi32.lib" />
<lib name="winmm.lib" />
<lib name="imm32.lib" />
<lib name="ole32.lib" />
<lib name="oleaut32.lib" />
<lib name="version.lib" />
<lib name="ws2_32.lib" />
<lib name="wldap32.lib" />
<lib name="shell32.lib" />
<lib name="comdlg32.lib" />
<lib name="usp10.lib" if="LIME_HARFBUZZ" />
<lib name="rpcrt4.lib" if="LIME_HARFBUZZ" />
<lib name="dwrite.lib" if="LIME_HARFBUZZ" />
<lib name="comsuppw.lib" unless="winrt" />
<lib name="D3D11.lib" if="winrt" />
<lib name="RuntimeObject.lib" if="winrt" />
<lib name="Xinput.lib" if="winrt" />
<lib name="DXGI.lib" if="winrt" />
<lib name="-libpath:${HLPATH}" if="LIME_HASHLINK" />
<lib name="libhl.lib" if="LIME_HASHLINK" />
<!-- <lib name="-delayload:libhl.dll" /> -->
</section>
<section if="linux">
<lib name="-lpthread" />
<lib name="-lrt" />
<lib name="-lgc" if="LIME_NEKO" />
<lib name="-lm" if="LIME_NEKO" />
<lib name="-L${HLPATH}" if="LIME_HASHLINK" />
<lib name="-lhl" if="LIME_HASHLINK" />
</section>
<section if="mac">
<vflag name="-l" value="iconv"/>
<vflag name="-framework" value="IOKit" />
<vflag name="-framework" value="Foundation" />
<vflag name="-framework" value="CoreAudio" />
<vflag name="-framework" value="CoreVideo" />
<vflag name="-framework" value="Cocoa" />
<vflag name="-framework" value="OpenGL" />
<vflag name="-framework" value="AudioToolbox" />
<vflag name="-framework" value="AudioUnit" />
<vflag name="-framework" value="ForceFeedback" />
<vflag name="-framework" value="Carbon" />
<vflag name="-framework" value="AppKit" />
<vflag name="-framework" value="OpenAL"/>
<lib name="/opt/local/lib/libgc.a" if="LIME_NEKO" />
<lib name="-lm" if="LIME_NEKO" />
<lib name="-L${HLPATH}" if="LIME_HASHLINK" />
<lib name="-lhl" if="LIME_HASHLINK" />
</section>
<section if="android">
<lib name="-L../ndll/Android" />
<lib name="-ldl" />
<lib name="-llog" />
<lib name="-landroid" />
<lib name="-lEGL" />
<lib name="-lGLESv2" />
<lib name="-lGLESv1_CM" />
<lib name="-lOpenSLES" />
</section>
<section if="rpi">
<lib name="-lbcm_host" />
<lib name="-ldl" />
<lib name="-lm" />
<lib name="-lbrcmGLESv2" />
<lib name="-lbrcmEGL" />
<lib name="-L/opt/vc/lib" />
</section>
<section if="tvos">
<vflag name="-framework" value="UIKit" />
<vflag name="-framework" value="Foundation" />
<vflag name="-framework" value="CoreAudio" />
<vflag name="-framework" value="CoreVideo" />
<vflag name="-framework" value="OpenGLES" />
<vflag name="-framework" value="AudioToolbox" />
<vflag name="-framework" value="AudioUnit" />
<vflag name="-framework" value="OpenAL"/>
<vflag name="-framework" value="GameController"/>
<lib name="-ldl" />
<lib name="-lEGL" />
<lib name="-lGLESv3" />
</section>
<section if="ios">
<vflag name="-framework" value="UIKit" />
<vflag name="-framework" value="Foundation" />
<vflag name="-framework" value="CoreAudio" />
<vflag name="-framework" value="CoreVideo" />
<vflag name="-framework" value="OpenGLES" />
<vflag name="-framework" value="AudioToolbox" />
<vflag name="-framework" value="AudioUnit" />
<vflag name="-framework" value="OpenAL"/>
<vflag name="-framework" value="CoreMotion"/>
<vflag name="-framework" value="CoreText"/>
<lib name="-ldl" />
<lib name="-lEGL" />
<lib name="-lGLESv3" />
</section>
</section>
</target>
<include name="../legacy/project/Build.xml" if="lime-legacy" />
<target id="default">
<target id="lime" unless="lime-legacy" />
<target id="lime-legacy" if="lime-legacy" />
</target>
</xml>