Optimize makefile and check in draft spec file improvements.
authorScott Cantor <cantor.2@osu.edu>
Thu, 6 Aug 2009 17:25:23 +0000 (17:25 +0000)
committerScott Cantor <cantor.2@osu.edu>
Thu, 6 Aug 2009 17:25:23 +0000 (17:25 +0000)
Makefile.am
xmltooling.spec.in

index ebcdeb3..14c1a5c 100644 (file)
@@ -10,26 +10,29 @@ dist-hook:
        rm -rf `find $(distdir)/xmltoolingtest/data -name .svn`
        rm -rf `find $(distdir)/doc/api -name .svn`
 
        rm -rf `find $(distdir)/xmltoolingtest/data -name .svn`
        rm -rf `find $(distdir)/doc/api -name .svn`
 
+checksum: Portfile $(PACKAGE)-$(VERSION).tar.gz
+       rm -f Portfile.tmp
+       set HASH = `$(SHA1) $(PACKAGE)-$(VERSION).tar.gz`
+       sed < Portfile > Portfile.tmp \
+          -e 's:@CHECKSUM@:${HASH}:'
+       mv Portfile.tmp Portfile
+
 
 SUBDIRS = doc schemas xmltooling xmltoolingtest
 
 
 SUBDIRS = doc schemas xmltooling xmltoolingtest
 
+GENFILES = xmltooling.spec pkginfo Portfile
+
 if DX_COND_doc
 if DX_COND_doc
-all-local: doxygen-doc xmltooling.spec pkginfo
+all-local: doxygen-doc $(GENFILES)
 else
 else
-all-local: xmltooling.spec pkginfo
+all-local: $(GENFILES)
 endif
 
 install-data-hook:
        rm -rf $(DESTDIR)$(datadir)/doc/@PACKAGE@/api
        cp -r doc/api $(DESTDIR)$(datadir)/doc/@PACKAGE@
 
 endif
 
 install-data-hook:
        rm -rf $(DESTDIR)$(datadir)/doc/@PACKAGE@/api
        cp -r doc/api $(DESTDIR)$(datadir)/doc/@PACKAGE@
 
-xmltooling.spec: xmltooling.spec.in Makefile
-       rm -f $@.tmp
-       sed < $@.in > $@.tmp \
-           -e 's:@-VERSION-@:${VERSION}:'
-       mv $@.tmp $@
-
-pkginfo: pkginfo.in Makefile
+$(GENFILES): %: %.in Makefile
        rm -f $@.tmp
        sed < $@.in > $@.tmp \
            -e 's:@-VERSION-@:${VERSION}:'
        rm -f $@.tmp
        sed < $@.in > $@.tmp \
            -e 's:@-VERSION-@:${VERSION}:'
@@ -43,11 +46,9 @@ EXTRA_DIST = $(DX_CONFIG) \
         doxygen.m4 \
         depcomp \
         config_win32.h \
         doxygen.m4 \
         depcomp \
         config_win32.h \
-        xmltooling.spec.in \
-        xmltooling.spec \
-        pkginfo.in \
-        pkginfo \
+        $(GENFILES) \
+        $(GENFILES:%=%.in) \
         depend \
         postinstall
 
         depend \
         postinstall
 
-DISTCLEANFILES = xmltooling.spec pkginfo
+DISTCLEANFILES = $(GENFILES)
index b016883..f53f1fb 100644 (file)
@@ -1,12 +1,12 @@
 Name:          xmltooling
 Name:          xmltooling
-Summary:       Open source XMLTooling library
 Version:       @-VERSION-@
 Release:       1
 Version:       @-VERSION-@
 Release:       1
+Summary:    OpenSAML XMLTooling library
 Group:         System Environment/Libraries
 Vendor:                Internet2
 License:       Apache 2.0
 URL:           http://www.opensaml.org/
 Group:         System Environment/Libraries
 Vendor:                Internet2
 License:       Apache 2.0
 URL:           http://www.opensaml.org/
-Source0:       %{name}-%{version}.tar.gz
+Source:            %{name}-%{version}.tar.gz
 BuildRoot:     %{_tmppath}/%{name}-%{version}-root
 %if 0%{?suse_version} > 1030
 BuildRequires:  libXerces-c-devel >= 2.8.0
 BuildRoot:     %{_tmppath}/%{name}-%{version}-root
 %if 0%{?suse_version} > 1030
 BuildRequires:  libXerces-c-devel >= 2.8.0
