Skip to content
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions project/Build.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,10 @@
<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="lime-openalsoft" />
<set name="LIME_OPENAL" value="1" if="lime-openal" />
<set name="LIME_MOJOAL" value="1" if="lime-mojoal" />
<set name="LIME_MOJOAL" value="1" if="switch || winrt || mojoal || static_link" />
<set name="LIME_OPENALSOFT" value="1" if="windows || linux || mac || android" unless="LIME_MOJOAL" />
<unset name="LIME_OPENALSOFT" if="LIME_MOJOAL" />
<set name="LIME_OPENAL" value="1" if="LIME_OPENALSOFT || LIME_MOJOAL || iphone || webassembly || tvos" />
<set name="LIME_OPENGL" value="1" />
<set name="LIME_PIXMAN" value="1" />
<set name="LIME_PNG" value="1" />
Expand Down
138 changes: 138 additions & 0 deletions project/lib/custom/openal/include/config-windows-arm64.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
/* API declaration export attribute */
#define AL_API __declspec(dllexport)
#define ALC_API __declspec(dllexport)

/* Define a restrict macro for non-aliased pointers */
#define RESTRICT __restrict

/* Define if HRTF data is embedded in the library */
#define ALSOFT_EMBED_HRTF_DATA

/* Define if we have the posix_memalign function */
/* #undef HAVE_POSIX_MEMALIGN */

/* Define if we have the _aligned_malloc function */
#define HAVE__ALIGNED_MALLOC

/* Define if we have the proc_pidpath function */
/* #undef HAVE_PROC_PIDPATH */

/* Define if we have the getopt function */
/* #undef HAVE_GETOPT */

/* Define if we have SSE CPU extensions */
/* #define HAVE_SSE */
/* #define HAVE_SSE2 */
/* #undef HAVE_SSE3 */
/* #undef HAVE_SSE4_1 */

/* Define if we have ARM Neon CPU extensions */
#undef HAVE_NEON

/* Define if we have the ALSA backend */
/* #undef HAVE_ALSA */

/* Define if we have the OSS backend */
/* #undef HAVE_OSS */

/* Define if we have the Solaris backend */
/* #undef HAVE_SOLARIS */

/* Define if we have the SndIO backend */
/* #undef HAVE_SNDIO */

/* Define if we have the QSA backend */
/* #undef HAVE_QSA */

/* Define if we have the WASAPI backend */
#define HAVE_WASAPI

/* Define if we have the DSound backend */
/* #undef HAVE_DSOUND */

/* Define if we have the Windows Multimedia backend */
#define HAVE_WINMM

/* Define if we have the PortAudio backend */
/* #undef HAVE_PORTAUDIO */

/* Define if we have the PulseAudio backend */
/* #undef HAVE_PULSEAUDIO */

/* Define if we have the JACK backend */
/* #undef HAVE_JACK */

/* Define if we have the CoreAudio backend */
/* #undef HAVE_COREAUDIO */

/* Define if we have the OpenSL backend */
/* #undef HAVE_OPENSL */

/* Define if we have the Wave Writer backend */
#define HAVE_WAVE

/* Define if we have the SDL2 backend */
/* #undef HAVE_SDL2 */

/* Define if we have the stat function */
#define HAVE_STAT

/* Define to the size of a long int type */
#define SIZEOF_LONG 4

/* Define if we have GCC's format attribute */
/* #undef HAVE_GCC_FORMAT */

/* Define if we have dlfcn.h */
/* #undef HAVE_DLFCN_H */

/* Define if we have pthread_np.h */
/* #undef HAVE_PTHREAD_NP_H */

/* Define if we have malloc.h */
#define HAVE_MALLOC_H

/* Define if we have dirent.h */
/* #undef HAVE_DIRENT_H */

/* Define if we have cpuid.h */
/* #undef HAVE_CPUID_H */

/* Define if we have intrin.h */
#define HAVE_INTRIN_H

/* Define if we have sys/sysconf.h */
/* #undef HAVE_SYS_SYSCONF_H */

/* Define if we have guiddef.h */
#define HAVE_GUIDDEF_H

/* Define if we have initguid.h */
/* #undef HAVE_INITGUID_H */

/* Define if we have GCC's __get_cpuid() */
/* #undef HAVE_GCC_GET_CPUID */

/* Define if we have the __cpuid() intrinsic */
#define HAVE_CPUID_INTRINSIC

/* Define if we have the _BitScanForward64() intrinsic */
/* #undef HAVE_BITSCANFORWARD64_INTRINSIC */

/* Define if we have the _BitScanForward() intrinsic */
#define HAVE_BITSCANFORWARD_INTRINSIC

/* Define if we have pthread_setschedparam() */
/* #undef HAVE_PTHREAD_SETSCHEDPARAM */

/* Define if we have pthread_setname_np() */
/* #undef HAVE_PTHREAD_SETNAME_NP */

/* Define if pthread_setname_np() only accepts one parameter */
/* #undef PTHREAD_SETNAME_NP_ONE_PARAM */

/* Define if pthread_setname_np() accepts three parameters */
/* #undef PTHREAD_SETNAME_NP_THREE_PARAMS */

/* Define if we have pthread_set_name_np() */
/* #undef HAVE_PTHREAD_SET_NAME_NP */
4 changes: 3 additions & 1 deletion project/lib/custom/openal/include/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@

