#19673 closed enhancement (fixed)
Makefile for OSX app
Reported by: | vbraun | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-6.10 |
Component: | build | Keywords: | |
Cc: | fbissey | Merged in: | |
Authors: | Volker Braun, Ivan Andrus | Reviewers: | Volker Braun, Ivan Andrus |
Report Upstream: | N/A | Work issues: | |
Branch: | 99c31b7 (Commits, GitHub, GitLab) | Commit: | |
Dependencies: | Stopgaps: |
Description (last modified by )
Move the OSX app.dmg build to src/mac-app/Makefile
This is a further step to saner binary creation. The makefile is already used in the binary builds, this ticket just documents that fact.
Change History (19)
comment:1 Changed 7 years ago by
- Component changed from PLEASE CHANGE to build
- Description modified (diff)
- Type changed from PLEASE CHANGE to enhancement
comment:2 Changed 7 years ago by
- Branch set to u/vbraun/makefile_for_osx_app
comment:3 Changed 7 years ago by
- Cc fbissey added
- Commit set to c9233d2a916b30877c009841b54fb22204395a8b
- Status changed from new to needs_review
comment:4 Changed 7 years ago by
- Status changed from needs_review to needs_work
Shouldn't the "branch inside sage-bdist" be changed to call this new Makefile
instead?
comment:5 follow-up: ↓ 8 Changed 7 years ago by
- Status changed from needs_work to needs_review
sage-bdist will be deleted when the transition to the new binary packging is done, so no need to beautify it. It still would be nice to use the new mac app Makefile during the transition.
comment:6 Changed 7 years ago by
- Description modified (diff)
comment:7 Changed 7 years ago by
Still needs review...
comment:8 in reply to: ↑ 5 Changed 7 years ago by
Replying to vbraun:
sage-bdist will be deleted when the transition to the new binary packging is done
Let me know when this happens.
comment:9 Changed 7 years ago by
The new binary packaging is done, all OSX binaries use the Makefile that is introduced here.
comment:10 Changed 6 years ago by
- Branch changed from u/vbraun/makefile_for_osx_app to u/iandrus/makefile_for_osx_app
- Commit changed from c9233d2a916b30877c009841b54fb22204395a8b to db0c354f9f8d4cfb7e16f35d662dffa24cd05856
I made a few small improvements and fixed two bugs. I also took the liberty of rebasing onto the latest develop. The two bugs fixed were that rebuilding the app portion would cause Sage.app to be copied inside the already existant Sage-VERSION.app. The other was that rsync would rerun every time even though there was nothing to be copied.
Also, the rsync command copies the .git folder. This doesn't seem desirable to me, but perhaps it was intended, so I put it as the last commit. Thus if you want to push all but that commit you can.
New commits:
c066daf | Makefile for building the mac app
|
2a18cf5 | Improve the Mac app Makefile
|
105edb2 | Prevent copying Sage.app inside the versioned app
|
db0c354 | Exclude .git/ from Mac app
|
comment:11 Changed 6 years ago by
I tried it out on Mac OS X 10.11.3 and it works like a charm.
The Makefile has (almost) not a single comment in it and at least I would find it helpful if it had comments about
- what it is basically for: it is producing a dmg containing the Sage App, to be called directly with make and after sage itself has already been build with make at the root
- the relocability of the resulting App (as far as I understand, the path where we compiled sage needs to be longer than the relocation target?)
- whether the binaries compiled previously by calling make at the root are suitable for distribution to older processors which might not have all the capabilities of the host machine
- maybe a line explaining the $(APP) target
comment:12 Changed 6 years ago by
I mostly agree with this. It's a Makefile
which is basically hidden in src/mac-app
with no clear interface. And the relation between sage-bdist
and this Makefile
should be made more clear.
comment:13 Changed 6 years ago by
- Branch changed from u/iandrus/makefile_for_osx_app to u/vbraun/makefile_for_osx_app
comment:14 Changed 6 years ago by
- Commit changed from db0c354f9f8d4cfb7e16f35d662dffa24cd05856 to 99c31b7aa4ecfc79cf5585ecc36bebf34399676b
comment:15 Changed 6 years ago by
- Reviewers set to Volker Braun, Ivan Andrus
comment:16 Changed 6 years ago by
- Status changed from needs_review to positive_review
comment:17 Changed 6 years ago by
- Branch changed from u/vbraun/makefile_for_osx_app to 99c31b7aa4ecfc79cf5585ecc36bebf34399676b
- Resolution set to fixed
- Status changed from positive_review to closed
comment:18 follow-up: ↓ 19 Changed 6 years ago by
- Commit 99c31b7aa4ecfc79cf5585ecc36bebf34399676b deleted
I guess we should remove the following line from https://github.com/sagemath/binary-pkg/blob/master/sage.yaml now:
cp ../../sage-osx-makefile {path}/src/mac-app/Makefile
comment:19 in reply to: ↑ 18 Changed 5 years ago by
I guess we should remove the following line from https://github.com/sagemath/binary-pkg/blob/master/sage.yaml now:
cp ../../sage-osx-makefile {path}/src/mac-app/Makefile
For full reference ... that was done at this commit.
New commits:
Makefile for building the mac app