[DRBD-cvs] drbd by lars; improved the "make rpm" target. fixed t...

drbd-user@lists.linbit.com drbd-user@lists.linbit.com
Thu, 22 Jan 2004 15:33:21 +0100 (CET)


DRBD CVS committal

Author  : lars
Module  : drbd

Dir     : drbd


Modified Files:
	Makefile drbd.spec 


Log Message:

improved the "make rpm" target.
fixed the list email to drbd-user@linbit.

... just to relax for a moment from the 0.7 linux 2.6 port ...
ok, back to real work now :)

	-lge



===================================================================
RCS file: /var/lib/cvs/drbd/drbd/Makefile,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -3 -r1.24 -r1.25
--- Makefile	6 Jan 2004 10:06:25 -0000	1.24
+++ Makefile	22 Jan 2004 14:32:51 -0000	1.25
@@ -37,10 +37,6 @@
 
 check_changelogs_up2date:
 	@ up2date=true; \
-	if ! grep "^Version: $(REL_VERSION)" >/dev/null 2>&1 drbd.spec; \
-	then \
-	   echo "You need to update the Version: tag in drbd.spec"; \
-	   up2date=false; fi; \
 	if ! sed -e '0,/^%changelog/d' drbd.spec \
 	   | grep "^- drbd ($(REL_VERSION)-" >/dev/null 2>&1 ; \
 	then \
@@ -57,8 +53,10 @@
 	$$up2date
 
 update.filelist:
-	cvs status | grep -o "/drbd/drbd/[^,]*" | sed "/documentation/d;s/\/drbd\/drbd/drbd-$(REL_VERSION)/" > .filelist
-	echo drbd-$(REL_VERSION)/documentation >> .filelist
+	cvs status | grep -o "/drbd/drbd/[^,]*" | \
+	sed "s/\/drbd\/drbd/drbd-$(REL_VERSION)/" > .filelist
+	find documentation -name "*.[58]" -o -name "*.html" | \
+	sed "s/^/drbd-$(REL_VERSION)\//" >> .filelist
 	echo drbd-$(REL_VERSION)/.filelist >> .filelist
 
 .filelist:
@@ -85,17 +83,20 @@
 	         dist/RPMS/i386 \
 	         dist/SPECS \
 	         dist/SOURCES \
+	         dist/TMP \
 	         dist/install \
 	         dist/SRPMS
 	[ -h dist/SOURCES/drbd-$(REL_VERSION).tar.gz ] || \
 	  $(LN_S) $(PWD)/drbd-$(REL_VERSION).tar.gz \
 	          $(PWD)/dist/SOURCES/drbd-$(REL_VERSION).tar.gz
-	[ -f dist/SPECS/drbd.spec ] || \
-	  sed -e 's/^\(Packager:\).*/\1 ${USER}@${HOSTNAME}/;' drbd.spec \
-	  > dist/SPECS/drbd.spec
+	if test drbd.spec -nt dist/SPECS/drbd.spec ; then \
+	   sed -e "s/^\(Version:\).*/\1 $(REL_VERSION)/;" \
+	       -e "s/^\(Packager:\).*/\1 $(USER)@$(HOSTNAME)/;" drbd.spec \
+	   > dist/SPECS/drbd.spec ; \
+	fi
 	$(RPMBUILD) -ba \
-	    --define "buildroot $(PWD)/dist/install" \
 	    --define "_topdir $(PWD)/dist" \
+	    --define "buildroot $(PWD)/dist/install" \
 	    $(PWD)/dist/SPECS/drbd.spec
 
 # the INSTALL file is writen in lge-markup, which is basically
===================================================================
RCS file: /var/lib/cvs/drbd/drbd/drbd.spec,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -3 -r1.15 -r1.16
--- drbd.spec	12 Dec 2003 14:39:48 -0000	1.15
+++ drbd.spec	22 Jan 2004 14:32:51 -0000	1.16
@@ -1,6 +1,6 @@
 Name: drbd
 Summary: Distributed Redundant Block Device driver for Linux
-Version: 0.6.10
+Version: 
 Release: 1
 Source: %{name}-%{version}.tar.gz
 Vendor: DRBD 
@@ -31,27 +31,66 @@
 mkdir -p %{buildroot}
 
 make clean
