Bundle
Bundle contents
FullProf4Mac.app
Contents
MacOS
FullProf4Mac <-- a launcher (C binary)
myAlert <-- an alert dialogue (Cocoa binary)
Resources
FullProf4Mac.sh <-- a shell script performing various tests
[FullProf_suite] <-- folder of the Fortran binaries; most with a X11 based GUI
The folder FullProf_Suite
All its binaries must be signed and hardened prior being used by Xcode. Use a terminal command such as:
codesign -d --force --options runtime --verbose=4 -s "$DEV_CERTIFICATE" --entitlements "FullProf_Suite.entitlements" "$Binary"
The file "winteracter.entitlements" should only contain the following key:
<key>com.apple.security.cs.disable-library-validation </key>
<true>
This is needed because the X11 libraries and FullProf do not have the same Team ID. Otherwise Gatekeeper will complain in the Console:
Library Validation failed: Rejecting '/opt/X11/lib/libXt.6.dylib' (Team ID: NA574AWV7E, platform: no) for process 'xxxxxxxxxx(11592)' (Team ID: P65398CN49, platform: no), reason: mapping process and mapped file (non-platform) have different Team IDs
The Xcode project based on the build server files (2023)
This is the distributed version since January 2023. It contains more binaries than in the previous version.
It can be notarized by Xcode provided that the Eduroam network is used (the ILL proxy server blocks the process).
To setup such a project see page "Xcode project with auxiliary binaries",
Script FullProf4Mac.sh and X11
Amongst other tests, the script checks for the availability of a windowing system X11 on the computer. Three cases must be considered:
Xquartz v2.7.11 or lower --> https://www.xquartz.org
/Applications/Utilities/XQuartz.app with Bundle ID: org.macosforge.xquartz.X11
$ which Xquartz --> /opt/X11/bin/Xquartz
PATH=/opt/X11/bin:$PATH
*** version less than 2.8.0 not supported! ***
Xquartz v2.8.0 or higher --> https://www.xquartz.org
/Applications/Utilities/XQuartz.app with Bundle ID: org.xquartz.X11
$ which Xquartz --> /opt/X11/bin/Xquartz
PATH=/opt/X11/bin:$PATH
X11 macports --> https://ports.macports.org/port/xorg-server/
/Applications/MacPorts/X11.app with Bundle ID: org.xquartz.X11
$ which Xquartz --> /opt/local/bin/Xquartz
PATH=/opt/local/bin:$PATH
Binaries FullProf4Mac and myAlert
They must be signed and hardened either manually:
codesign -d --force --options runtime --verbose=4 -s "$DEV_CERTIFICATE" "$MYBINARY"
or using Xcode
In that case be sure to manually erase the field "Code Signing Entitlements" in Build Settings.
It may remained filled in even if you delete "Sandboxing" from the the Capabilities interface.

Xcode project migration
Transfering the project from an Intel MacBook to a M2 MacBook led to the following error :
process Product -> archive will fail with "Command SetOwnerAndGroup failed with a nonzero exit code" error message
Had the same issue and solved by deleting "derived data".
~/Library/Developer/Xcode/DerivedData
"Had the same issue and solved by deleting derived data." <https://forums.developer.apple.com/forums/thread/732720>
Navigate to Xcode > Settings....
Click on the Locations tab in the preferences dialog.
Locate Derived Data and click on the horizontal arrow (it's quite small) to open its location in Finder.
Close Xcode, delete the folder via Finder.
Reopen Xcode, rebuild everything.