@@ -14,7 +14,7 @@ BuildRequires:  libXerces-c-devel >= 2.8.0
 BuildRequires:  xerces%{?xercesver}-c-devel >= 2.8.0
 %endif
 BuildRequires: xml-security-c-devel >= 1.4.0
 BuildRequires:  xerces%{?xercesver}-c-devel >= 2.8.0
 %endif
 BuildRequires: xml-security-c-devel >= 1.4.0
-BuildRequires: openssl-devel, curl-devel >= 7.10.6
+BuildRequires: gcc-c++, openssl-devel, curl-devel >= 7.10.6
 %{?_with_log4cpp:BuildRequires:        log4cpp-devel >= 1.0}
 %{!?_with_log4cpp:BuildRequires: log4shib-devel}
 
 %{?_with_log4cpp:BuildRequires:        log4cpp-devel >= 1.0}
 %{!?_with_log4cpp:BuildRequires: log4shib-devel}
 
@@ -25,12 +25,31 @@ for declaring element- and type-specific API and implementation
 classes to add value around the DOM, as well as signing and encryption
 support.
 
 classes to add value around the DOM, as well as signing and encryption
 support.
 
-This package contains the xmltooling runtime library.
+%if 0%{?suse_version} > 1030
+%package -n libxmltooling12
+Summary:    OpenSAML XMLTooling library
+Group:      Development/Libraries
+Provides:   xmltooling = %{version}
+
+%description -n libxmltooling12
+The XMLTooling library contains generic XML parsing and processing
+classes based on the Xerces-C DOM. It adds more powerful facilities
+for declaring element- and type-specific API and implementation
+classes to add value around the DOM, as well as signing and encryption
+support.
 
 
+This package contains just the shared library.
+%endif
+
+%if 0%{?suse_version} > 1030
+%package -n libxmltooling-devel
+Requires: libxmltooling12 = %version
+%else
 %package devel
 %package devel
+Requires: %name = %version
+%endif
 Summary: XMLTooling development Headers
 Group: Development/Libraries
 Summary: XMLTooling development Headers
 Group: Development/Libraries
-Requires: %{name} = %{version}
 %if 0%{?suse_version} > 1030
 Requires: libXerces-c-devel >= 2.8.0
 %else
 %if 0%{?suse_version} > 1030
 Requires: libXerces-c-devel >= 2.8.0
 %else
@@ -41,23 +60,19 @@ Requires: openssl-devel, curl-devel >= 7.10.6
 %{?_with_log4cpp:Requires: log4cpp-devel >= 1.0}
 %{!?_with_log4cpp:Requires: log4shib-devel}
 
 %{?_with_log4cpp:Requires: log4cpp-devel >= 1.0}
 %{!?_with_log4cpp:Requires: log4shib-devel}
 
-%description devel
+%if 0%{?suse_version} > 1030
+%description -n libxmltooling-devel
+Requires: libxmltooling12 = %version
+%else
+%description
+%endif
 The XMLTooling library contains generic XML parsing and processing
 classes based on the Xerces-C DOM. It adds more powerful facilities
 for declaring element- and type-specific API and implementation
 classes to add value around the DOM, as well as signing and encryption
 support.
 
 The XMLTooling library contains generic XML parsing and processing
 classes based on the Xerces-C DOM. It adds more powerful facilities
 for declaring element- and type-specific API and implementation
 classes to add value around the DOM, as well as signing and encryption
 support.
 
-This package contains the headers and other necessary files to build
-applications or libraries that use or extend the xmltooling library.
-
-%package docs
-Summary: XMLTooling API Documentation
-Group: Development/Libraries
-Requires: %{name} = %{version}
-
-%description docs
-XMLTooling Library API documentation generated by doxygen.
+This package includes files needed for development with xmltooling.
 
 %prep
 %setup -q
 
 %prep
 %setup -q
@@ -67,10 +82,9 @@ XMLTooling Library API documentation generated by doxygen.
 %{__make}
 
 %install
 %{__make}
 
 %install
