On 17.10.2021 18:51, P.O. Jonsson wrote:
>>>>
>>>> So running cmake with -DBUILD_OSX_UNIVERSAL_BINARIES=1 should already
>>>> allow to create
>>>> fat/universal versions.
>>>>
>>>> HTH,
>>>>
>>>> ---rony
>>>>
>>>>
>>> Will try it out, not sure what effect this will have on the naming of the
>>> dmg file. We will see.
>>
>> Please let us know.
>>
> So here goes:
>
> On a Mac Running High Sierra I get the error message (lots of them, until
> aborting)
>
> In file included from /usr/include/sys/signal.h:82:
> /usr/include/machine/signal.h:34:2: error: architecture not supported
> #error architecture not supported
> ^
>
> So it seems my Clang is not capable of building for the new architecture :-(
> here my Clang info
>
> POs-QuadCore-Mac-Pro:workspace po$ clang --version
> Apple LLVM version 10.0.0 (clang-1000.10.44.4)
> Target: x86_64-apple-darwin17.7.0
> Thread model: posix
> InstalledDir: /Library/Developer/CommandLineTools/usr/bin
>
> On the Jeninks build machine I have not applied the fix but I get other weird
> errors -> to be
> found out later
>
> Installing and running an arm64 ooRexx on High Sierra/Intel built on Marks
> M1 machine I get the
> error message that it is built for the wrong architecture, which is logical.
>
> Installing and running a „fat“ binary ooRexx High Sierra/Intel built on
> built on Marks M1 machine
> I get the following error message
>
> POs-QuadCore-Mac-Pro:~ po$ rexx
> dyld: Library not loaded: @rpath/librexx.4.dylib
> Referenced from: /Applications/ooRexx5/bin/rexx
> Reason: no suitable image found. Did find:
> /Applications/ooRexx5/bin/../lib/librexx.4.dylib: cannot load
> 'librexx.4.dylib' (load command
> 0x80000034 is unknown)
> /Applications/ooRexx5/bin/../lib/librexx.4.dylib: stat() failed with errno=1
> Abort trap: 6
>
> So there is still things to do. Any ideas welcome
Here the diff from Enricos (June) version that I have been using (he has more
changes in it, but I
think these are the ones relevant for building the fat/universal binary):
-if (APPLE)
-# apple build with lower cmake version have an @rpath problem
- cmake_minimum_required (VERSION ${CMAKE_VERSION} )
+if( APPLE )
+ # apple builds with lower cmake version have an @rpath problem
+ if( CMAKE_VERSION VERSION_LESS 3.12 )
+ message( FATAL_ERROR "
+ CMake '3.12' or higher is required, You are running version
'${CMAKE_VERSION}' " )
+ endif()
+ cmake_minimum_required (VERSION ${CMAKE_VERSION} )
else ()
-#for other platforms
- cmake_minimum_required (VERSION 2.8.12)
+ #for other platforms
+ cmake_minimum_required (VERSION 2.8.12)
+ cmake_policy(VERSION 2.8...3.3)
endif ()
-cmake_policy(VERSION 2.8...3.3)
#[[ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- must come before the project command 13.6 high Sierra the lowest system
supported
+ must come before the project command
+ extend compatibility to 10.13 high Sierra
#]]
if( APPLE AND BUILD_OSX_UNIVERSAL_BINARIES )
- set( CMAKE_OSX_DEPLOYMENT_TARGET 13.6 CACHE STRING "" FORCE)
+ set( CMAKE_OSX_DEPLOYMENT_TARGET 10.13 CACHE STRING "" FORCE)
endif()
+#- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+#
project (ooRexx)
-#[[ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-#]]
+
+#- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+#
if( APPLE AND BUILD_OSX_UNIVERSAL_BINARIES )
set( CMAKE_OSX_ARCHITECTURES arm64 x86_64 )
+ set( ORX_BUILD_MODE "${CMAKE_SYSTEM_PROCESSOR}.universal" )
+else()
+ set( ORX_BUILD_MODE "${CMAKE_SYSTEM_PROCESSOR}" )
endif()
Enrico's entire patch (which includes other things like updating bison) can be
found here:
<https://sourceforge.net/p/oorexx/patches/215/> with the diff text file here:
<https://sourceforge.net/p/oorexx/patches/215/attachment/diff_enrico_20210613.txt>.
---rony
_______________________________________________
Oorexx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oorexx-devel