+# note: MANDIR is not used anywhere in the makefiles
+#       maybe this should be changed
 make PREFIX=%{buildroot}/ MANDIR=%{_mandir} all install
 
 %install
+make PREFIX=%{buildroot}/ install
+cd documentation
+mv HOWTO HOWTO.orig
+mkdir HOWTO
+cp -p HOWTO.orig/*.html HOWTO/
+FILELIST="%{_builddir}/%{name}-%{version}/file.list"
 cd %{buildroot}
 find lib/modules -name drbd.o -exec mv {} {}.new \; \
-         -fprintf %{_builddir}/%{name}-%{version}/file.list "/%p.new\n"
+         -fprintf "$FILELIST" "/%p.new\n"
+#
+# this is because /etc/init.d != /etc/rc.d != /etc/rc.d/init.d ...
+# you may want to edit this, or the file list below ;)
+#
+find etc/ -name drbd -printf "/%p\n" >> "$FILELIST"
+#
+# and I only want to install a hint to the example conf
+#
+cat <<___ > etc/drbd.conf
+#
+# please have a a look at the example configuration file in
+# %{_docdir}/drbd.conf
+#
+___
 
 %clean
-rm -rf %{buildroot}
+[ -n $RPM_BUILD_ROOT -a "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
 
 %files -f %{_builddir}/%{name}-%{version}/file.list
+%defattr(755,root,root)
+/sbin/drbdsetup
+/etc/ha.d/resource.d/datadisk
+
+%defattr(644,root,root)
+%config(noreplace) /etc/drbd.conf
+
+%defattr(700,root,root)
+%dir /var/lib/drbd
+
 %defattr(-,root,root)
-%{_mandir}/man8/datadisk.8.gz
-%{_mandir}/man8/drbd.8.gz
 %{_mandir}/man8/drbdsetup.8.gz
 %{_mandir}/man5/drbd.conf.5.gz
-/sbin/drbdsetup
-/etc/rc.d/init.d/drbd
-/etc/ha.d/resource.d/datadisk
+%{_mandir}/man8/drbd.8.gz
+%{_mandir}/man8/datadisk.8.gz
+%{_mandir}/ja/man8/drbdsetup.8.gz
+%{_mandir}/ja/man5/drbd.conf.5.gz
+%{_mandir}/ja/man8/drbd.8.gz
+%{_mandir}/ja/man8/datadisk.8.gz
+%{_mandir}/pt_BR/man8/drbdsetup.8.gz
+%{_mandir}/pt_BR/man5/drbd.conf.5.gz
+%{_mandir}/pt_BR/man8/drbd.8.gz
+%{_mandir}/pt_BR/man8/datadisk.8.gz
 %doc scripts/drbd.conf
 %doc documentation/NFS-Server-README.txt
+%doc documentation/drbd-article.html
+%doc documentation/HOWTO
 %doc COPYING
 %doc README
 %doc file.list
@@ -60,11 +99,11 @@
 FL=%{_docdir}/%{name}-%{version}/file.list
 
 if [ $1 -eq 1 ]; then
-	for d in $(sed 's/^\(\/lib\/modules\/[^/]*\).*/\1/' $FL) ; do
+	for d in $(sed '/^\/lib/!d;s/^\(\/lib\/modules\/[^/]*\).*/\1/' $FL) ; do
 		find $d -name drbd.o -exec mv -f {} {}.old \;
 	done
 fi
-for f in $(sed 's/\.new$//' $FL) ; do
+for f in $(sed '/^\/lib/!d;s/\.new$//' $FL) ; do
 	ln -f $f.new $f 
 done
 
@@ -76,10 +115,10 @@
 FL=%{_docdir}/%{name}-%{version}/file.list
 
 if [ $1 -eq 0 ]; then
-	for f in $(sed 's/\.new$//' $FL) ; do
+	for f in $(sed '/^\/lib/!d;s/\.new$//' $FL) ; do
 		rm $f
 	done
-	for d in $(sed 's/^\(\/lib\/modules\/[^/]*\).*/\1/' $FL) ; do
+	for d in $(sed '/^\/lib/!d;s/^\(\/lib\/modules\/[^/]*\).*/\1/' $FL) ; do
 		for f in $(find $d -name drbd.o.old -print) ; do
 			mv $f $(echo $f | sed 's/\.old$//')
 		done