summaryrefslogtreecommitdiff
path: root/test/Makefile
diff options
context:
space:
mode:
authorAlbrecht Schlosser <albrechts.fltk@online.de>2021-05-13 16:16:50 +0200
committerAlbrecht Schlosser <albrechts.fltk@online.de>2021-05-13 16:18:13 +0200
commit773467dee4e79e0dfd97c5ee98fc253dead3302c (patch)
tree9ac93d67a1ed19257de461aa0089b4b521ed7c69 /test/Makefile
parent64296707d9e9b38dd9addf655f9b0943a4c54a54 (diff)
Refactor macOS bundle generation to avoid "quarantine"
macOS Big Sur 11.3 introduced a new "security feature" such that app bundles created from existing bundle templates in downloaded files (tar distibutions, expanded) could no longer be executed without unsetting the "quarantine" attribute. This commit fixes this by creating all bundles from scratch. Known *workaround* for older tarballs and snapshots: $ xattr -d -r com.apple.quarantine xxx.app
Diffstat (limited to 'test/Makefile')
-rw-r--r--test/Makefile57
1 files changed, 17 insertions, 40 deletions
diff --git a/test/Makefile b/test/Makefile
index b3f213119..e7f71af46 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -1,7 +1,7 @@
#
-# Test/example program makefile for the Fast Light Tool Kit (FLTK).
+# Test/example program Makefile for the Fast Light Tool Kit (FLTK).
#
-# Copyright 1998-2020 by Bill Spitzak and others.
+# Copyright 1998-2021 by Bill Spitzak and others.
#
# This library is free software. Distribution and use rights are outlined in
# the file "COPYING" which should have been included with this file. If this
@@ -208,35 +208,9 @@ depend: $(CPPFILES)
# Automatically generated dependencies...
include makedepend
-# Additional dependencies...
-cairo_test.o: ../FL/Fl_Bitmap.H
-cairo_test.o: ../FL/Fl_Box.H
-cairo_test.o: ../FL/Fl_Cairo_Window.H
-cairo_test.o: ../FL/Fl_Device.H
-cairo_test.o: ../FL/Fl_Double_Window.H
-cairo_test.o: ../FL/fl_draw.H
-cairo_test.o: ../FL/Fl_Graphics_Driver.H
-cairo_test.o: ../FL/Fl_Group.H
-cairo_test.o: ../FL/Fl.H
-cairo_test.o: ../FL/Fl_Image.H
-cairo_test.o: ../FL/Fl_Pixmap.H
-cairo_test.o: ../FL/Fl_Plugin.H
-cairo_test.o: ../FL/Fl_Preferences.H
-cairo_test.o: ../FL/Fl_RGB_Image.H
-cairo_test.o: ../FL/fl_utf8.h
-cairo_test.o: ../FL/Fl_Widget.H
-cairo_test.o: ../FL/Fl_Window.H
-cairo_test.o: ../FL/math.h
-cairo_test.o: ../FL/platform.H
-
clean:
$(RM) $(ALL) $(GLALL) core
- for file in $(ALL) $(GLALL); do \
- if [ $$file = "blocks" -o $$file = "checkers" -o $$file = "sudoku" ]; then \
- continue; \
- fi; \
- $(OSX_ONLY) rm -f -r $$file.app; \
- done
+ $(RMDIR) *.app
$(RM) *.o core.* *~ *.bck *.bak
$(RM) CubeViewUI.cxx CubeViewUI.h
$(RM) checkers_pieces.cxx checkers_pieces.h
@@ -250,9 +224,6 @@ clean:
$(RM) tabs.cxx tabs.h
$(RM) tree.cxx tree.h
$(RM) valuators.cxx valuators.h
- $(OSX_ONLY) $(RM) blocks.app/Contents/MacOS/blocks$(EXEEXT)
- $(OSX_ONLY) $(RM) checkers.app/Contents/MacOS/checkers$(EXEEXT)
- $(OSX_ONLY) $(RM) sudoku.app/Contents/MacOS/sudoku$(EXEEXT)
install: all
echo "Installing example programs to $(DESTDIR)$(docdir)/examples..."
@@ -288,7 +259,6 @@ install-osx:
$(INSTALL_DIR) $(DESTDIR)/Applications/$$game.app/Contents/Resources; \
fi; \
$(INSTALL_DATA) $$game.app/Contents/Info.plist $(DESTDIR)/Applications/$$game.app/Contents; \
- $(INSTALL_DATA) $$game.app/Contents/PkgInfo $(DESTDIR)/Applications/$$game.app/Contents; \
$(INSTALL_BIN) $$game.app/Contents/MacOS/$$game $(DESTDIR)/Applications/$$game.app/Contents/MacOS; \
$(INSTALL_DATA) $$game.app/Contents/Resources/$$game.icns $(DESTDIR)/Applications/$$game.app/Contents/Resources; \
done
@@ -348,16 +318,21 @@ buttons$(EXEEXT): buttons.o
blocks$(EXEEXT): blocks.o
echo Linking $@...
$(CXX) $(ARCHFLAGS) $(CXXFLAGS) $(LDFLAGS) blocks.o -o $@ $(AUDIOLIBS) $(LINKFLTK) $(LDLIBS)
- $(OSX_ONLY) $(RM) -f -r blocks.app/Contents/MacOS
- $(OSX_ONLY) mkdir blocks.app/Contents/MacOS
+ $(OSX_ONLY) $(RM) -f -r blocks.app
+ $(OSX_ONLY) mkdir -p blocks.app/Contents/MacOS blocks.app/Contents/Resources
$(OSX_ONLY) $(INSTALL_BIN) blocks$(EXEEXT) blocks.app/Contents/MacOS
+ $(OSX_ONLY) $(INSTALL_BIN) mac-resources/blocks.icns blocks.app/Contents/Resources/
+ $(OSX_ONLY) $(INSTALL_BIN) mac-resources/blocks.plist blocks.app/Contents/Info.plist
checkers$(EXEEXT): checkers.o checkers_pieces.o
echo Linking $@...
$(CXX) $(ARCHFLAGS) $(CXXFLAGS) $(LDFLAGS) checkers.o checkers_pieces.o -o $@ $(LINKFLTKIMG) $(LDLIBS)
- $(OSX_ONLY) $(RM) -f -r checkers.app/Contents/MacOS
- $(OSX_ONLY) mkdir checkers.app/Contents/MacOS
+ $(OSX_ONLY) $(RM) -f -r checkers.app
+ $(OSX_ONLY) mkdir -p checkers.app/Contents/MacOS checkers.app/Contents/Resources
$(OSX_ONLY) $(INSTALL_BIN) checkers$(EXEEXT) checkers.app/Contents/MacOS
+ $(OSX_ONLY) $(INSTALL_BIN) mac-resources/checkers.icns checkers.app/Contents/Resources/
+ $(OSX_ONLY) $(INSTALL_BIN) mac-resources/checkers.plist checkers.app/Contents/Info.plist
+
checkers.cxx: checkers_pieces.h
checkers_pieces.o: checkers_pieces.h
checkers_pieces.h: checkers_pieces.fl
@@ -396,7 +371,7 @@ editor$(EXEEXT): editor.o
echo Linking $@...
$(CXX) $(ARCHFLAGS) $(CXXFLAGS) $(LDFLAGS) editor.o -o $@ $(LINKFLTKIMG) $(LDLIBS)
$(OSX_ONLY) ../fltk-config --post $@
- $(OSX_ONLY) cp -f editor-Info.plist editor.app/Contents/Info.plist
+ $(OSX_ONLY) cp -f mac-resources/editor.plist editor.app/Contents/Info.plist
fast_slow$(EXEEXT): fast_slow.o
fast_slow.cxx: fast_slow.fl ../fluid/fluid$(EXEEXT)
@@ -548,9 +523,11 @@ subwindow$(EXEEXT): subwindow.o
sudoku: sudoku.o
echo Linking $@...
$(CXX) $(ARCHFLAGS) $(CXXFLAGS) $(LDFLAGS) sudoku.o -o $@ $(AUDIOLIBS) $(LINKFLTKIMG) $(LDLIBS)
- $(OSX_ONLY) $(RM) -r -f sudoku.app/Contents/MacOS
- $(OSX_ONLY) mkdir sudoku.app/Contents/MacOS
+ $(OSX_ONLY) $(RM) -f -r sudoku.app
+ $(OSX_ONLY) mkdir -p sudoku.app/Contents/MacOS sudoku.app/Contents/Resources
$(OSX_ONLY) $(INSTALL_BIN) sudoku$(EXEEXT) sudoku.app/Contents/MacOS
+ $(OSX_ONLY) $(INSTALL_BIN) mac-resources/sudoku.icns sudoku.app/Contents/Resources/
+ $(OSX_ONLY) $(INSTALL_BIN) mac-resources/sudoku.plist sudoku.app/Contents/Info.plist
sudoku.exe: sudoku.o sudoku.rc
echo Linking $@...