diff options
-rw-r--r-- | abstractions/Makefile | 2 | ||||
-rwxr-xr-x | abstractions/Makefile.buildlayout | 26 | ||||
-rw-r--r-- | doc/Makefile.buildlayout | 26 | ||||
-rw-r--r-- | externals/Makefile.buildlayout | 26 | ||||
-rw-r--r-- | packages/Makefile | 40 | ||||
-rw-r--r-- | packages/Makefile.buildlayout | 26 | ||||
-rw-r--r-- | packages/TODO | 30 | ||||
-rw-r--r-- | packages/darwin_app/Makefile | 31 | ||||
-rw-r--r-- | packages/darwin_app/TODO | 2 | ||||
-rw-r--r-- | packages/darwin_app/org.puredata.pd.plist | 8 |
10 files changed, 154 insertions, 63 deletions
diff --git a/abstractions/Makefile b/abstractions/Makefile index fb696f15..3c5e2cc5 100644 --- a/abstractions/Makefile +++ b/abstractions/Makefile @@ -190,7 +190,6 @@ objects_pddp: install -p $(shell ls -1 $(ABSTRACTIONS_SRC)/pddp/*.pd | \
grep -v '\-help.pd') $(OBJECTS_DEST)/$(PDDP_NAME)
$(SCRIPTS_SRC)/generate-libdir-metafile.sh $(OBJECTS_DEST) $(PDDP_NAME) \
- --author "Hans-Christoph Steiner" \
--license "GNU GPL" \
--description "support objects for the Pure Data Documentation Project"
install -d $(HELP_DEST)/$(PDDP_NAME)
@@ -199,6 +198,7 @@ objects_pddp: # install -d $(MANUALS_DEST)/$(PDDP_NAME)
# install -d $(APPLICATIONS_DEST)/$(PDDP_NAME)
+
#-------------------------------------------------------------------------------
# RRADical
RRADICAL_NAME = rradical
diff --git a/abstractions/Makefile.buildlayout b/abstractions/Makefile.buildlayout index d5b9e9f3..c42f20c3 100755 --- a/abstractions/Makefile.buildlayout +++ b/abstractions/Makefile.buildlayout @@ -56,7 +56,6 @@ else endif endif - #==============================================================================# # # DIRECTORY STRUCTURE @@ -115,6 +114,31 @@ $(OBJECTS_DEST): $(INSTALL_PREFIX) #==============================================================================# # +# PD VERSION AND PACKAGE NAMING +# +#==============================================================================# + + +PD_MAJOR_VERSION := $(shell grep 'Pd version' $(PD_SRC)/src/s_main.c | \ + sed 's/char pd_version\[\] = "Pd version \([0-9]\)\.[0-9]*[. TES-]*[0-9]*[0-9extndRC.-]*\\n";/\1/') +PD_MINOR_VERSION := $(shell grep 'Pd version' $(PD_SRC)/src/s_main.c | \ + sed 's/char pd_version\[\] = "Pd version [0-9]\.\([0-9]*\)[. TES-]*\([0-9]*\)[0-9extndRC.-]*\\n";/\1/') +PD_BUGFIX_VERSION := $(shell grep 'Pd version' $(PD_SRC)/src/s_main.c | \ + sed 's/char pd_version\[\] = "Pd version [0-9]\.[0-9]*[. TES-]*\([0-9]*\)[0-9extndRC.-]*\\n";/\1/') +# the separators [.-] need to be the same as in s_main.c or the regexps break +PD_VERSION = $(PD_MAJOR_VERSION).$(PD_MINOR_VERSION).$(PD_BUGFIX_VERSION) + + +# release version for this distro +PACKAGE_VERSION = extended-RC3 +PACKAGE_NAME = Pd-$(PD_VERSION)-$(PACKAGE_VERSION) +DMG_NAME = $(PACKAGE_NAME) + + + + +#==============================================================================# +# # CLEAN TARGETS # #==============================================================================# diff --git a/doc/Makefile.buildlayout b/doc/Makefile.buildlayout index d5b9e9f3..c42f20c3 100644 --- a/doc/Makefile.buildlayout +++ b/doc/Makefile.buildlayout @@ -56,7 +56,6 @@ else endif endif - #==============================================================================# # # DIRECTORY STRUCTURE @@ -115,6 +114,31 @@ $(OBJECTS_DEST): $(INSTALL_PREFIX) #==============================================================================# # +# PD VERSION AND PACKAGE NAMING +# +#==============================================================================# + + +PD_MAJOR_VERSION := $(shell grep 'Pd version' $(PD_SRC)/src/s_main.c | \ + sed 's/char pd_version\[\] = "Pd version \([0-9]\)\.[0-9]*[. TES-]*[0-9]*[0-9extndRC.-]*\\n";/\1/') +PD_MINOR_VERSION := $(shell grep 'Pd version' $(PD_SRC)/src/s_main.c | \ + sed 's/char pd_version\[\] = "Pd version [0-9]\.\([0-9]*\)[. TES-]*\([0-9]*\)[0-9extndRC.-]*\\n";/\1/') +PD_BUGFIX_VERSION := $(shell grep 'Pd version' $(PD_SRC)/src/s_main.c | \ + sed 's/char pd_version\[\] = "Pd version [0-9]\.[0-9]*[. TES-]*\([0-9]*\)[0-9extndRC.-]*\\n";/\1/') +# the separators [.-] need to be the same as in s_main.c or the regexps break +PD_VERSION = $(PD_MAJOR_VERSION).$(PD_MINOR_VERSION).$(PD_BUGFIX_VERSION) + + +# release version for this distro +PACKAGE_VERSION = extended-RC3 +PACKAGE_NAME = Pd-$(PD_VERSION)-$(PACKAGE_VERSION) +DMG_NAME = $(PACKAGE_NAME) + + + + +#==============================================================================# +# # CLEAN TARGETS # #==============================================================================# diff --git a/externals/Makefile.buildlayout b/externals/Makefile.buildlayout index d5b9e9f3..c42f20c3 100644 --- a/externals/Makefile.buildlayout +++ b/externals/Makefile.buildlayout @@ -56,7 +56,6 @@ else endif endif - #==============================================================================# # # DIRECTORY STRUCTURE @@ -115,6 +114,31 @@ $(OBJECTS_DEST): $(INSTALL_PREFIX) #==============================================================================# # +# PD VERSION AND PACKAGE NAMING +# +#==============================================================================# + + +PD_MAJOR_VERSION := $(shell grep 'Pd version' $(PD_SRC)/src/s_main.c | \ + sed 's/char pd_version\[\] = "Pd version \([0-9]\)\.[0-9]*[. TES-]*[0-9]*[0-9extndRC.-]*\\n";/\1/') +PD_MINOR_VERSION := $(shell grep 'Pd version' $(PD_SRC)/src/s_main.c | \ + sed 's/char pd_version\[\] = "Pd version [0-9]\.\([0-9]*\)[. TES-]*\([0-9]*\)[0-9extndRC.-]*\\n";/\1/') +PD_BUGFIX_VERSION := $(shell grep 'Pd version' $(PD_SRC)/src/s_main.c | \ + sed 's/char pd_version\[\] = "Pd version [0-9]\.[0-9]*[. TES-]*\([0-9]*\)[0-9extndRC.-]*\\n";/\1/') +# the separators [.-] need to be the same as in s_main.c or the regexps break +PD_VERSION = $(PD_MAJOR_VERSION).$(PD_MINOR_VERSION).$(PD_BUGFIX_VERSION) + + +# release version for this distro +PACKAGE_VERSION = extended-RC3 +PACKAGE_NAME = Pd-$(PD_VERSION)-$(PACKAGE_VERSION) +DMG_NAME = $(PACKAGE_NAME) + + + + +#==============================================================================# +# # CLEAN TARGETS # #==============================================================================# diff --git a/packages/Makefile b/packages/Makefile index c7d98d24..3cd3df05 100644 --- a/packages/Makefile +++ b/packages/Makefile @@ -28,21 +28,6 @@ include $(BUILDLAYOUT_DIR)/Makefile.buildlayout #==============================================================================# -PD_MAJOR_VERSION := $(shell /usr/bin/grep 'Pd version' $(PD_SRC)/src/s_main.c | \ - sed 's/char pd_version\[\] = "Pd version \([0-9]\)\.[0-9]*[. TES]*[0-9]*[0-9extndRC.-]*\\n";/\1/') -PD_MINOR_VERSION := $(shell /usr/bin/grep 'Pd version' $(PD_SRC)/src/s_main.c | \ - sed 's/char pd_version\[\] = "Pd version [0-9]\.\([0-9]*\)[. TES]*\([0-9]*\)[0-9extndRC.-]*\\n";/\1/') -PD_BUGFIX_VERSION := $(shell /usr/bin/grep 'Pd version' $(PD_SRC)/src/s_main.c | \ - sed 's/char pd_version\[\] = "Pd version [0-9]\.[0-9]*[. TES]*\([0-9]*\)[0-9extndRC.-]*\\n";/\1/') -PD_VERSION = $(PD_MAJOR_VERSION).$(PD_MINOR_VERSION)-$(PD_BUGFIX_VERSION) - - -# release version for this distro -PACKAGE_VERSION = extended-RC3 -PACKAGE_NAME = Pd-$(PD_VERSION)-$(PACKAGE_VERSION) -DMG_NAME = $(PACKAGE_NAME) - - CYCLONE_MAJOR_VERSION := $(shell grep CYCLONE_VERSION \ $(EXTERNALS_SRC)/miXed/cyclone/build_counter | cut -d ' ' -f 3 | \ cut -d '"' -f 2) @@ -231,9 +216,12 @@ gem_install: #------------------------------------------------------------------------------ # pd +PD_NAME=Pd pd_install: pd cd $(PD_SRC)/src && \ make $(PD_DEST_PATHS) $(PD_EXTRA_FLAGS) install + install -d $(MANUALS_DEST)/$(PD_NAME) + install -p $(PD_SRC)/src/notes.txt $(MANUALS_DEST)/$(PD_DEST) #------------------------------------------------------------------------------ @@ -251,20 +239,22 @@ install: pd_install abstractions_install doc_install externals_install # #==============================================================================# -LICENSE_FILE = $(INSTALL_PREFIX)/License.html +LICENSE_FILE = $(MANUALS_DEST)/$(PD_NAME)/License.html license_install: # generate HTML version of License touch $(LICENSE_FILE) echo "<html><body>" >> "$(LICENSE_FILE)" - echo "<h3>(Parts of this package can be used under the Pd/BSD license)</h3>" >> "$(LICENSE_FILE)" + echo "<h3>(Parts of this package can be used under " >> "$(LICENSE_FILE)" + echo "<a href="PD%20LICENSE.txt">Pd"s BSD license</a>)</h3>" >> "$(LICENSE_FILE)" echo "<font size=\"-1\">" >> "$(LICENSE_FILE)" cat "$(EXTERNALS_SRC)/creb/COPYING" | sed -e 's/^$$/\<P\>/g' >> "$(LICENSE_FILE)" echo "</font></body></html>" >> $(LICENSE_FILE) - install -p "$(PD_SRC)/LICENSE.txt" "$(INSTALL_PREFIX)/PD LICENSE.txt" +# Pd's license file + install -p "$(PD_SRC)/LICENSE.txt" "$(MANUALS_DEST)/$(PD_NAME)/PD LICENSE.txt" -WELCOME_FILE = $(INSTALL_PREFIX)/Welcome.html +WELCOME_FILE = $(MANUALS_DEST)/$(PD_NAME)/Welcome.html welcome_install: touch $(WELCOME_FILE) echo "<html><body><p><p>" >> $(WELCOME_FILE) @@ -278,7 +268,7 @@ welcome_install: -README_FILE = $(INSTALL_PREFIX)/ReadMe.html +README_FILE = $(MANUALS_DEST)/$(PD_NAME)/ReadMe.html readme_install: echo $(CYCLONE_RELEASE) -rm $(README_FILE) @@ -368,6 +358,7 @@ devsymlinks: patch_pd: + @echo PD_SRC $(PD_SRC) # change Pd's version number to reflect the extended build sed -i.bak 's/\(pd_version\[\] = "Pd version \)[0-9extndRC.-]*/\1$(PD_VERSION)-$(PACKAGE_VERSION)/' $(PD_SRC)/src/s_main.c # apply all platform-neutral patches @@ -384,11 +375,12 @@ patch_pd: @echo " " @echo "patching succeeded!" + unpatch_pd: -# this sed pattern won't work with TEST versions - cd $(PD_SRC)/src && \ - sed -i.bak 's/\(pd_version\[\] = "Pd version [0-9.]*\)[0-9extndRC.-]*/\1/' \ - s_main.c +# this sed pattern won't work with TEST versions. + sed -i.bak \ + 's/\(pd_version\[\] = "Pd version [0-9]\.[0-9]*[.-][0-9]*\)[0-9extndRC.-]*/\1/' \ + $(PD_SRC)/src/s_main.c # apply all platform-neutral patches for patch in $(wildcard $(CWD)/patches/*.patch); do \ echo "Applying $$patch"; \ diff --git a/packages/Makefile.buildlayout b/packages/Makefile.buildlayout index d5b9e9f3..c42f20c3 100644 --- a/packages/Makefile.buildlayout +++ b/packages/Makefile.buildlayout @@ -56,7 +56,6 @@ else endif endif - #==============================================================================# # # DIRECTORY STRUCTURE @@ -115,6 +114,31 @@ $(OBJECTS_DEST): $(INSTALL_PREFIX) #==============================================================================# # +# PD VERSION AND PACKAGE NAMING +# +#==============================================================================# + + +PD_MAJOR_VERSION := $(shell grep 'Pd version' $(PD_SRC)/src/s_main.c | \ + sed 's/char pd_version\[\] = "Pd version \([0-9]\)\.[0-9]*[. TES-]*[0-9]*[0-9extndRC.-]*\\n";/\1/') +PD_MINOR_VERSION := $(shell grep 'Pd version' $(PD_SRC)/src/s_main.c | \ + sed 's/char pd_version\[\] = "Pd version [0-9]\.\([0-9]*\)[. TES-]*\([0-9]*\)[0-9extndRC.-]*\\n";/\1/') +PD_BUGFIX_VERSION := $(shell grep 'Pd version' $(PD_SRC)/src/s_main.c | \ + sed 's/char pd_version\[\] = "Pd version [0-9]\.[0-9]*[. TES-]*\([0-9]*\)[0-9extndRC.-]*\\n";/\1/') +# the separators [.-] need to be the same as in s_main.c or the regexps break +PD_VERSION = $(PD_MAJOR_VERSION).$(PD_MINOR_VERSION).$(PD_BUGFIX_VERSION) + + +# release version for this distro +PACKAGE_VERSION = extended-RC3 +PACKAGE_NAME = Pd-$(PD_VERSION)-$(PACKAGE_VERSION) +DMG_NAME = $(PACKAGE_NAME) + + + + +#==============================================================================# +# # CLEAN TARGETS # #==============================================================================# diff --git a/packages/TODO b/packages/TODO index 7525eefc..e6a15f2a 100644 --- a/packages/TODO +++ b/packages/TODO @@ -1,4 +1,12 @@ +- rename "applications" to "examples" + +- downcase *_DEST and *_SRC to be more readable + +- On GNU/Linux, figure out how to deal with build/extra vs. build/lib/pd/extra + +- fix unpatch_pd bug that doesn't fix the version name in s_main.c + - global versioning system the package releases should have versions of there own which apply to all packages, regardless of format or OS. This will make for easy and @@ -10,27 +18,7 @@ developed so that you can specific the target CPU in one place and have everything compile for that CPU. -- libdir - - - document libdir format - - - write .sh script that generates the mylibrary/mylibrary.pd file with the - meta data. It should take command line arguments, and put them into the - meta file. - -- rename "applications" to "examples" - -- downcase *_DEST and *_SRC to be more readable - -- make pd section since I can't easily modify the pd tree - -- add notes.txt to manuals - -- create patch system and incorporate IO's hex patch - -- hex convertor for setup function names, and object file names - -- merge in tigital's Makefile++ +- document libdir format - add GRIPD for Anders diff --git a/packages/darwin_app/Makefile b/packages/darwin_app/Makefile index 84110594..4efaa701 100644 --- a/packages/darwin_app/Makefile +++ b/packages/darwin_app/Makefile @@ -38,7 +38,9 @@ DEST_PATHS = BUILDLAYOUT_DIR=$(BUILDLAYOUT_DIR) \ install: darwin_app #------------------------------------------------------------------------------# -darwin_app: darwin_app_core extended_app_install +darwin_app: darwin_app_core extended_app_install rez + @echo " " + @echo "Pd.app build succeeded!" #------------------------------------------------------------------------------# # this target is for when you already have a pre-built Pd.app and you @@ -68,34 +70,36 @@ darwin_app_wrapper: install -d "$(PD_APP_CONTENTS)/Resources/Scripts" install -m0644 -p Info.plist "$(PD_APP_CONTENTS)" install -m0644 -p *.icns "$(PD_APP_CONTENTS)/Resources" -# rename the Wish Shell executable to "pd", the all lowercase is important -# since it needs to match the pd executable in order for the Gem windows to -# get focus properly mv "$(PD_APP_CONTENTS)/MacOS/Wish Shell" \ - "$(PD_APP_CONTENTS)/MacOS/pd" + "$(PD_APP_CONTENTS)/MacOS/$(PD_APP_NAME)" # diskutil eject /Volumes/$(TCLTK) +#------------------------------------------------------------------------------# +# generate Info.plist using PD_APP_NAME and PD_VERSION +Info.plist: Info.plist.in + + +# tigital's Gem window focus black magic +rez: + install -p $(CWD)/mac.r $(BIN_DEST) + cd $(BIN_DEST) && /Developer/tools/Rez -t APPL mac.r -o pd + #------------------------------------------------------------------------------# darwin_app_core: darwin_app_wrapper cd $(PACKAGES_SRC) && \ make $(DEST_PATHS) PD_CONFIGURE_FLAGS=--enable-jack pd_install -# tigital's Gem window focus black magic: - install -p $(CWD)/mac.r $(BIN_DEST) - cd $(BIN_DEST) && /Developer/tools/Rez -t APPL mac.r -o pd cd "$(PD_APP_CONTENTS)/Resources/Scripts" && \ ln -s ../bin/pd.tk AppMain.tcl # support for Info Panel Plugins mgmt cd "$(PD_APP_CONTENTS)" && ln -s Resources/extra Plugins -# Headers - install -d $(INSTALL_PREFIX)/include - install $(PD_SRC)/src/*.h $(INSTALL_PREFIX)/include # run script to move help-*.pd files to *-help.pd according to the standard cd $(DOCS_DEST) && \ $(SCRIPTS_SRC)/convert-help-to-standard.sh + darwin_app_doc_format: # set the font to 10pt on all help patches # the BSD/Darwin version of sed must create a backup file when doing @@ -288,8 +292,9 @@ darwin_app_perms: dmg: darwin_app_perms install -d "$(CWD)/$(DMG_NAME)" cd $(BUILD_BASE) && mv $(PD_APP_NAME).app "$(CWD)/$(DMG_NAME)/$(DMG_NAME).app" - install -p -m0444 $(INSTALL_PREFIX)/*.txt $(INSTALL_PREFIX)/*.html \ - "$(CWD)/$(DMG_NAME)" +# install -p -m0444 $(MANUALS_DEST)/$(PD_NAME)/PD\ LICENSE.txt \ +# $(MANUALS_DEST)/*.html "$(CWD)/$(DMG_NAME)" + install -p -m0444 org.puredata.pd.plist "$(CWD)/$(DMG_NAME)" cd $(CWD) && /bin/sh mkdmg "$(DMG_NAME)" diff --git a/packages/darwin_app/TODO b/packages/darwin_app/TODO index 108c0481..9471abaa 100644 --- a/packages/darwin_app/TODO +++ b/packages/darwin_app/TODO @@ -1,4 +1,6 @@ +- make Info.plist.in template and have the Makefile create Info.plist + - check to make sure that Rez mac.r is working in Makefile - make Pd open a new window when its launched to workaround the bug where the diff --git a/packages/darwin_app/org.puredata.pd.plist b/packages/darwin_app/org.puredata.pd.plist index ed25e182..0f3370c1 100644 --- a/packages/darwin_app/org.puredata.pd.plist +++ b/packages/darwin_app/org.puredata.pd.plist @@ -12,6 +12,14 @@ <string>dyn~</string> <key>loadlib5</key> <string>pmpd</string> + <key>loadlib6</key> + <string>cyclone</string> + <key>loadlib7</key> + <string>memento</string> + <key>loadlib8</key> + <string>toxy</string> + <key>loadlib9</key> + <string></string> <key>standardpath</key> <string>1</string> </dict> |