Skip to content

Commit

Permalink
Merge branch '8.3.0-Dev' into 9.0.0-dev
Browse files Browse the repository at this point in the history
  • Loading branch information
player-03 committed Sep 23, 2024
2 parents ef7eef4 + f917cb0 commit c1de3ba
Show file tree
Hide file tree
Showing 63 changed files with 1,592 additions and 748 deletions.
17 changes: 16 additions & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,8 @@ jobs:
- name: Install Haxe dependencies
run: |
haxelib install hxcpp 4.2.1 --quiet
curl -LO https://github.com/HaxeFoundation/hxcpp/releases/download/v4.3.45/hxcpp-4.3.45.zip
haxelib install ./hxcpp-4.3.45.zip --quiet
haxelib install format --quiet
haxelib install hxp --quiet
Expand All @@ -137,6 +138,7 @@ jobs:
- name: Rebuild Lime (macOS)
run: |
lime rebuild macos -clean -release -64 -nocolor -verbose -nocffi
lime rebuild macos -clean -release -arm64 -nocolor -verbose -nocffi
lime rebuild hl -clean -release -nocolor -verbose -nocffi
- uses: actions/upload-artifact@v3
Expand All @@ -147,6 +149,14 @@ jobs:
!**/.gitignore
if-no-files-found: error

- uses: actions/upload-artifact@v3
with:
name: MacArm64-NDLL
path: |
ndll/MacArm64/
!**/.gitignore
if-no-files-found: error

- uses: actions/upload-artifact@v3
with:
name: Mac64-Hashlink
Expand Down Expand Up @@ -466,6 +476,11 @@ jobs:
name: Mac64-NDLL
path: ndll/Mac64/

- uses: actions/download-artifact@v3
with:
name: MacArm64-NDLL
path: ndll/MacArm64/

- uses: actions/download-artifact@v3
with:
name: Windows-NDLL
Expand Down
18 changes: 18 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,24 @@
Changelog
=========

8.1.3 (07/22/2024)
------------------

* Fixed Unicode conversion issues with various APIs, including as clipboard, window text, file dialogs, and fonts.
* Fixed Android builds with the `-emulator` flag that broke when using newer Android SDKs.
* Fixed "Could not link to neko" error message on macOS when lime.ndll is built with Xcode 15.
* Fixed system environment variables with the same name as common targets conflicting with other targets.
* Fixed `<echo/>` and `<log/>` output confusing Haxe's completion server. Now skipped when `display` is defined.
* Fixed `Clipboard.text` incorrectly getting cleared to null when targeting HTML5.
* Fixed integer value parsing in _project.xml_, including immediately reporting errors for invalid values.
* Fixed incorrect path discovery for NDLL files that found source directory instead.
* Fixed missing error message if HXP project class name does not match file name.
* Fixed unspecified behavior from `null` keys in `ObjectPool`.
* Fixed some issues when running Haxe built natively for Apple Silicon.
* Fixed missing cancellation of vibration on Android when app is paused or destroyed.
* Fixed static linking of native curl library on macOS.
* Fixed deprecation warnings in Android Gradle builds.

8.1.2 (03/13/2024)
------------------

Expand Down
3 changes: 3 additions & 0 deletions NOTICE.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,9 @@ This product bundles FileSaver.js 1.3.3, which is available under an
This product bundles pako 1.0.2, which is available under an
"MIT" license. For details, see [dependencies/pako.min.js](dependencies/pako.min.js).

This product bundles LZMA-JS 2.3.2, which is available under an
"MIT" license. For details, see [dependencies/lzma_worker-min.js](dependencies/lzma_worker-min.js).

This product bundles stats.js r16, which is available under an
"MIT" license. For details, see [dependencies/stats.min.js](dependencies/stats.min.js).

