Re: spec file issues in 1.5.5

Kenneth Porter <[email protected]>
Newsgroups gmane.text.doxygen.devel
Message-ID <1A93D3BCE4C4801CBCE54042@[10.170.7.6]>
A more comprehensive patch that eliminates the extra spec file.

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone

_______________________________________________
Doxygen-develop mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/doxygen-develop
doxygen-spec.patch (text/plain, 7 KB)
Index: configure
===================================================================
--- configure	(revision 626)
+++ configure	(working copy)
@@ -537,11 +537,7 @@
 mkdir -p packages
 mkdir -p packages/rpm
 
-if test "$f_wizard" = YES; then
-  cat spec.tmp ./packages/rpm/doxygen.spec.in > ./packages/rpm/doxygen.spec
-else
-  cat spec.tmp ./packages/rpm/doxygen-nodoxywizard.spec.in > ./packages/rpm/doxygen.spec
-fi
+cat spec.tmp ./packages/rpm/doxygen.spec.in > ./packages/rpm/doxygen.spec
 
 rm -f spec.tmp
 
@@ -633,7 +629,11 @@
        fi
        echo "" >> $DST
      fi
-     cat $SRC >> $DST
+     if test $f_wizard = YES; then
+       sed -e "s/%%WITHDOXYWIZARD%% /--with doxywizard /g" $SRC >> $DST
+     else
+       sed -e "s/%%WITHDOXYWIZARD%% //g" $SRC >> $DST
+     fi
      echo "  Created $DST from $SRC..."
 done
 
Index: Makefile.in
===================================================================
--- Makefile.in	(revision 626)
+++ Makefile.in	(working copy)
@@ -63,9 +63,6 @@
 	cat doc/doxytag.1    | sed -e "s/DATE/$(DATE)/g" -e "s/VERSION/$(VERSION)/g" > doxytag.1
 	$(INSTTOOL) -m 644 doxytag.1 $(INSTALL)/$(MAN1DIR)/doxytag.1
 	rm doxytag.1
-	cat doc/doxywizard.1 | sed -e "s/DATE/$(DATE)/g" -e "s/VERSION/$(VERSION)/g" > doxywizard.1
-	$(INSTTOOL) -m 644 doxywizard.1 $(INSTALL)/$(MAN1DIR)/doxywizard.1
-	rm doxywizard.1
 
 install_docs: 
 	$(INSTTOOL) -d $(DOCDIR)
@@ -118,7 +115,7 @@
 	tar -rvf $(DISTDIR).src.tar $(DISTDIR)/packages/rpm/doxygen.spec
 	rm -rf $(DISTDIR)
 	gzip -9v $(DISTDIR).src.tar
-	rpmbuild -ta $(DISTDIR).src.tar.gz
+	rpmbuild -ta %%WITHDOXYWIZARD%% $(DISTDIR).src.tar.gz
 
 rpmsrc: dist
 	gzip -df $(DISTDIR).src.tar.gz
@@ -129,7 +126,7 @@
 	tar -rvf $(DISTDIR).src.tar $(DISTDIR)/packages/rpm/doxygen.spec
 	rm -rf $(DISTDIR)
 	gzip -9v $(DISTDIR).src.tar
-	rpmbuild -ts $(DISTDIR).src.tar.gz
+	rpmbuild -ts %%WITHDOXYWIZARD%% $(DISTDIR).src.tar.gz
 
 rpmbinary: dist
 	gzip -df $(DISTDIR).src.tar.gz
@@ -140,7 +137,7 @@
 	tar -rvf $(DISTDIR).src.tar $(DISTDIR)/packages/rpm/doxygen.spec
 	rm -rf $(DISTDIR)
 	gzip -9v $(DISTDIR).src.tar
-	rpmbuild -tb $(DISTDIR).src.tar.gz
+	rpmbuild -tb %%WITHDOXYWIZARD%% $(DISTDIR).src.tar.gz
 
 
 ctags:
Index: addon/doxywizard/Makefile.in
===================================================================
--- addon/doxywizard/Makefile.in	(revision 626)
+++ addon/doxywizard/Makefile.in	(working copy)
@@ -41,8 +41,14 @@
 distclean: clean
 	$(RM) Makefile.doxywizard version.cpp config.l config.h portable.h portable.cpp
 
+MAN1DIR = man/man1
+
 install:
 	$(INSTTOOL) -d $(INSTALL)/bin	
 	$(INSTTOOL) -m 755 ../../bin/doxywizard $(INSTALL)/bin	
+	$(INSTTOOL) -d $(INSTALL)/$(MAN1DIR)
+	cat ../../doc/doxywizard.1 | sed -e "s/DATE/$(DATE)/g" -e "s/VERSION/$(VERSION)/g" > doxywizard.1
+	$(INSTTOOL) -m 644 doxywizard.1 $(INSTALL)/$(MAN1DIR)/doxywizard.1
+	rm doxywizard.1
 
 FORCE:
