Tommy or Paul: Can you look at this change and give us a better way to do it? Or am I missing the existence of this functionality in Makefile.common? thx - Karsten On Mon, 2005-10-24 at 10:08 -0400, Karsten Wade wrote: > Author: kwade > > Update of /cvs/docs/release-notes > In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv17937 > > Modified Files: > Makefile > Log Message: > Need to find a way to do this better, and I think it should be in the Makefile.common instead. However, my method here is obviously sub-par and throws an error, so I'll be punting for help. The objective is to make certain that the figs/ directory gets copied over to the HTML directories in all languages. Actually, the figs-/ needs to get copied to foo-/ HTML directory. This requires some consideration and kung-fu. It should copy over the language specific figures if they exist, otherwise use the English by default so as to not break the build. > > > Index: Makefile > =================================================================== > RCS file: /cvs/docs/release-notes/Makefile,v > retrieving revision 1.1 > retrieving revision 1.2 > diff -u -r1.1 -r1.2 > --- Makefile 24 Oct 2005 13:13:33 -0000 1.1 > +++ Makefile 24 Oct 2005 14:08:53 -0000 1.2 > @@ -1,90 +1,100 @@ > -LANG = en > -DOCS_SETUP_PATH= ../../docs-common > -XSLPDF = $(DOCS_SETUP_PATH)/xsl/main-pdf.xsl > -XSLHTML = $(DOCS_SETUP_PATH)/xsl/main-html-nochunks-relnotes.xsl > - > -XSLPDFCOMMONS = ${XSLPDF} > -XSLHTMLCOMMONS = ${XSLHTML} > - > -XMLCOMMONSPATH=${DOCS_SETUP_PATH}/common > -XMLCOMMONS=${XMLCOMMONSPATH}/cvs-en.xml \ > - ${XMLCOMMONSPATH}/draftnotice-en.xml \ > - ${XMLCOMMONSPATH}/fedora-entities-en.ent \ > - ${XMLCOMMONSPATH}/fedora-entities-en.xml \ > - ${XMLCOMMONSPATH}/legacynotice-en.xml \ > - ${XMLCOMMONSPATH}/legalnotice-en.xml \ > - ${XMLCOMMONSPATH}/obsoletenotice-en.xml > - > -.SUFFIXES: > -.SUFFIXES: .html .pdf .xml > - > -all: README-${LANG}.html \ > - RELEASE-NOTES-${LANG}.html \ > - RELEASE-NOTES-${LANG}.txt \ > - README-${LANG}.txt > - > -#README-${LANG}.pdf RELEASE-NOTES-${LANG}.pdf > - > -%.pdf: %.xml > - xmlto pdf -x ${XSLPDF} $< > - > -%.html: %.xml > - ${RM} -r ${@:.html=} > - xmlto html -x ${XSLHTML} -o ${@:.html=} $< > - mkdir -p ${@:.html=}/stylesheet-images > - mkdir -p ${@:.html=}/figs > - cp $(DOCS_SETUP_PATH)/stylesheet-images/*.png ${@:.html=}/stylesheet-images > - cp ./figs/*.png ${@:.html=}/figs > - cp $(DOCS_SETUP_PATH)/css/fedora.css ${@:.html=} > - mv ${@:.html=}/${@:.html=.proc} ${@:.html=}/$@ > - ln -sf ${@:.html=}/$@ $@ > - > -%.txt: %.xml > - xmlto txt $< > -# mv $@ RELEASE-NOTES-${LANG} > - > -# FIXME eula.txt: eula.py > -# FIXME python -c "import py_compile; py_compile.compile('eula.py')" > - > -# Note: keep "RELEASE-NOTES-en.xml" first, for now. > - > -RNFILES=RELEASE-NOTES-en.xml daemons.xml database-servers.xml \ > - desktop.xml development-tools.xml feedback.xml file-servers.xml \ > - file-systems.xml hardware-reqs.xml install-notes.xml intro.xml \ > - java-package.xml kernel.xml misc-server.xml multimedia.xml \ > - networking.xml overview.xml package-movement.xml \ > - package-notes.xml printing.xml project-overview.xml samba.xml \ > - security.xml server-tools.xml splash.xml web-servers.xml \ > - xorg.xml > - > -# README-${LANG}.pdf: README-en.xml > -# README-${LANG}.html: README-en.xml > -RELEASE-NOTES-${LANG}.pdf: ${RNFILES} ${XMLCOMMONS} ${XSLPDFCOMMONS} > -RELEASE-NOTES-${LANG}.html: ${RNFILES} ${XMLCOMMONS} ${XSLHTMLCOMMONS} > -RELEASE-NOTES-${LANG}.txt: ${RNFILES} ${XMLCOMMONS} > - > -clean: > - ${RM} ChangeLog ChangeLog.xml > - > -distclean clobber: clean > - ${RM} ChangeLog-${LANG}.html ChangeLog.txt > - ${RM} -r README-${LANG}.pdf README-${LANG}.html README-${LANG}.txt > - ${RM} -r RELEASE-NOTES-${LANG}.pdf RELEASE-NOTES-${LANG}.html \ > - RELEASE-NOTES-${LANG} RELEASE-NOTES-${LANG}.txt > - > -# If you have the "cvs2cl" package installed, then you can make > -# fancy HTML ChangeLogs > - > -ChangeLogs: > - ${RM} ChangeLog* > - ${MAKE} ChangeLog.txt > - ${MAKE} ChangeLog-${LANG}.html > - > -ChangeLog.txt: > - LANG=C cvs2cl -f ChangeLog.txt > - > -ChangeLog.xml: > - LANG=C cvs2cl --xml --xml-encoding UTF-8 -f ChangeLog.xml > - > -ChangeLog-${LANG}.html: ChangeLog.xml > - xsltproc -o $@ /usr/share/xml/cvs2cl/cl2html.xslt $< > +############################################################################### > +# Makefile for RHLP docs project > +# Created by: Tammy Fox <tfox@xxxxxxxxxx> > +# Last edited by: Tommy Reynolds <Tommy.Reynolds@xxxxxxxxxxxxx> > +# WARNING: need passivetex 1.24 for pdf generation to work > +# License: GPL > +# Copyright 2003 Tammy Fox, Red Hat, Inc. > +# Copyright 2005 Tommy Reynolds, MegaCoder.com > +############################################################################### > +# > +# Document-specific definitions. > +# > +LANGUAGES = en > +DOCBASE = RELEASE-NOTES > +XMLEXTRAFILES-en=daemons.xml database-servers.xml desktop.xml development-tools.xml feedback.xml file-servers.xml file-systems.xml hardware-reqs.xml install-notes.xml intro.xml java-package.xml kernel.xml misc-server.xml multimedia.xml networking.xml overview.xml package-movement.xml package-notes.xml printing.xml project-overview.xml samba.xml security.xml server-tools.xml splash.xml web-servers.xml xorg.xml > +# > +###################################################### > +include ../docs-common/Makefile.common > +###################################################### > +# > +# If you want to add additional steps to any of the > +# targets defined in "Makefile.common", be sure to use > +# a double-colon in your rule here. For example, to > +# print the message "FINISHED AT LAST" after building > +# the HTML document version, uncomment the following > +# line: > +#${DOCBASE}-en/index.html:: > +# echo FINISHED AT LAST > + > +# Need to copy over the figures for this directory. Should > +# this be a common action instead? > +${DOCBASE}-en/index.html:: > + mkdir -p ${DOCBASE}-${LANGUAGES}/figs > + cp figs/* ${DOCBASE}-${LANGUAGES}/figs > + > +###################################################### > +# Some packaging specific vars > +VERSION=$(shell grep BOOKID $(DOCBASE)-en.xml | sed 's/<!ENTITY BOOKID "[^0-9\.]\+//' | sed 's/ .\+//') > +DATE=${shell grep BOOKID $(DOCBASE)-en.xml | sed 's/.\+(//' | sed 's/).\+//' } > +NOW=$(shell date +"%a %b %e %Y") > +SPECIN=../docs-common/packaging/fedora-doc.spec.in.common > +OMFIN=../docs-common/packaging/fedora-doc.omf.in.common > +DESKTOPIN=../docs-common/packaging/fedora-doc.desktop.in.common > +DOCSPEC=$(PWD)/SPECS/$(DOCBASE).spec > +DOCOMF=$(PWD)/SOURCES/fedora-doc-$(DOCBASE)-C.omf > +DOCDESKTOP=$(PWD)/SOURCES/fedora-doc-$(DOCBASE).desktop > +DOCSRCTAR=$(PWD)/SOURCES/$(DOCBASE)-$(VERSION).src.tar.gz > +TITLE=$(shell ../docs-common/packaging/titlegrab.py $(DOCBASE)-en.xml | sed 's/^ \+//') > +###################################################### > +# Some RPM flags... > +###################################################### > +RPMFLAGS=--define "docbase $(DOCBASE)" --define "version $(VERSION)" --define "_topdir $(PWD)" > +###################################################### > + > + > +clean:: > + rm -rf fedora-doc-$(DOCBASE)*.rpm > + > + > +rpm: clean > +# > +# Make RPM-compliant tarball of source XML and other stuff > + mkdir $(DOCBASE)-$(VERSION) > + find . -maxdepth 1 -type f ! \( -name '*~' -o -name 'Makefile*' \) \ > + | cpio -pamdv $(DOCBASE)-$(VERSION) > + find . -maxdepth 1 -type d ! \( -name '$(DOCBASE)-$(VERSION)' \ > + -o -name 'CVS' -o -name '*~' -o -name '$(DOCBASE)*' \) \ > + | cpio -pamdv $(DOCBASE)-$(VERSION) > +# > +# Make RPM build tree; don't rely on local user's setup > + mkdir -p {BUILD,RPMS/noarch,SOURCES,SPECS,SRPMS} > + tar -zcvf $(DOCSRCTAR) $(DOCBASE)-$(VERSION) > + rm -rf $(DOCBASE)-$(VERSION)/ > +# > +# Make rpmlint happy with a changelog entry > +# FIXME: Maybe more magic would make this stickier; pity > +# I'm no magician... > + sed 's/\(%changelog\)/\1\n* $(NOW) Fedora Docs Project <fedora-docs-list@xxxxxxxxxx> - $(VERSION)-1\n- Update to version $(VERSION)\n/' \ > + $(SPECIN) > $(DOCSPEC) > +# > +# Fill in files > +# FIXME: Needs to be multiplexed for LANGUAGES (see above) > + cp $(OMFIN) $(DOCOMF) > + cp $(DESKTOPIN) $(DOCDESKTOP) > + sed -i 's/@VERSION@/$(VERSION)/g' $(DOCOMF) > + sed -i 's/@DATE@/$(DATE)/g' $(DOCOMF) > + sed -i 's/@TITLE@/$(TITLE)/g' $(DOCOMF) > + sed -i 's/@DOCBASE@/$(DOCBASE)/g' $(DOCOMF) > + sed -i 's/@VERSION@/$(VERSION)/g' $(DOCDESKTOP) > + sed -i 's/@DATE@/$(DATE)/g' $(DOCDESKTOP) > + sed -i 's/@TITLE@/$(TITLE)/g' $(DOCDESKTOP) > + sed -i 's/@DOCBASE@/$(DOCBASE)/g' $(DOCDESKTOP) > +# > +# Do the build... > +# > + rpmbuild -bb $(RPMFLAGS) $(DOCSPEC) > + mv RPMS/noarch/*.rpm . > + rpmbuild --clean --rmsource $(RPMFLAGS) $(DOCSPEC) > + rm -rf {BUILD,RPMS,SOURCES,SPECS,SRPMS} > + rm -rf $(DOCBASE)-$(VERSION) > > -- > Fedora-docs-commits mailing list > Fedora-docs-commits@xxxxxxxxxx > https://www.redhat.com/mailman/listinfo/fedora-docs-commits -- Karsten Wade, RHCE * Sr. Tech Writer * http://people.redhat.com/kwade/ gpg fingerprint: 2680 DBFD D968 3141 0115 5F1B D992 0E06 AD0E 0C41 Red Hat SELinux Guide http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/selinux-guide/
Attachment:
signature.asc
Description: This is a digitally signed message part
-- fedora-docs-list@xxxxxxxxxx To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-docs-list