#elif defined(HX_WINDOWS)

#ifdef HXCPP_M64
#ifdef HXCPP_ARM64
#include "config-windows-arm64.h"
#elif defined(HXCPP_M64)
#include "config-windows-x86_64.h"
#else
#include "config-windows-x86.h"
Expand Down
6 changes: 3 additions & 3 deletions project/lib/custom/pixman/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -293,14 +293,14 @@
/* #undef USE_OPENMP */

/* use SSE2 compiler intrinsics */
#if defined(HX_WINDOWS) || (defined(HX_MACOS) && !defined(HXCPP_ARM64)) || (defined(HX_LINUX) && !defined(RASPBERRYPI) && !defined(HXCPP_ARM64))
#if !defined(HXCPP_ARM64) && (defined(HX_WINDOWS) || defined(HX_MACOS) || (defined(HX_LINUX) && !defined(RASPBERRYPI)))
#define USE_SSE2 1
#else
/* #undef USE_SSE2 */
#endif

/* use SSSE3 compiler intrinsics */
#if defined(HX_WINDOWS) || (defined(HX_MACOS) && !defined(HXCPP_ARM64)) || (defined(HX_LINUX) && !defined(RASPBERRYPI) && !defined(HXCPP_ARM64))
#if !defined(HXCPP_ARM64) && (defined(HX_WINDOWS) || defined(HX_MACOS) || (defined(HX_LINUX) && !defined(RASPBERRYPI)))
#define USE_SSE3 1
#else
/* #undef USE_SSE3 */
Expand All @@ -310,7 +310,7 @@
/* #undef USE_VMX */

/* use x86 MMX compiler intrinsics */
#if (defined(HX_WINDOWS) || /*defined(HX_MACOS) ||*/ (defined(HX_LINUX) && !defined(RASPBERRYPI)) ) && !defined(HXCPP_M64)
#if !defined(HXCPP_ARM64) && !defined(HXCPP_M64) && (defined(HX_WINDOWS) || (defined(HX_LINUX) && !defined(RASPBERRYPI)))
#define USE_X86_MMX 1
#else
/* #undef USE_X86_MMX */
Expand Down
6 changes: 3 additions & 3 deletions project/lib/mojoal-files.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<xml>

<files id="native-toolkit-mojoal">

<files id="native-toolkit-mojoal" if="LIME_MOJOAL">
<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" />
Expand All @@ -14,7 +14,7 @@
<compilerflag value="-DAL_LIBTYPE_STATIC" if="native_toolkit_mojoal_static" />

<file name="${NATIVE_TOOLKIT_PATH}/mojoal/mojoal.c" />

</files>

</xml>
2 changes: 1 addition & 1 deletion project/lib/openal-files.xml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/hrtf.cpp" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/mastering.cpp" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/mixer/mixer_c.cpp" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/mixer/mixer_neon.cpp" if="rpi || HXCPP_ARM64" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/mixer/mixer_neon.cpp" if="rpi || HXCPP_ARM64" unless="windows" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/mixer/mixer_sse.cpp" unless="rpi || android || HXCPP_ARM64" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/mixer/mixer_sse2.cpp" unless="rpi || android || HXCPP_ARM64" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/mixer/mixer_sse3.cpp" unless="rpi || android || HXCPP_ARM64" />
Expand Down
1 change: 1 addition & 0 deletions project/lib/sdl_sound-files.xml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
<compilerflag value="-D__TVOS__" if="tvos" />

<compilerflag value="-I${NATIVE_TOOLKIT_PATH}/sdl_sound/src/" />
<compilerflag value="/Zp8" if="windows HXCPP_ARM64" />

<section if="winrt">

Expand Down
8 changes: 6 additions & 2 deletions tools/CommandLineTools.hx
Original file line number Diff line number Diff line change
Expand Up @@ -494,7 +494,11 @@ class CommandLineTools
}
catch (e:Dynamic)
{
untyped $loader.path = $array(path + "Windows64/", $loader.path);
if (System.hostArchitecture == ARM64) {
untyped $loader.path = $array(path + "WindowsArm64/", $loader.path);
} else {
untyped $loader.path = $array(path + "Windows64/", $loader.path);
}
}
}

Expand Down Expand Up @@ -1020,7 +1024,7 @@ class CommandLineTools
Log.println(" \x1b[3m(ios|android)\x1b[0m \x1b[1m-armv6\x1b[0m -- Compile for ARMv6 instead of the OS defaults");
Log.println(" \x1b[3m(ios|android)\x1b[0m \x1b[1m-armv7\x1b[0m -- Compile for ARMv7 instead of the OS defaults");
Log.println(" \x1b[3m(ios|android)\x1b[0m \x1b[1m-armv7s\x1b[0m -- Compile for ARMv7s instead of the OS defaults");
Log.println(" \x1b[3m(mac|ios|android)\x1b[0m \x1b[1m-arm64\x1b[0m -- Compile for ARM64 instead of the OS defaults");
Log.println(" \x1b[3m(mac|ios|android|windows)\x1b[0m \x1b[1m-arm64\x1b[0m -- Compile for ARM64 instead of the OS defaults");
Log.println(" \x1b[3m(ios)\x1b[0m \x1b[1m-nosign\x1b[0m -- Compile executable, but skip codesigning");
}

Expand Down
Loading