Index: packages/rpm/doxygen-nodoxywizard.spec.in
===================================================================
--- packages/rpm/doxygen-nodoxywizard.spec.in	(revision 626)
+++ packages/rpm/doxygen-nodoxywizard.spec.in	(working copy)
@@ -1,71 +0,0 @@
-%define name doxygen
-
-%define contentdir /var/www
-%define suexec_caller doxygen
-%define buildroot /var/tmp/%{name}-%{version}-%{revision}root
-
-Summary: A documentation system for C/C++.
-Name: doxygen
-Version: %{version}
-Release: %{revision}
-URL: http://www.stack.nl/~dimitri/doxygen/index.html
-Vendor: Dimitri van Heesch
-License: GNU General Public License
-Group: Development/Tools
-Source: %{name}-%{version}_%{revision}.src.tar.gz
-BuildRoot: %{buildroot}
-BuildPrereq: libstdc++-devel >= 2.96, /usr/bin/perl, /usr/bin/latex, /usr/bin/dvips
-Prereq: /sbin/chkconfig, /bin/mktemp, /bin/rm, /bin/mv, libstdc++ >= 2.96
-Provides: doxygen = %{mmn}
-
-%description
-Doxygen can generate an online class browser (in HTML) and/or a
-reference manual (in LaTeX) from a set of documented source files. The
-documentation is extracted directly from the sources. Doxygen can
-also be configured to extract the code structure from undocumented
-source files.
-
-%prep
-%setup -q -n %{name}-%{version}_%{revision}
-./configure --prefix $RPM_BUILD_ROOT/usr
-
-%build
-make %{?_smp_mflags}
-make %{?_smp_mflags} pdf
-
-%install
-rm -rf $RPM_BUILD_ROOT
-make install
-
-%clean
-rm -rf $RPM_BUILD_ROOT
-
-%files
-%defattr(-,root,root)
-
-%doc README LICENSE LANGUAGE.HOWTO examples ./latex/*.pdf
-%doc /usr/man/man1/doxygen.1.gz
-%doc /usr/man/man1/doxytag.1.gz
-
-%{_bindir}/doxygen
-%{_bindir}/doxytag
-
-%changelog
-* Sun Nov 18 2007 Kevin McBride <[email protected]> 1.5.4
-- consolidated manual package in lieu of --excludedocs flag for rpm --install
-
-* Fri Oct 21 2005 Kevin McBride <[email protected]> 1.4.5
-- made .spec file compatible with tmake
-
-* Mon Oct 10 2005 Kevin McBride <[email protected]> 1.4.5
-- fixed versioning bugs.
-
-* Tue Oct 4 2005 Kevin McBride <[email protected]> 1.4.5
-- added obsoletes and proides sections.
-
-* Sun Sep 20 2005 Kevin McBride <[email protected]> 1.4.4
-- modified rpm spec file for Fedora Core acceptance criteria.
-
-* Sun Aug 7 2005 Kevin McBride <[email protected]> 1.4.4
-- created initial rpm spec file for doxygen-1.4.4
-
Index: packages/rpm/doxygen.spec.in
===================================================================
--- packages/rpm/doxygen.spec.in	(revision 626)
+++ packages/rpm/doxygen.spec.in	(working copy)
@@ -1,5 +1,7 @@
 %define name doxygen
 
+# optionally pass --with-doxywizard to rpmbuild
+
 %define contentdir /var/www
 %define suexec_caller doxygen
 %define buildroot /var/tmp/%{name}-%{version}-%{revision}root
@@ -14,7 +16,7 @@
 Group: Development/Tools
 Source: %{name}-%{version}_%{revision}.src.tar.gz
 BuildRoot: %{buildroot}
-BuildPrereq: libstdc++-devel >= 2.96, /usr/bin/perl, /usr/bin/latex, /usr/bin/dvips
+BuildPrereq: libstdc++-devel >= 2.96, /usr/bin/perl, /usr/bin/latex, /usr/bin/dvips, /usr/bin/gs
 Prereq: /sbin/chkconfig, /bin/mktemp, /bin/rm, /bin/mv, libstdc++ >= 2.96
 Provides: doxygen = %{mmn}
 
@@ -25,6 +27,7 @@
 also be configured to extract the code structure from undocumented
 source files.
 
+%if %{?_with_doxywizard:1}%{!?_with_doxywizard:0}
 %package doxywizard
 Group: Development/Libraries
 Summary: GUI Interface for doxygen.
@@ -42,10 +45,11 @@
 
 This is the GUI interface for doxygen.  It requires qt and X11 to
 install.
+%endif
 
 %prep
 %setup -q -n %{name}-%{version}_%{revision}
-./configure --with-doxywizard --prefix $RPM_BUILD_ROOT/usr
+./configure %{?_with_doxywizard} --prefix $RPM_BUILD_ROOT/usr
 
 %build
 make %{?_smp_mflags}
@@ -68,12 +72,18 @@
 %{_bindir}/doxygen
 %{_bindir}/doxytag
 
+%if %{?_with_doxywizard:1}%{!?_with_doxywizard:0}
 %files doxywizard
 %defattr(-,root,root)
 %{_bindir}/doxywizard
 %doc /usr/man/man1/doxywizard.1.gz
+%endif
 
 %changelog
+* Fri Apr 18 2008 Kenneth Porter <[email protected]> 1.5.5-1
+- consolidate with and without doxywizard spec files with rpm macro
+- add gs BuildPrereq
+
 * Sun Nov 18 2007 Kevin McBride <[email protected]> 1.5.4
 - consolidated manual package in lieu of --excludedocs flag for rpm --install
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.