Browse Source

eabase: add more platforms (#7529)

* eabase: add more platforms

* Update xmake.lua

* fixup

---------

Co-authored-by: star9029 <[email protected]>
Saikari 2 months ago
parent
commit
e8b683ece4

+ 15 - 0
packages/e/eabase/patches/2.09.05/add-arm64-windows.patch

@@ -0,0 +1,15 @@
+diff --git a/include/Common/EABase/config/eaplatform.h b/include/Common/EABase/config/eaplatform.h
+index 17a99a2..3947e21 100644
+--- a/include/Common/EABase/config/eaplatform.h
++++ b/include/Common/EABase/config/eaplatform.h
+@@ -548,6 +548,10 @@
+ 		#define EA_PROCESSOR_ARM32 1
+ 		#define EA_SYSTEM_LITTLE_ENDIAN 1
+ 		#define EA_PLATFORM_DESCRIPTION "Windows on ARM"
++	#elif defined(_M_ARM64)
++		#define EA_PROCESSOR_ARM64 1
++		#define EA_SYSTEM_LITTLE_ENDIAN 1
++		#define EA_PLATFORM_DESCRIPTION "Windows on ARM64"
+ 	#else //Possibly other Windows CE variants
+ 		#error Unknown processor
+ 		#error Unknown endianness

+ 6 - 5
packages/e/eabase/xmake.lua

@@ -4,15 +4,16 @@ package("eabase")
     set_description("EABase is a small set of header files that define platform-independent data types and platform feature macros.")
     set_license("BSD-3-Clause")
 
-    add_urls("https://github.com/electronicarts/EABase/archive/$(version).tar.gz")
+    add_urls("https://github.com/electronicarts/EABase/archive/refs/tags/$(version).tar.gz",
+             "https://github.com/electronicarts/EABase.git")
+
     add_versions("2.09.05", "f85b98c96f1976aa013c8d6016c5e37a409633ac3fce843cd4ec0b89c67e6b7a")
+    add_patches("2.09.05", "patches/2.09.05/add-arm64-windows.patch", "c140e4587fdb1fc93b16df639da93aac5d331420b86f68363482be31f4bd2bfd")
 
-    on_install("windows", "linux", "macosx", function (package)
+    on_install("!wasm", function (package)
         os.cp("include/Common/EABase", package:installdir("include"))
     end)
 
-
     on_test(function (package)
-        assert(package:has_cxxfuncs("EA_LIMITS_DIGITS_U(int)",
-            {configs = {languages = "c++17"}, includes = "EABase/eabase.h"}))
+        assert(package:has_cxxfuncs("EA_LIMITS_DIGITS_U(int)", {configs = {languages = "c++17"}, includes = "EABase/eabase.h"}))
     end)