Changeset: 3095c90298b3 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3095c90298b3
Modified Files:
        MonetDB.spec
        monetdb4/monet/Makefile.ag
        monetdb5/tools/Makefile.ag
        sql/backends/monet5/Makefile.ag
Branch: default
Log Message:

Fixed .spec file for new situation.
Various RPMs have been removed (with added Obsoletes).
Added MonetDB-stream{,-devel} RPMs.
Implemented adding ODBC driver information to system file (using
odbcinst).
Implemented move of /var/MonetDB5 to /var/monetdb5.
Added lib_rdf library conditionally to sql module so that RPM knows
there is a dependency.
Moved libmonet{,db5}.* back to /usr/lib{,64} since otherwise RPM can't
find them when looking for dependencies.  And since these libraries
are linked to by other pieces of code (e.g. geom module), it makes
sense.


diffs (truncated from 940 to 300 lines):

diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -28,6 +28,7 @@
 
 BuildRequires: bzip2-devel
 BuildRequires: geos-devel >= 2.2.0
+BuildRequires: libcurl-devel
 BuildRequires: libxml2-devel
 BuildRequires: openssl-devel >= 0.9.8f
 BuildRequires: pcre-devel >= 4.5
@@ -42,6 +43,8 @@
 BuildRequires: unixODBC-devel
 BuildRequires: zlib-devel
 
