BTDTGTTS ( Been There Done That Got The Tee Shirt )
At the beginning of March I made a post
>>>>>
>>>>> I built the APPLE ooRexx universal binaries and the test suite runs
>>>>> well down to El Capitan
>>>>> ( both the x86_64 and the apple silicon builds)>>>>>
>>>>> to run the multi arch, multi OS versions tests I used the drag and drop
>>>>> installer
Nobody was curios on how it was done so I had no incentive to follow on with
the implementation details
>>>>> One could put multiple copies of oorexx into the .dmg file, and then let
>>>>> the installer select the correct/best binary to install.
Why waste time when the system is perfectly capable of it
~/ooRexx/testsuite % uname -a
[enrico@enrico-macmini]
Darwin enrico-macmini.local 20.5.0 Darwin Kernel Version 20.5.0: Sat May 8
05:10:31 PDT 2021; root:xnu-7195.121.3~9/RELEASE_ARM64_T8101 arm64
Open Object Rexx Version 5.0.0 r12264
Build date: Jun 7 2021
Addressing mode: 64
Copyright (c) 1995, 2004 IBM Corporation. All rights reserved.
Copyright (c) 2005-2021 Rexx Language Association. All rights reserved.
This program and the accompanying materials are made available under the terms
of the Common Public License v1.0 which accompanies this distribution or at
https://www.oorexx.org/license.html <https://www.oorexx.org/license.html>
~/ooRexx/svn.src.build % which rexx
[enrico@enrico-macmini]
/opt/ooRexx/bin/rexx
~/ooRexx/svn.src.build % lipo -info /opt/ooRexx/bin/rexx
[enrico@enrico-macmini]
Architectures in the fat file: /opt/ooRexx/bin/rexx are: x86_64 arm64
~/ooRexx/svn.src.build %
[enrico@enrico-macmini]
~/ooRexx/testsuite % rexx testOORexx.rex -s -X native_API
ooTest Framework - Automated Test of the ooRexx Interpreter
Interpreter: REXX-ooRexx_5.0.0(MT)_64-bit 6.05 7 Jun 2021
OS Name: DARWIN
SysVersion: Darwin 20.5.0
Tests ran: 23293
Assertions: 385129
Failures: 0
Errors: 0
File search: 00:00:00.536408
Suite construction: 00:00:00.694814
Test execution: 00:04:31.740606
Total time: 00:04:33.461738
and here the same from a drag and drop install of the arm build on a x8664
machine
~/ooRexx/testSuite % uname -a
[enrico@enrico-mbp]
Darwin enrico-mbp 20.5.0 Darwin Kernel Version 20.5.0: Sat May 8 05:10:33 PDT
2021; root:xnu-7195.121.3~9/RELEASE_X86_64 x86_64
~/ooRexx/testSuite % lipo -info /applications/ooRexx5/bin/rexx
[enrico@enrico-mbp]
Architectures in the fat file: /applications/ooRexx5/bin/rexx are: x86_64 arm64
~/ooRexx/testSuite % rexx -v
[enrico@enrico-mbp]
Open Object Rexx Version 5.0.0 r12264
Build date: Jun 7 2021
Addressing mode: 64
Copyright (c) 1995, 2004 IBM Corporation. All rights reserved.
Copyright (c) 2005-2021 Rexx Language Association. All rights reserved.
This program and the accompanying materials are made available under the terms
of the Common Public License v1.0 which accompanies this distribution or at
https://www.oorexx.org/license.html
~/ooRexx/testSuite %
~/ooRexx/testSuite % rexx testOORexx.rex -s -X native_API
[enrico@enrico-mbp]
NOTE NOTE
the error is expected because the case sensitive/case insensitive filesystem
detection detection and handling is still broken
ooTest Framework - Automated Test of the ooRexx Interpreter
Interpreter: REXX-ooRexx_5.0.0(MT)_64-bit 6.05 7 Jun 2021
OS Name: DARWIN
SysVersion: Darwin 20.5.0
Tests ran: 23288
Assertions: 385289
Failures: 2
Errors: 0
[failure] 20210607 17:09:21.128157
svn: r12195 Change date: 2021-03-15 17:46:10 +0100
Test: TEST_SEARCHPATH1
Class: File.testGroup
File: .../ooRexx/testSuite/ooRexx/base/class/File.testGroup
Line: 674
Failed: assertEquals
Expected: /Applications/ooRexx5/bin/rexx
Actual: /applications/ooRexx5/bin/rexx
Message: this may fail if rexx is run directly from a build tree
[failure] 20210607 17:10:10.527207
svn: r12195 Change date: 2021-03-15 17:46:10 +0100
Test: TEST_SEARCHPATH_REXX
Class: SYSSEARCHPATH.TESTGROUP
File: .../ooRexx/testSuite/ooRexx/base/rexxutil/SysSearchPath.testGroup
Line: 122
Failed: assertSame
Expected: /Applications/ooRexx5/bin/rexx
Actual: /applications/ooRexx5/bin/rexx
Message: this may fail if rexx is run directly from a build tree
Interpreter: REXX-ooRexx_5.0.0(MT)_64-bit 6.05 7 Jun 2021
OS Name: DARWIN
SysVersion: Darwin 20.5.0
Tests ran: 23288
Assertions: 385289
Failures: 2
Errors: 0
File search: 00:00:01.421314
Suite construction: 00:00:01.240871
Test execution: 00:05:01.552165
Total time: 00:05:04.304650
the error was triggered by purpose
when adding the path I used /applications instead of /Application
I hope to have demonstrated that the universl build is possible and it works
so it would be wiser for the esteemed participant in forum to refrain from
wild guessing
and stick to verified facts
my best regards
Enrico Sorichetti
> On 7 Jun 2021, at 16:22, CV Bruce <[email protected]> wrote:
>
> The last time I looked at this, probably ppc/x86, it wasn’t possible because
> Rexx is invoked during the build. There are tools to combine single
> binaries into “universal” binaries, but what your are really asking is can
> OORexx be cross compiled for a non-native architecture. Even then there
> were, if I remember correctly, problems with the Rexx.img file.
> Bruce
>
> Sent by Magic!
>
>> On Jun 7, 2021, at 5:30 AM, Rony G. Flatscher <[email protected]>
>> wrote:
>>
>> As Apple has been selling new hardware with a proper processor, it would be
>> important to support
>> that hardware platform.
>>
>> In the past Apple allowed for "fat binaries" which included binaries for
>> different hardware
>> architectures in the same file. Would it be possible with CMake to have such
>> ooRexx "fat binaries"
>> created for the MacOS platform? If so, how would one be able to achieve that?
>>
>> ---rony
>>
>>
>>
>> _______________________________________________
>> Oorexx-devel mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/oorexx-devel
>
>
> _______________________________________________
> Oorexx-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/oorexx-devel
_______________________________________________
Oorexx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oorexx-devel