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 Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel