Makefile revision 11850
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater# Makefile for generateing man page tarballs that are used in each of the
18920d790825d96ca3943aa2dcb6eb80dc611c5fTinderbox User# SUNW*.spec files
ab496cc3df1648e9ad992a87c35c2c0870fdc69dTinderbox User# Generates : $(PACKAGE)-manpages-$(MANPAGE_VERSION).tar.gz
7c1468ed500356839a4a222517364e6ce18cb1a2Tinderbox User# e.g. sun-manpage-tarballs/*.tar.gz
1f4c645185bd8fc70048e0a69eee46193a284e5cTinderbox User# "make" : Rebuilds all man page tarballs
8de3f14f1c300c3e1ed99084cc03485b42c92bf1Tinderbox User# "make check-used" : Outputs list of man pages not being used.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User# "make check-version" : Prints current man page tarball version
e676a596869d8a80a644c99a848afb53d1c5975eMark Andrews# "make $(PACKAGE)-manpages-$(MANPAGE_VERSION).tar.gz
e676a596869d8a80a644c99a848afb53d1c5975eMark Andrews# e.g. "make SUNWgnome-panel-manpages-0.1.tar.gz"
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# will only generate SUNWgnome-panel's man page tarball
a7c412f37cc73d0332887a746e81220cbf09dd00Mark Andrews# For each package that contains man pages.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# - Ensure all relevant man pages for your package are located under the
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# correct man page section dir i.e.
e676a596869d8a80a644c99a848afb53d1c5975eMark Andrews# - Add Package name to PACKAGES Variable
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# e.g. PACKAGES = \
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# SUNWgnome-panel \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# SUNWyour-package
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# - Add two package specific variables
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# PACKAGE_PAGES - Full path of all manpages for this package
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# e.g. SUNWgnome-panel_PAGES = man1/gnome-panel.1 etc...
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# PACKAGE.PAGES - Assigned to $(PACKAGE_PAGES).
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews# e.g. SUNWgnome-panel.PAGES: $(SUNWgnome-panel_PAGES)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# To Add new man pages to existing packages
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# -----------------------------------------
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Put very simply, all that is required from engineers is to make some changes
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# and commit in SVN.
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# - Ensure the man page exists in SVN under the relevant man page section sub
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox User# - Add man page to the SUNW<package>_PAGES Makefile variable
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews# e.g. For a new gnome-panel man page it would be added to
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt# SUNWgnome-panel_PAGES
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox User# - Remake tarballs
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt# This will re-generate all man page tarballs.
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater# - Copy newly generated tarball from sun-manpage-tarballs to package build
16f6050f29b6b0422cee858e609f65e474e70ef2Tinderbox User# sources e.g. /jds/packages/SOURCES, and ensure package builds and manpages
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater# install correctly.
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt# - New man page tarball will be generated by RE for each nightly, and for each
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox User# milestone build.
0e573cdd111e060e5f6c18249b5ccacbe8abe278Tinderbox User# - Commit change back to subverison, e.g. new/amended man pagees,
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt# Solaris/manpages/Makefile, Solaris/S*.spec files if affected.
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater# MANPAGE_VERSION is maintained by RE and only gets bumped when spec-files gets
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater# branched. PLEASE do not change this.
7f94d9a8162c9a96b56e66176702b66e79d8e1a2Automatic UpdaterSUNWevolution-exchange.PAGES: $(SUNWevolution-exchange_PAGES)
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox UserSUNWevolution-data-server.PAGES: $(SUNWevolution-data-server_PAGES)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsSUNWgnome-a11y-gok.PAGES: $(SUNWgnome-a11y-gok_PAGES)
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox UserSUNWgnome-a11y-libs.PAGES: $(SUNWgnome-a11y-libs_PAGES)
6025cbbe8408f4b09d53d5ec1e95cb6da97e0a8dTinderbox UserSUNWgnome-a11y-reader.PAGES: $(SUNWgnome-a11y-reader_PAGES)
ae454ec746d1d4db8d04e107d4d25ff13158c37fMark AndrewsSUNWgnome-a11y-poke.PAGES: $(SUNWgnome-a11y-poke_PAGES)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsSUNWgnome-archive-mgr.PAGES: $(SUNWgnome-archive-mgr_PAGES)
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox UserSUNWgnome-audio.PAGES: $(SUNWgnome-audio_PAGES)
e8fc8c884b44371784805e1e0d3100da403dd3f1Automatic UpdaterSUNWgnome-base-libs.PAGES: $(SUNWgnome-base-libs_PAGES)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsSUNWgnome-base-libs-java.PAGES: $(SUNWgnome-base-libs-java_PAGES)
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark AndrewsSUNWgnome-calculator.PAGES: $(SUNWgnome-calculator_PAGES)
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark AndrewsSUNWgnome-cd-burner.PAGES: $(SUNWgnome-cd-burner_PAGES)
d7d105151a78d35afb4233d2a6dbd47b7ec0d9a5Tinderbox UserSUNWgnome-character-map.PAGES: $(SUNWgnome-character-map_PAGES)
757ff043760e4743dda1a10e7d58349275934902Tinderbox UserSUNWgnome-common-devel.PAGES: $(SUNWgnome-common-devel_PAGES)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsSUNWgnome-component.PAGES: $(SUNWgnome-component_PAGES)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsSUNWgnome-config-editor.PAGES: $(SUNWgnome-config-editor_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-config.PAGES: $(SUNWgnome-config_PAGES)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsSUNWgnome-crash-report.PAGES: $(SUNWgnome-crash-report_PAGES)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews man1/gnome-accessibility-keyboard-properties.1 \
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User man1/gnome-default-applications-properties.1 \
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark AndrewsSUNWgnome-desktop-prefs.PAGES: $(SUNWgnome-desktop-prefs_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-dialog.PAGES: $(SUNWgnome-dialog_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-display-mgr.PAGES: $(SUNWgnome-display-mgr_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-file-mgr.PAGES: $(SUNWgnome-file-mgr_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-gtksourceview.PAGES: $(SUNWgnome-gtksourceview_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-help-viewer.PAGES: $(SUNWgnome-help-viewer_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-hex-editor.PAGES: $(SUNWgnome-hex-editor_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-im-client.PAGES: $(SUNWgnome-im-client_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-meeting.PAGES: $(SUNWgnome-meeting_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-img-viewer.PAGES: $(SUNWgnome-img-viewer_PAGES)
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater man1/scrollkeeper-get-extended-content-list.1 \
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater man1/scrollkeeper-get-index-from-docpath.1 \
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater man1/scrollkeeper-get-toc-from-docpath.1 \
ae7e54b14c946e0984c191554db9abb4893f9349Automatic UpdaterSUNWgnome-libs.PAGES: $(SUNWgnome-libs_PAGES)
c11c7b47726c02eb05e29ff7be56a3343146e396Tinderbox UserSUNWgnome-media-apps.PAGES: $(SUNWgnome-media-apps_PAGES)
c11c7b47726c02eb05e29ff7be56a3343146e396Tinderbox UserSUNWgnome-media-player.PAGES: $(SUNWgnome-media-player_PAGES)
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic UpdaterSUNWgnome-menu-editor.PAGES: $(SUNWgnome-menu-editor_PAGES)
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic UpdaterSUNWgnome-pilot.PAGES: $(SUNWgnome-pilot_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-removable-media.PAGES: $(SUNWgnome-removable-media_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-remote-desktop.PAGES: $(SUNWgnome-remote-desktop_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-session.PAGES: $(SUNWgnome-session_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-sys-suspend.PAGES: $(SUNWgnome-sys-suspend_PAGES)
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic UpdaterSUNWgnome-system-tools.PAGES: $(SUNWgnome-system-tools_PAGES)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsSUNWgnome-system-monitor.PAGES: $(SUNWgnome-system-monitor_PAGES)
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic UpdaterSUNWgnome-terminal.PAGES: $(SUNWgnome-terminal_PAGES)
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark AndrewsSUNWgnome-text-editor.PAGES: $(SUNWgnome-text-editor_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-ui-designer.PAGES: $(SUNWgnome-ui-designer_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWgnome-utils.PAGES: $(SUNWgnome-utils_PAGES)
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic UpdaterSUNWrealplayer.PAGES: $(SUNWrealplayer_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWthunderbird.PAGES: $(SUNWthunderbird_PAGES)
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark AndrewsSUNWgnome-devhelp.PAGES: $(SUNWgnome-devhelp_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonSUNWprint-monitor.PAGES: $(SUNWprint-monitor_PAGES)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington.SUFFIXES: -manpages-$(MANPAGE_VERSION).tar.gz .PAGES
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonTARBALLS = $(TARBALL_DIR)/$(addsuffix -$(MANPAGE_VERSION).tar.bz2, $(PACKAGES))
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @test -d $(TARBALL_DIR) || mkdir -p "$(TARBALL_DIR)"
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @test -x $(SGML2ROFF) || echo "sgml2roff utility not found"
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @test -x $(GZIP) || echo "gzip utility not found"
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews $(MAKE) MAKE=\"$(MAKE)\" $$package-manpages-$(MANPAGE_VERSION).tar.gz; \
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox User @test -d $(TARBALL_DIR) || mkdir -p "$(TARBALL_DIR)"
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User @if test -f $(TARBALL_DIR)/$@; then \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @test -d $(MANPAGE_DIR) || mkdir -p "$(MANPAGE_DIR)"
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @echo "Converting manpages for $@"
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @for manpage in $($(subst .PAGES,_PAGES,$<)); do \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews suffix=`expr "$$base_manpage" : '.*\.\([^./]*\)$'`; \
859148b72a22e4221c3e918d15c7fdd5e78b6d8dTinderbox User $(SGML2ROFF) $$manpage > $(MANPAGE_DIR)/$$base_manpage; \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews echo $$base_manpage >> $(MANPAGE_DIR)/$$suffix; \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews mv $(MANPAGE_DIR)/ent $(MANPAGE_DIR)/entities; \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @for mantype in entities 1 1m 3 3tiff 4 5; do \
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User echo "MAN"$$mantype"PAGES = \\" >> $(MANPAGE_DIR)/Makefile; \
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User if (length(saved_page) > 0) \
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User print " " saved_page " \\"; \
cc5a9ce75af9870f2cb9e2bf00548c2f7e6398d6Automatic Updater saved_page=$$0; \
3040b455151b1e1173193933664b2891b6159f24Mark Andrews print " " saved_page; \
609b8d08176469485edce25f3c2f50365bbd3819Mark Andrews }' $(MANPAGE_DIR)/$$mantype >> $(MANPAGE_DIR)/Makefile; \
532d27b39244fadfcf8d8b4593f4c65434c9c664Automatic Updater @echo "install:" >> $(MANPAGE_DIR)/Makefile
532d27b39244fadfcf8d8b4593f4c65434c9c664Automatic Updater @for mantype in entities 1 1m 3 3tiff 4 5; do \
1a63fb1d1448ed3f8fd7227ae57be67c2e71279eMark Andrews echo " install -d $$(DESTDIR)$$(MAN"$$mantype"DIR)" >> $(MANPAGE_DIR)/Makefile; \
1a63fb1d1448ed3f8fd7227ae57be67c2e71279eMark Andrews echo " for mp in $$(MAN"$$mantype"PAGES); do \\" >> $(MANPAGE_DIR)/Makefile; \
9e898948ed76bf5f175bf178866c90c449843c3eTinderbox User echo " install --mode=0644 \$$\$$mp $$(DESTDIR)$$(MAN"$$mantype"DIR); \\" >> $(MANPAGE_DIR)/Makefile; \
10702d681eb650391bcaa0e2704aa3cf2dbf0e98Mark Andrews @tarball=`basename "$@" .gz`; echo "Making tarball $$tarball"; \
10702d681eb650391bcaa0e2704aa3cf2dbf0e98Mark Andrews $(TAR) -cf $(TARBALL_DIR)/$$tarball $(MANPAGE_DIR); \
10702d681eb650391bcaa0e2704aa3cf2dbf0e98Mark Andrews @test -d check-used-manpages || mkdir -p "check-used-manpages"
10702d681eb650391bcaa0e2704aa3cf2dbf0e98Mark Andrews @test -d check-all-manpages || mkdir -p "check-all-manpages"
861836e5f5df62bfaea9ad8923a05278d5ab2f3dTinderbox User $(MAKE) MAKE=\"$(MAKE)\" $$package.check-used; \
665ba746c0585088d0c314dcfc4671aa2c7b2dc1Automatic Updater if test -f check-used-manpages/$$base_manpage; then \
5ee9f7f23852d92772c08ca6e4b46c549beaf660Mark Andrews echo " "$$base_manpage >> unused-manpages.txt; \
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater @if test -f unused-manpages.txt; then \
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater echo "Following Manpages are not being used in any SUNW package :"; \
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater echo "All man pages are being used"; \
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater @for manpage in $($(subst .PAGES,_PAGES,$<)); do \