I wanted to split the macOS installer and have prepared 2 new jobs. I have 
disabled ooRexx-macOS12-build and created ooRexx-macOS12-X86_64-build and 
ooRexx-macOS12-ARM64-build. 

I have then replaced in those jobs

-DBUILD_OSX_UNIVERSAL_BINARIES=1

With (respectively)

-DBUILD_X86_64_BINARIES=1

-DBUILD_ARM64_BINARIES=1

But this is not sufficient, CMakeLists.txt will need to be changed. My proposal 
is:

Lines 61-63:

if( APPLE AND BUILD_OSX_UNIVERSAL_BINARIES )
  set( CMAKE_OSX_ARCHITECTURES arm64 x86_64 )
endif()

be changed to

if( APPLE AND BUILD_OSX_UNIVERSAL_BINARIES )
  set( CMAKE_OSX_ARCHITECTURES arm64 x86_64 )
endif()

if( APPLE AND BUILD_X86_64_BINARIES )
  set( CMAKE_OSX_ARCHITECTURES x86_64 )
endif()

if( APPLE AND BUILD_ARM64_BINARIES )
  set( CMAKE_OSX_ARCHITECTURES arm64 )
endif()

I assume we should keep the possibility to build fat binaries, hence 3 
different checks. Any objections or improvements?

Also I think the lines 53-57 in CMakeLists.txt need to be changed:

# must come before the project command
# 10.13.6 High Sierra is the minimum system supported
if( APPLE AND BUILD_OSX_UNIVERSAL_BINARIES )
  set( CMAKE_OSX_DEPLOYMENT_TARGET 10.13.6 CACHE STRING  "" FORCE)
endif()

Would this work?

# must come before the project command
# 10.13.6 High Sierra is the minimum system supported
if( APPLE )
  set( CMAKE_OSX_DEPLOYMENT_TARGET 10.13.6 CACHE STRING  "" FORCE)
endif()

The ooRexx test for macOS would then be attached to the X86_64 build job since 
we run the VMs on Intel hardware.

Finally we have to look if there is also a need to change the „Universal“ 
installer. I think Rony must look at this.

Hälsningar/Regards/Grüsse,
P.O. Jonsson
oor...@jonases.se




> Am 13.01.2024 um 20:52 schrieb Gilbert Barmwater <gi...@bellsouth.net>:
> 
> Feel free to ignore this as I am NOT a MacOS user.  I feel that having 2 
> packages is the more straightforward way to proceed rather than continuing 
> with the complexity of a universal package even though that may be "common" 
> on the MacOS platform.  My 2 cents, FWIW.
> 
> Gil
> 
> On 1/13/2024 2:12 PM, oorexx wrote:
>> The bitness (64 bit) and the endianness (little-endian) is the same, the 
>> architecture is the only difference. But I have no objection to split the 
>> macOS installer, all that is needed is to create two new jobs on Jenkins 
>> with the different settings.
>> 
>> Any objections?
>> 
>> Hälsningar/Regards/Grüsse,
>> P.O. Jonsson
>> oor...@jonases.se <mailto:oor...@jonases.se>
>> 
>> 
>> 
>> 
>>> Am 13.01.2024 um 19:56 schrieb Rony G. Flatscher <rony.flatsc...@wu.ac.at 
>>> <mailto:rony.flatsc...@wu.ac.at>>:
>>> 
>>> As rexx.img must be of the same architecture, bitness and endianness it is 
>>> not possible to use a single rexx.img for different architectures, 
>>> bitnesses and endiannesses.
>>> 
>>> The present packaging and installation of ooRexx can therefore not take 
>>> advantage of universal packages available on macOS (because of rexx.img) 
>>> such that we should start to stop producing the universal macOS version and 
>>> instead have two different macOS packages created, one for amd64 and one 
>>> for arm64.
>>> 
>>> ---
>>> 
>>> As rexx.img gets installed into and loaded from the lib directory as if it 
>>> was a native library, would it                   make sense to think of a 
>>> universal packaging format for rexx.img which would allow to create a form 
>>> of universal rexx.img? E.g. a table that indicates the available 
>>> architectures and positions in a rexx.img file such that ooRexx can pick 
>>> the appropriate version?
>>> 
>>> If so, then it would be probably be helpful to allow for universal user 
>>> compiled Rexx programs as well, as the same infrastructure could then be 
>>> put in place, if not mistaken.
>>> 
>>> What do you think would such an endeavor be worthwhile at all?
>>> 
>>> ---rony
>>> 
>>> 
>>> 
>>> 
>>> _______________________________________________
>>> Oorexx-devel mailing list
>>> Oorexx-devel@lists.sourceforge.net 
>>> <mailto:Oorexx-devel@lists.sourceforge.net>
>>> https://lists.sourceforge.net/lists/listinfo/oorexx-devel 
>>> <https://lists.sourceforge.net/lists/listinfo/oorexx-devel>
>> 
>> 
>> 
>> 
>> _______________________________________________
>> Oorexx-devel mailing list
>> Oorexx-devel@lists.sourceforge.net 
>> <mailto:Oorexx-devel@lists.sourceforge.net>
>> https://lists.sourceforge.net/lists/listinfo/oorexx-devel 
>> <https://lists.sourceforge.net/lists/listinfo/oorexx-devel>
> -- 
> Gil Barmwater
> _______________________________________________
> Oorexx-devel mailing list
> Oorexx-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/oorexx-devel

_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to