Changeset: 53d8701a8ba0 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=53d8701a8ba0
Added Files:
        debian/libmonetdb-dev.install
        debian/monetdb5-server-dev.install
        gdk/monetdb-gdk.pc.in
        monetdb5/tools/monetdb5.pc.in
Modified Files:
        Makefile.ag
        MonetDB.spec
        common/options/Makefile.ag
        debian/control
        gdk/Makefile.ag
        monetdb5/mal/Makefile.ag
        monetdb5/tools/Makefile.ag
Branch: default
Log Message:

Install and package files needed to build extensions.
There are two new -devel/-dev packages, one for GDK extensions and one
for MAL extensions.  Together they are enough to create SQL UDFs
outside of the MonetDB source tree.


diffs (288 lines):

diff --git a/Makefile.ag b/Makefile.ag
--- a/Makefile.ag
+++ b/Makefile.ag
@@ -28,3 +28,9 @@ EXTRA_DIST = bootstrap configure configu
                         MonetDB.spec rpm.mk.in COPYING README license.txt 
HowToStart.rst
 
 EXTRA_DIST_DIR = NT debian
+
+headers_config = {
+       DIR = includedir/monetdb
+       HEADERS = h
+       SOURCES = monetdb_config.h
+}
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -57,8 +57,6 @@ BuildRequires: rubygems-devel
 BuildRequires: unixODBC-devel
 BuildRequires: zlib-devel
 