-[ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
 %{__make} install DESTDIR=$RPM_BUILD_ROOT
 %{__make} install DESTDIR=$RPM_BUILD_ROOT
-find $RPM_BUILD_ROOT/%{_bindir} -type f |
-  %{__sed} -e "s|$RPM_BUILD_ROOT||" | sort > rpm.binlist
+# Don't package unit tester if present.
+{__rm} $RPM_BUILD_ROOT/%{_bindir}/xmltoolingtest
 
 %check
 %{__make} check
 
 %check
 %{__make} check
@@ -78,20 +92,41 @@ find $RPM_BUILD_ROOT/%{_bindir} -type f |
 %clean
 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
 
 %clean
 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
 
-%ifnos solaris2.8 solaris2.9 solaris2.10 
+%ifnos solaris2.8 solaris2.9 solaris2.10
+%if 0%{?suse_version} > 1030
+%post -n libxmltooling12 -p /sbin/ldconfig
+%else
 %post -p /sbin/ldconfig
 %endif
 %post -p /sbin/ldconfig
 %endif
+%endif
 
 
-%ifnos solaris2.8 solaris2.9 solaris2.10 
+%ifnos solaris2.8 solaris2.9 solaris2.10
+%if 0%{?suse_version} > 1030
+%postun -n libxmltooling12 -p /sbin/ldconfig
+%else
 %postun -p /sbin/ldconfig
 %endif
 %postun -p /sbin/ldconfig
 %endif
+%endif
 
 
-%files -f rpm.binlist
+%if 0%{?suse_version} > 1030
+%files -n libxmltooling12
+%else
+%files
+%endif
 %defattr(-,root,root,-)
 %{_libdir}/libxmltooling.so.*
 %{_libdir}/libxmltooling-lite.so.*
 %dir %{_datadir}/xml/xmltooling
 %{_datadir}/xml/xmltooling
 %defattr(-,root,root,-)
 %{_libdir}/libxmltooling.so.*
 %{_libdir}/libxmltooling-lite.so.*
 %dir %{_datadir}/xml/xmltooling
 %{_datadir}/xml/xmltooling
+
+%if 0%{?suse_version} > 1030
+%files -n libxmltooling-devel
+%else
+%files devel
+%endif
+%defattr(-,root,root,-)
+%{_includedir}/*
+%{_libdir}/*.so
 %docdir %{_datadir}/doc/xmltooling
 %{_datadir}/doc/xmltooling/README.txt
 %{_datadir}/doc/xmltooling/LICENSE.txt
 %docdir %{_datadir}/doc/xmltooling
 %{_datadir}/doc/xmltooling/README.txt
 %{_datadir}/doc/xmltooling/LICENSE.txt
@@ -99,21 +134,16 @@ find $RPM_BUILD_ROOT/%{_bindir} -type f |
 %{_datadir}/doc/xmltooling/CURL.LICENSE
 %{_datadir}/doc/xmltooling/LOG4CPP.LICENSE
 %{_datadir}/doc/xmltooling/OPENSSL.LICENSE
 %{_datadir}/doc/xmltooling/CURL.LICENSE
 %{_datadir}/doc/xmltooling/LOG4CPP.LICENSE
 %{_datadir}/doc/xmltooling/OPENSSL.LICENSE
-
-%files devel
-%defattr(-,root,root,-)
-%{_includedir}
-%{_libdir}/libxmltooling.so
-%{_libdir}/libxmltooling-lite.so
-
-%files docs
-%defattr(644,root,root,755)
 %doc %{_datadir}/doc/xmltooling/api
 
 %changelog
 %doc %{_datadir}/doc/xmltooling/api
 
 %changelog
+* Thu Aug 6 2009  Scott Cantor  <cantor.2@osu.edu>  - 1.2.1-1
+- SuSE conventions
+- Stop packaging unit tester
+
 * Wed Dec 3 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.2-1
 - Bumping for minor update.
 * Wed Dec 3 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.2-1
 - Bumping for minor update.
-- Fixing SUSE Xerces dependency name.
+- Fixing SuSE Xerces dependency name.
 
 * Tue Jul 1 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.1-1
 - Bumping for minor update.
 
 * Tue Jul 1 2008  Scott Cantor  <cantor.2@osu.edu>  - 1.1-1
 - Bumping for minor update.