Expand Down
1 change: 1 addition & 0 deletions dependencies/extension-api/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ buildscript {
apply plugin: 'com.android.library'

android {
namespace 'org.haxe.extension'
compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION)
buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION

Expand Down
4 changes: 1 addition & 3 deletions dependencies/extension-api/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,4 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.haxe.extension" >

</manifest>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" />
2 changes: 2 additions & 0 deletions dependencies/lzma_worker-min.js

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions haxelib.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
"license": "MIT",
"tags": [],
"description": "A foundational Haxe framework for cross-platform development",
"version": "8.2.0",
"releasenote": "Update HashLink, iOS and Android build fixes, and ongoing improvements",
"version": "8.3.0",
"releasenote": "Various bug fixes",
"contributors": [
"singmajesty",
"bowlerhat",
Expand Down
5 changes: 3 additions & 2 deletions include.xml
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,8 @@
<dependency name="extension-api" path="dependencies/extension-api" if="android" />

<dependency path="dependencies/howler.min.js" if="html5 howlerjs" embed="true" />
<dependency path="dependencies/pako.min.js" if="html5" embed="true" web-worker="true" />
<dependency path="dependencies/pako.min.js" if="html5" embed="true" allow-web-workers="true" />
<dependency path="dependencies/lzma_worker-min.js" if="html5" embed="true" />
<dependency path="dependencies/FileSaver.min.js" if="html5" embed="true" />
<dependency path="dependencies/webgl-debug.js" if="html5 webgl-debug" embed="true" />
<dependency path="dependencies/stats.min.js" if="html5 stats" embed="true" />
Expand Down Expand Up @@ -218,4 +219,4 @@

</section>

</extension>
</extension>
Empty file added ndll/MacArm64/.gitignore
Empty file.
7 changes: 5 additions & 2 deletions project/lib/custom/jpeg/jconfig.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,9 @@
#define MEM_SRCDST_SUPPORTED 1

/* Use accelerated SIMD routines. */
#ifndef __ANDROID__
#define WITH_SIMD 1
#endif

/*
* Define BITS_IN_JSAMPLE as either
Expand Down Expand Up @@ -67,9 +69,10 @@
#endif

/* If rpcndr.h has defined boolean, jmorecfg.h should not. */
#ifdef __RPCNDR_H__
#define HAVE_BOOLEAN
#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */
typedef unsigned char boolean;
#endif
#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */

/* Define to empty if `const' does not conform to ANSI C. */
/* #undef const */
Expand Down
141 changes: 141 additions & 0 deletions project/lib/custom/openal/include/config-macos-arm64.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
/* API declaration export attribute */
#define AL_API __attribute__((visibility("default")))
#define ALC_API __attribute__((visibility("default")))

/* 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 C11 aligned_alloc function */
/* #undef HAVE_ALIGNED_ALLOC */

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

/* Define if we have the _aligned_malloc function */
/* #undef 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 */
#undef HAVE_SSE
#undef HAVE_SSE2
#undef HAVE_SSE3
/* #undef HAVE_SSE4_1 */

/* Define if we have ARM Neon CPU extensions */
#define 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 */
/* #undef HAVE_WASAPI */

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

/* Define if we have the Windows Multimedia backend */
/* #undef 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 */
#define 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 8

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

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

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

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

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

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

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

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

/* Define if we have guiddef.h */
/* #undef 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 */
/* #undef HAVE_CPUID_INTRINSIC */

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

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

/* Define if we have pthread_setschedparam() */
#define 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 */
6 changes: 5 additions & 1 deletion project/lib/custom/openal/include/config.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
#ifdef HX_MACOS
#if defined(HX_MACOS) && defined(HXCPP_ARM64)

#include "config-macos-arm64.h"

#elif defined(HX_MACOS)

#include "config-macos-x86_64.h"

Expand Down
4 changes: 2 additions & 2 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(HX_LINUX) && !defined(RASPBERRYPI))
#if defined(HX_WINDOWS) || (defined(HX_MACOS) && !defined(HXCPP_ARM64)) || (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(HX_LINUX) && !defined(RASPBERRYPI))
#if defined(HX_WINDOWS) || (defined(HX_MACOS) && !defined(HXCPP_ARM64)) || (defined(HX_LINUX) && !defined(RASPBERRYPI))
#define USE_SSE3 1
#else
/* #undef USE_SSE3 */
Expand Down
18 changes: 9 additions & 9 deletions project/lib/openal-files.xml
Original file line number Diff line number Diff line change
Expand Up @@ -57,10 +57,10 @@
<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" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/mixer/mixer_sse.cpp" unless="rpi || android" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/mixer/mixer_sse2.cpp" unless="rpi || android" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/mixer/mixer_sse3.cpp" unless="rpi || android" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/mixer/mixer_neon.cpp" if="rpi || HXCPP_ARM64" />
<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" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/panning.cpp" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/ringbuffer.cpp" />
<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/uhjfilter.cpp" />
Expand Down Expand Up @@ -112,11 +112,11 @@

<file name="${NATIVE_TOOLKIT_PATH}/openal/alc/backends/coreaudio.cpp" />

<compilerflag value="-mmmx" />
<compilerflag value="-msse" />
<compilerflag value="-msse2" />
<compilerflag value="-msse3" />
<compilerflag value="-mssse3" />
<compilerflag value="-mmmx" unless="HXCPP_ARM64" />
<compilerflag value="-msse" unless="HXCPP_ARM64" />
<compilerflag value="-msse2" unless="HXCPP_ARM64" />
<compilerflag value="-msse3" unless="HXCPP_ARM64" />
<compilerflag value="-mssse3" unless="HXCPP_ARM64" />

</section>

Expand Down
16 changes: 8 additions & 8 deletions project/lib/pixman-files.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,11 @@

<compilerflag value="-I${ANDROID_NDK_ROOT}/sources/android/cpufeatures" if="android" />

<compilerflag value="-mmmx" if="linux || mac" unless="rpi" />
<compilerflag value="-msse" if="linux || mac" unless="rpi" />
<compilerflag value="-msse2" if="linux || mac" unless="rpi" />
<compilerflag value="-msse3" if="linux || mac" unless="rpi" />
<compilerflag value="-mssse3" if="linux || mac" unless="rpi" />
<compilerflag value="-mmmx" if="linux || mac" unless="rpi || HXCPP_ARM64" />
<compilerflag value="-msse" if="linux || mac" unless="rpi || HXCPP_ARM64" />
<compilerflag value="-msse2" if="linux || mac" unless="rpi || HXCPP_ARM64" />
<compilerflag value="-msse3" if="linux || mac" unless="rpi || HXCPP_ARM64" />
<compilerflag value="-mssse3" if="linux || mac" unless="rpi || HXCPP_ARM64" />

<compilerflag value="-Wno-attributes" if="android" />
<compilerflag value="-Wno-tautological-constant-out-of-range-compare" if="mac || ios || tvos" />
Expand Down Expand Up @@ -57,15 +57,15 @@
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-linear-gradient.c" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-matrix.c" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-mips.c" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-mmx.c" if="windows || mac || linux" unless="rpi" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-mmx.c" if="windows || mac || linux" unless="rpi || HXCPP_ARM64" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-noop.c" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-ppc.c" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-radial-gradient.c" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-region16.c" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-region32.c" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-solid-fill.c" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-sse2.c" if="windows || mac || linux" unless="rpi" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-ssse3.c" if="windows || mac || linux" unless="rpi" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-sse2.c" if="windows || mac || linux" unless="rpi || HXCPP_ARM64" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-ssse3.c" if="windows || mac || linux" unless="rpi || HXCPP_ARM64" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-timer.c" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-trap.c" />
<file name="${NATIVE_TOOLKIT_PATH}/pixman/pixman/pixman-utils.c" />
Expand Down
Loading

0 comments on commit c1de3ba

Please sign in to comment.