View Issue Details

IDProjectCategoryView StatusLast Update
0002928FreeCADFeaturepublic2017-03-01 09:54
Reporterblacey Assigned Towmayer  
PrioritylowSeveritytweakReproducibilityN/A
Status closedResolutionfixed 
PlatformAppleOSmacOSOS VersionSierra
Product Version0.17 
Target Version0.17 
Summary0002928: Re-factor macOS bundle to deprecate <bundle>/bin in favor of <bundle>/MacOS
DescriptionRecently it was discovered that the Qt framework expects the executable path to be launched from <bundle>/MacOS/ or it will not locate the qt.conf file. This is but one example where our non-standard use of <bin> within the bundle layout can cause problems. Another recent example is that @wmayer wrote a small wrapper around PySide2 installed in bin however on macOS, it must be installed in <bundle>/MacOS or it will not be loaded during application initialization.

Currently, MacOS and bin both exist in the bundle with symlinks between them. The scope of this PR is to move all executables, specifically FreeCAD, FreeCADCmd and PySide/* to MacOS, eliminate all the symlinks to bin and remove bin.

This will affect CMakeLists.txt, the bundle template under src/MacAppBundle and the src/Tools/MakeMacAppRelocatable.py script (need to update search paths accordingly).
TagsNo tags attached.
FreeCAD Information

Activities

blacey

2017-03-01 06:53

developer   ~0008481

PR 571 created to address this issue.

wmayer

2017-03-01 09:54

administrator   ~0008482

Fix committed to master branch.

Related Changesets

FreeCAD: master d9641875

2017-03-01 06:47:54

blacey


Committer: wmayer Details Diff
Install macOS bundle executables into MacOS

* Previously, the macOS bundle executables were installed into
bin which does not adhere to Apple guidelines and causes
issues with certain frameworks like Qt. The install has
been refactored to install the executables into MacOS

Fixes 0002928
Affected Issues
0002928
mod - CMakeLists.txt Diff File
rm - src/MacAppBundle/FreeCAD.app/Contents/MacOS/PySide Diff File
rm - src/MacAppBundle/FreeCAD.app/Contents/bin/FreeCAD Diff File
mod - src/Main/CMakeLists.txt Diff File
mod - src/Tools/MakeMacBundleRelocatable.py Diff File

Issue History

Date Modified Username Field Change
2017-02-26 15:24 blacey New Issue
2017-02-26 15:24 blacey Status new => assigned
2017-02-26 15:24 blacey Assigned To => blacey
2017-02-26 15:27 blacey Description Updated
2017-03-01 06:53 blacey Note Added: 0008481
2017-03-01 09:54 wmayer Changeset attached => FreeCAD master d9641875
2017-03-01 09:54 wmayer Note Added: 0008482
2017-03-01 09:54 wmayer Assigned To blacey => wmayer
2017-03-01 09:54 wmayer Status assigned => closed
2017-03-01 09:54 wmayer Resolution open => fixed