+Obsoletes: %{name}-devel
+
 %define perl_libdir %(perl -MConfig -e '$x=$Config{installvendorarch}; $x =~ 
s|$Config{vendorprefix}/||; print $x;')
 %if ! (0%{?fedora} > 12 || 0%{?rhel} > 5)
 %{!?python_sitelib: %global python_sitelib %(%{__python} -c "from 
distutils.sysconfig import get_python_lib; print(get_python_lib())")}
@@ -55,64 +58,60 @@
 automatic index management, extensibility of data types and search
 accelerators, SQL- and XML- frontends.
 
-This package contains the core components of MonetDB.  If you want to
-use MonetDB, you will certainly need this package.
+This package contains the core components of MonetDB in the form of a
+single shared library.  If you want to use MonetDB, you will certainly
+need this package, but you will also need one of the server packages.
 
-%package devel
-Summary: MonetDB development package
+%files
+%defattr(-,root,root)
+%{_libdir}/libbat.so.*
+
+%package stream
+Summary: MonetDB stream library
 Group: Applications/Databases
-Obsoletes: MonetDB-client-devel
-Obsoletes: MonetDB-geom-devel
-Obsoletes: MonetDB4-server-devel
-Obsoletes: MonetDB5-server-devel
-Obsoletes: MonetDB4-XQuery-devel
-Obsoletes: MonetDB-SQL-devel
-Requires: %{name} = %{version}-%{release}
-Requires: %{name}-clients = %{version}-%{release}
-Requires: %{name}-clients-odbc = %{version}-%{release}
-Requires: %{name}-geom-MonetDB4 = %{version}-%{release}
-Requires: %{name}-geom-MonetDB5 = %{version}-%{release}
-Requires: MonetDB4-server = %{version}-%{release}
-%if %{?_with_netcdf:1}%{!?_with_netcdf:0}
-Requires: MonetDB4-server-netcdf = %{version}-%{release}
-%endif
-Requires: MonetDB5-server = %{version}-%{release}
-Requires: MonetDB5-server-rdf = %{version}-%{release}
-Requires: %{name}-SQL-server5 = %{version}-%{release}
-Requires: MonetDB4-XQuery = %{version}-%{release}
-Requires: MonetDB4-XQuery-ferry = %{version}-%{release}
 
-Requires: bzip2-devel
-Requires: geos-devel >= 2.2.0
-Requires: libxml2-devel
-%if %{?_with_netcdf:1}%{!?_with_netcdf:0}
-Requires: netcdf-devel
-%endif
-Requires: openssl-devel >= 0.9.8f
-Requires: pcre-devel >= 4.5
-Requires: perl
-Requires: perl-devel
-Requires: python
-Requires: raptor-devel >= 1.4.16
-Requires: readline-devel
-Requires: ruby
-Requires: rubygems
-Requires: swig
-Requires: unixODBC-devel
-Requires: zlib-devel
-
-%description devel
+%description stream
 MonetDB is a database management system that is developed from a
 main-memory perspective with use of a fully decomposed storage model,
 automatic index management, extensibility of data types and search
 accelerators, SQL- and XML- frontends.
 
-This package contains the files needed to develop with MonetDB.
+This package contains a shared library (libstream) which is needed by
+various other components.
+
+%files stream
+%defattr(-,root,root)
+%{_libdir}/libstream.so.*
+
+%package stream-devel
+Summary: MonetDB stream library
+Group: Applications/Databases
+Requires: %{name}-stream = %{version}-%{release}
+Requires: bzip2-devel
+Requires: libcurl-devel
+Requires: zlib-devel
+
+%description stream-devel
+MonetDB is a database management system that is developed from a
+main-memory perspective with use of a fully decomposed storage model,
+automatic index management, extensibility of data types and search
+accelerators, SQL- and XML- frontends.
+
+This package contains the files to develop with the %{name}-stream
+library.
+
+%files stream-devel
+%defattr(-,root,root)
+%dir %{_includedir}/monetdb
+%{_libdir}/libstream.so
+%{_libdir}/libstream.la
+%{_includedir}/monetdb/stream.h
+%{_includedir}/monetdb/stream_socket.h
+%{_libdir}/pkgconfig/monetdb-stream.pc
 
 %package client
 Summary: MonetDB - Monet Database Management System Client Programs
 Group: Applications/Databases
-Requires: %{name} = %{version}-%{release}
 
 %description client
 MonetDB is a database management system that is developed from a
@@ -125,10 +124,44 @@
 database so that it can be loaded back later.  If you want to use
 MonetDB, you will very likely need this package.
 
+%files client
+%defattr(-,root,root)
+%{_bindir}/mclient
+%{_bindir}/msqldump
+%{_bindir}/stethoscope
+%{_libdir}/libmapi.so.*
+%doc %{_mandir}/man1/mclient.1.gz
+%doc %{_mandir}/man1/msqldump.1.gz
+
+%package client-devel
+Summary: MonetDB - Monet Database Management System Client Programs
+Group: Applications/Databases
+Requires: %{name}-client = %{version}-%{release}
+Requires: %{name}-stream-devel = %{version}-%{release}
+Requires: openssl-devel >= 0.9.8f
+
+%description client-devel
+MonetDB is a database management system that is developed from a
+main-memory perspective with use of a fully decomposed storage model,
+automatic index management, extensibility of data types and search
+accelerators, SQL- and XML- frontends.
+
+This package contains the files needed to develop with the
+%{name}-client package.
+
+%files client-devel
+%defattr(-,root,root)
+%dir %{_includedir}/monetdb
+%{_libdir}/libmapi.so
+%{_libdir}/libmapi.la
+%{_includedir}/monetdb/mapi.h
+%{_libdir}/pkgconfig/monetdb-mapi.pc
+
 %package client-odbc
 Summary: MonetDB SQL odbc
 Group: Applications/Databases
 Requires: %{name}-client = %{version}-%{release}
+Requires(pre): unixODBC
 
 %description client-odbc
 MonetDB is a database management system that is developed from a
@@ -138,6 +171,28 @@
 
 This package contains the MonetDB ODBC driver.
 
+%post client-odbc
+# install driver if first install of package or if driver not installed yet
+if [ "$1" -eq 1 ] || ! grep -q MonetDB /etc/odbcinst.ini; then
+odbcinst -i -d -r <<EOF
+[MonetDB]
+Driver = %{_exec_prefix}/lib/libMonetODBC.so
+Setup = %{_exec_prefix}/lib/libMonetODBCs.so
+Driver64 = %{_exec_prefix}/lib64/libMonetODBC.so
+Setup64 = %{_exec_prefix}/lib64/libMonetODBCs.so
+EOF
+fi
+
+%postun client-odbc
+if [ "$1" -eq 0 ]; then
+odbcinst -u -d -n MonetDB
+fi
+
+%files client-odbc
+%defattr(-,root,root)
+%{_libdir}/libMonetODBC.*
+%{_libdir}/libMonetODBCs.*
+
 %package client-php
 Summary: MonetDB php interface
 Group: Applications/Databases
@@ -153,6 +208,11 @@
 This package contains the files needed to use MonetDB from a PHP
 program.
 
+%files client-php
+%defattr(-,root,root)
+%dir %{_datadir}/php/monetdb
+%{_datadir}/php/monetdb/*
+
 %package client-perl
 Summary: MonetDB perl interface
 Group: Applications/Databases
@@ -168,10 +228,16 @@
 This package contains the files needed to use MonetDB from a Perl
 program.
 
+%files client-perl
+%defattr(-,root,root)
+%{_prefix}/%{perl_libdir}/*
+%dir %{_datadir}/MonetDB/perl
+%{_datadir}/MonetDB/perl/*
+
 %package client-ruby
 Summary: MonetDB ruby interface
 Group: Applications/Databases
-Requires: ruby(abi) = 1.8
+Requires: ruby
 BuildArch: noarch
 
 %description client-ruby
@@ -183,11 +249,28 @@
 This package contains the files needed to use MonetDB from a Ruby
 program.
 
+%files client-ruby
+%defattr(-,root,root)
+%docdir %{gemdir}/doc/activerecord-monetdb-adapter-0.1
+%docdir %{gemdir}/doc/ruby-monetdb-sql-0.1
+%{gemdir}/doc/activerecord-monetdb-adapter-0.1/*
+%{gemdir}/doc/ruby-monetdb-sql-0.1/*
+%{gemdir}/cache/*.gem
+%dir %{gemdir}/gems/activerecord-monetdb-adapter-0.1
+%dir %{gemdir}/gems/ruby-monetdb-sql-0.1
+%{gemdir}/gems/activerecord-monetdb-adapter-0.1/*
+%{gemdir}/gems/ruby-monetdb-sql-0.1/*
+%{gemdir}/gems/ruby-monetdb-sql-0.1/.require_paths
+%{gemdir}/specifications/*.gemspec
+
 %package client-tests
 Summary: MonetDB Client tests package
 Group: Applications/Databases
 Requires: %{name}-client = %{version}-%{release}
 Requires: %{name}-client-odbc = %{version}-%{release}
+Requires: %{name}-client-perl = %{version}-%{release}
+Requires: %{name}-client-php = %{version}-%{release}
+Requires: python-monetdb = %{version}-%{release}
 
 %description client-tests
 MonetDB is a database management system that is developed from a
@@ -199,23 +282,27 @@
 MonetDB packages.  You probably don't need this, unless you are a
 developer.
 
-%package geom
-Summary: MonetDB Geom - Monet Database Management System
-Group: Applications/Databases
-
-%description geom
-MonetDB is a database management system that is developed from a
-main-memory perspective with use of a fully decomposed storage model,
-automatic index management, extensibility of data types and search
-accelerators, SQL- and XML- frontends.
-
-This package contains the common parts of the GIS (Geographic
-Information System) extensions for MonetDB-SQL.
+%files client-tests
+%defattr(-,root,root)
+%dir %{_libdir}/monetdb
+%dir %{_libdir}/monetdb/tests
+%{_bindir}/odbcsample1
+%{_bindir}/sample0
+%{_bindir}/sample1
+%{_bindir}/sample2
+%{_bindir}/sample3
+%{_bindir}/sample4
+%{_bindir}/smack00
+%{_bindir}/smack01
+%{_bindir}/testgetinfo
+%{_libdir}/monetdb/tests/*
 
 %package geom-MonetDB4
 Summary: MonetDB4 SQL GIS modules
 Group: Applications/Databases
 Requires: MonetDB4-server = %{version}-%{release}
+Obsoletes: %{name}-geom
+Obsoletes: %{name}-geom-devel
 
 %description geom-MonetDB4
 MonetDB is a database management system that is developed from a
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to