-Obsoletes: %{name}-devel
-
 %define perl_libdir %(perl -MConfig -e '$x=$Config{installvendorarch}; $x =~ 
s|$Config{vendorprefix}/||; print $x;')
 # need to define python_sitelib on RHEL 5 and older
 # no need to define python3_sitelib: it's defined by python3-devel
@@ -81,6 +79,28 @@ need this package, but you will also nee
 %defattr(-,root,root)
 %{_libdir}/libbat.so.*
 
+%package devel
+Summary: MonetDB development files
+Group: Applications/Databases
+Requires: %{name} = %{version}-%{release}
+
+%description 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.  It also has an SQL frontend.
+
+This package contains files needed to develop extensions to the core
+functionality of MonetDB.
+
+%files devel
+%defattr(-,root,root)
+%dir %{_includedir}/monetdb
+%{_includedir}/monetdb/gdk*.h
+%{_includedir}/monetdb/monet*.h
+%{_libdir}/libbat.so
+%{_libdir}/pkgconfig/monetdb-gdk.pc
+
 %package stream
 Summary: MonetDB stream library
 Group: Applications/Databases
@@ -404,7 +424,6 @@ Summary: MonetDB - Monet Database Manage
 Group: Applications/Databases
 Requires(pre): shadow-utils
 Requires: %{name}-client = %{version}-%{release}
-Obsoletes: MonetDB5-server-devel
 Obsoletes: MonetDB5-server-rdf
 
 %description -n MonetDB5-server
@@ -469,6 +488,27 @@ fi
 %{_libdir}/monetdb5/*.so
 %doc %{_mandir}/man1/mserver5.1.gz
 
+%package -n MonetDB5-server-devel
+Summary: MonetDB development files
+Group: Applications/Databases
+Requires: MonetDB5-server = %{version}-%{release}
+
+%description -n MonetDB5-server-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.  It also has an SQL frontend.
+
+This package contains files needed to develop extensions that can be
+used from the MAL level.
+
+%files -n MonetDB5-server-devel
+%defattr(-,root,root)
+%dir %{_includedir}/monetdb
+%{_includedir}/monetdb/mal*.h
+%{_libdir}/libmonetdb5.so
+%{_libdir}/pkgconfig/monetdb5.pc
+
 # %package -n MonetDB5-server-rdf
 # Summary: MonetDB RDF interface
 # Group: Applications/Databases
@@ -705,9 +745,6 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
 rm -f $RPM_BUILD_ROOT%{_libdir}/monetdb5/*.la
 # internal development stuff
 rm -f $RPM_BUILD_ROOT%{_bindir}/Maddlog
-rm -f $RPM_BUILD_ROOT%{_libdir}/libbat.so
-rm -f $RPM_BUILD_ROOT%{_libdir}/libmonet.so
-rm -f $RPM_BUILD_ROOT%{_libdir}/libmonetdb5.so
 
 %post -p /sbin/ldconfig
 
diff --git a/common/options/Makefile.ag b/common/options/Makefile.ag
--- a/common/options/Makefile.ag
+++ b/common/options/Makefile.ag
@@ -21,8 +21,14 @@ MTSAFE
 
 EXTRA_DIST = getopt.c getopt1.c
 
-lib_moptions = { 
+lib_moptions = {
        NOINST
        NAME = moptions
        SOURCES = monet_options.c monet_options.h monet_getopt.h
 }
+
+headers_h = {
+       DIR = includedir/monetdb
+       HEADERS = h
+       SOURCES = monet_options.h
+}
diff --git a/debian/control b/debian/control
--- a/debian/control
+++ b/debian/control
@@ -19,8 +19,8 @@ X-Python3-Version: >= 3.0
 Package: libmonetdb9
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
-Conflicts: libmonetdb1, libmonetdb2, libmonetdb-dev
-Replaces: libmonetdb1, libmonetdb2, libmonetdb-dev
+Conflicts: libmonetdb1, libmonetdb2
+Replaces: libmonetdb1, libmonetdb2
 Description: MonetDB core library
  MonetDB is a database management system that is developed from a
  main-memory perspective with use of a fully decomposed storage model,
@@ -31,6 +31,18 @@ Description: MonetDB core library
  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: libmonetdb-dev
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, libmonetdb9
+Description: MonetDB development files
+ 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.  It also has an SQL frontend.
+ .
+ This package contains files needed to develop extensions to the core
+ functionality of MonetDB.
+
 Package: libmonetdb-stream3
 Conflicts: libmonetdb-stream2
 Replaces: libmonetdb-stream2
@@ -203,6 +215,18 @@ Description: MonetDB database server ver
  package if you want to work using the MAL language, or if you want to
  use the SQL frontend (in which case you need monetdb5-sql as well).
 
+Package: monetdb5-server-dev
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, monetdb5-server
+Description: MonetDB database server version 5
+ 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.  It also has an SQL frontend.
+ .
+ This package contains files needed to develop extensions that can be
+ used from the MAL level.
+
 Package: monetdb5-jaql
 Section: libs
 Architecture: any
diff --git a/debian/libmonetdb-dev.install b/debian/libmonetdb-dev.install
new file mode 100644
--- /dev/null
+++ b/debian/libmonetdb-dev.install
@@ -0,0 +1,4 @@
+debian/tmp/usr/lib/libbat.so usr/lib
+debian/tmp/usr/include/monetdb/gdk*.h usr/include/monetdb
+debian/tmp/usr/include/monetdb/monet*.h usr/include/monetdb
+debian/tmp/usr/lib/pkgconfig/monetdb-gdk.pc usr/lib/pkgconfig
diff --git a/debian/monetdb5-server-dev.install 
b/debian/monetdb5-server-dev.install
new file mode 100644
--- /dev/null
+++ b/debian/monetdb5-server-dev.install
@@ -0,0 +1,3 @@
+debian/tmp/usr/lib/libmonetdb5.so usr/lib
+debian/tmp/usr/include/monetdb/mal*.h usr/include/monetdb
+debian/tmp/usr/lib/pkgconfig/monetdb5.pc usr/lib/pkgconfig
diff --git a/gdk/Makefile.ag b/gdk/Makefile.ag
--- a/gdk/Makefile.ag
+++ b/gdk/Makefile.ag
@@ -47,3 +47,26 @@ lib_gdk = {
                $(MATH_LIBS) $(SOCKET_LIBS) $(zlib_LIBS) $(BZ_LIBS) \
                $(MALLOC_LIBS) $(PTHREAD_LIBS) $(DL_LIBS) $(PSAPILIB) 
$(KVM_LIBS)
 }
+
+headers_h = {
+       DIR = includedir/monetdb
+       HEADERS = h
+       SOURCES = \
+               gdk.h \
+               gdk_atomic.h \
+               gdk_atoms.h \
+               gdk_bbp.h \
+               gdk_calc.h \
+               gdk_delta.h \
+               gdk_posix.h \
+               gdk_search.h \
+               gdk_system.h \
+               gdk_utils.h
+}
+
+headers_pc = {
+       COND = NOT_WIN32
+       HEADERS = pc
+       DIR = libdir/pkgconfig
+       SOURCES = monetdb-gdk.pc.in
+}
diff --git a/gdk/monetdb-gdk.pc.in b/gdk/monetdb-gdk.pc.in
new file mode 100644
--- /dev/null
+++ b/gdk/monetdb-gdk.pc.in
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: monetdb-gdk
+Description: MonetDB GDK libary
+Version: @PACKAGE_VERSION@
+
+Libs: -L${libdir} -lbat
+Cflags: -I${includedir}/monetdb
diff --git a/monetdb5/mal/Makefile.ag b/monetdb5/mal/Makefile.ag
--- a/monetdb5/mal/Makefile.ag
+++ b/monetdb5/mal/Makefile.ag
@@ -62,4 +62,18 @@ lib_mal = {
                mal_xml.c mal_xml.h
 }
 
+headers_h = {
+       DIR = includedir/monetdb
+       HEADERS = h
+       SOURCES = \
+               mal.h \
+               mal_errors.h \
+               mal_exception.h \
+               mal_instruction.h \
+               mal_namespace.h \
+               mal_properties.h \
+               mal_stack.h \
+               mal_type.h
+}
+
 EXTRA_DIST_DIR = Tests
diff --git a/monetdb5/tools/Makefile.ag b/monetdb5/tools/Makefile.ag
--- a/monetdb5/tools/Makefile.ag
+++ b/monetdb5/tools/Makefile.ag
@@ -40,4 +40,11 @@ lib_monetdb5 = {
                $(LTLIBICONV) $(zlib_LIBS) $(libxml2_LIBS)
 }
 
+headers_pc = {
+       COND = NOT_WIN32
+       HEADERS = pc
+       DIR = libdir/pkgconfig
+       SOURCES = monetdb5.pc.in
+}
+
 EXTRA_DIST_DIR = Tests
diff --git a/monetdb5/tools/monetdb5.pc.in b/monetdb5/tools/monetdb5.pc.in
new file mode 100644
--- /dev/null
+++ b/monetdb5/tools/monetdb5.pc.in
@@ -0,0 +1,12 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: monetdb5
+Description: MonetDB5
+Version: @PACKAGE_VERSION@
+Requires: monetdb-gdk
+
+Libs: -L${libdir} -lmonetdb5 -lbat
+Cflags: -I${includedir}/monetdb
_______________________________________________
checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to