1 DESCRIPTION = "Berkeley DB Database Library Version 4.8"
2 HOMEPAGE = "http://www.sleepycat.com"
3 SECTION = "System/Libraries"
4 LICENSE = "BSD-3-Clause"
14 RPROVIDES_db4-doc += "db4-doc"
16 #PROVIDES by db4-utils
17 PROVIDES += "db4-utils"
18 RPROVIDES_db4-utils += "db4-utils"
22 RPROVIDES_db4 += "db4"
23 # the PROVIDES rules is ignore "db = 4.8.30.NC"
27 #PROVIDES by db4-devel
28 PROVIDES += "db4-devel"
29 RPROVIDES_db4-devel += "db4-devel"
30 RPROVIDES_db4-devel += "db4-dev"
33 #RDEPENDS of db4-devel (${PN}-devel)
34 RDEPENDS_${PN}-devel += "glibc-dev"
35 RDEPENDS_${PN}-devel += "db4"
40 DEPENDS += "autoconf-native"
42 DEPENDS += "fdupes-native"
45 chmod -Rf a+rX,u+w,g-w,o-w ${S}
46 #setup -q -n db-4.8.30.NC
47 cp ${S}/packaging/db4.manifest .
59 CFLAGS="-O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables" ; export CFLAGS ;
60 CXXFLAGS="${CXXFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables}" ; export CXXFLAGS ;
61 FFLAGS="${FFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -I%_fmoddir}" ; export FFLAGS ;
62 LD_AS_NEEDED=1; export LD_AS_NEEDED ;
65 # dist/RELEASE codes the build date into the binary.
66 # Use last change of changes file instead
67 LAST_MOD=`stat --format="%Y" ${S}/packaging/db4.changes`
68 DIST_DATE=`date '+%B %e, %Y' --date="@$LAST_MOD"`
69 sed -i -e "s/^DB_RELEASE_DATE=.*$/DB_RELEASE_DATE=\"$DIST_DATE\"/" RELEASE
71 CFLAGS="-O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -fno-strict-aliasing"
73 export CFLAGS CXXFLAGS CC
75 # Build now the NPTL version
79 ../dist/configure --prefix=/usr \
80 --libdir=/usr/lib --enable-compat185 --disable-dump185 \
81 --enable-shared --disable-static --enable-cxx \
82 --with-mutex="POSIX/pthreads/library" \
84 # Make sure O_DIRECT is really disabled (build host could have old kernel)
85 perl -pi -e 's/#define HAVE_O_DIRECT 1/#undef HAVE_O_DIRECT/' db_config.h
86 # Remove libtool predep_objects and postdep_objects wonkiness
87 perl -pi -e 's/^predep_objects=".*$/predep_objects=""/' libtool
88 perl -pi -e 's/^postdep_objects=".*$/postdep_objects=""/' libtool
89 perl -pi -e 's/-shared -nostdlib/-shared/' libtool
91 make -j16 LIBSO_LIBS='$(LIBS)' LIBXSO_LIBS='$(LIBS)'" -L/usr/lib -lstdc++"
98 echo export RPM_BUILD_ROOT=${D}
105 mkdir -p ${D}/usr/include/db4
106 CONFIG_ARGS=$(find . -name "config.log" -exec grep "\$ \.\./dist\/configure" {} \; | sed 's/.*configure\( --.*\)/\1/g')
107 if [ -z "$CONFIG_ARGS" ]
109 echo "could not find configure arguments ... exiting"
112 mkdir -p ${D}/usr/lib
114 make prefix=${D}/usr libdir=${D}/usr/lib strip=true install
117 chmod 755 ${D}/usr/lib/libdb*.so
118 # Fix header file installation
119 mv ${D}/usr/include/*.h ${D}/usr/include/db4
120 echo "#include <db4/db.h>" > ${D}/usr/include/db.h
121 echo "#include <db4/db_185.h>" > ${D}/usr/include/db_185.h
122 echo "#include <db4/db_cxx.h>" > ${D}/usr/include/db_cxx.h
123 # remove dangling tags symlink from examples.
124 rm -f examples_cxx/tags
125 rm -f examples_c/tags
126 # Move documentation to the right directory
127 mkdir -p ${D}/usr/share/doc/packages/db4
128 mv ${D}/usr/docs/* ${D}//usr/share/doc/packages/db4
129 cp -a examples_cxx examples_c ${D}//usr/share/doc/packages/db4
130 cp -a LICENSE README ${D}//usr/share/doc/packages/db4
132 # Remove api documentation for C++, Java and TCL
133 rm -rf ${D}//usr/share/doc/packages/db4/csharp
134 rm -rf ${D}//usr/share/doc/packages/db4/java
135 rm -rf ${D}//usr/share/doc/packages/db4/api_reference/CXX
136 rm -rf ${D}//usr/share/doc/packages/db4/api_reference/STL
137 rm -rf ${D}//usr/share/doc/packages/db4/api_reference/TCL
138 rm -rf ${D}//usr/share/doc/packages/db4/gsg*/CXX
139 rm -rf ${D}//usr/share/doc/packages/db4/gsg*/JAVA
140 mv ${D}//usr/share/doc/packages/db4/collections/tutorial ${D}//usr/share/doc/packages/db4/
141 # Remove crappy *.la files
142 rm -rf ${D}/usr/lib/*.la
143 rm -rf ${D}/usr/lib/tls/*.la
148 fdupes -q -n -r ${D}/usr/lib |
150 if test -z "$_target" ; then
153 if test -z "$_file" ; then
157 if test "$_symlinks" = 1; then
158 ln -sf "${_target#${D}}" "$_file";
160 ln -f "$_target" "$_file";
168 fdupes -q -n -r ${D}/usr/share/doc/packages/db4 |
170 if test -z "$_target" ; then
173 if test -z "$_file" ; then
177 if test "$_symlinks" = 1; then
178 ln -sf "${_target#${D}}" "$_file";
180 ln -f "$_target" "$_file";
189 PACKAGES += "db4-doc"
190 PACKAGES += "db4-utils"
192 PACKAGES += "db4-devel"
195 db4-doc_files += "db4.manifest"
196 db4-doc_files += "/usr/share/doc/packages/db4"
197 db4-doc_files += "/usr/share/doc/packages/db4/LICENSE"
198 db4-doc_files += "/usr/share/doc/packages/db4/README"
199 db4-doc_files += "/usr/share/doc/packages/db4/index.html"
200 db4-doc_files += "/usr/share/doc/packages/db4/license"
201 db4-doc_files += "/usr/share/doc/packages/db4/articles"
202 db4-doc_files += "/usr/share/doc/packages/db4/api_reference"
203 db4-doc_files += "/usr/share/doc/packages/db4/examples_c"
204 db4-doc_files += "/usr/share/doc/packages/db4/examples_cxx"
205 db4-doc_files += "/usr/share/doc/packages/db4/gsg*"
206 db4-doc_files += "/usr/share/doc/packages/db4/porting"
207 db4-doc_files += "/usr/share/doc/packages/db4/programmer_reference"
208 db4-doc_files += "/usr/share/doc/packages/db4/tutorial"
211 db4-utils_files += "db4.manifest"
212 db4-utils_files += "/usr/bin/db_archive"
213 db4-utils_files += "/usr/bin/db_checkpoint"
214 db4-utils_files += "/usr/bin/db_deadlock"
215 db4-utils_files += "/usr/bin/db_dump"
216 db4-utils_files += "/usr/bin/db_load"
217 db4-utils_files += "/usr/bin/db_printlog"
218 db4-utils_files += "/usr/bin/db_recover"
219 db4-utils_files += "/usr/bin/db_sql"
220 db4-utils_files += "/usr/bin/db_stat"
221 db4-utils_files += "/usr/bin/db_upgrade"
222 db4-utils_files += "/usr/bin/db_verify"
223 db4-utils_files += "/usr/bin/db_hotbackup"
226 db4_files += "db4.manifest"
227 db4_files += "/usr/lib/libdb-4.8.so"
228 db4_files += "/usr/lib/libdb_cxx-4.8.so"
231 db4-devel_files += "db4.manifest"
232 db4-devel_files += "/usr/include/db4"
233 db4-devel_files += "/usr/include/db.h"
234 db4-devel_files += "/usr/include/db_185.h"
235 db4-devel_files += "/usr/include/db_cxx.h"
236 db4-devel_files += "/usr/include/db4/db.h"
237 db4-devel_files += "/usr/include/db4/db_185.h"
238 db4-devel_files += "/usr/include/db4/db_cxx.h"
239 db4-devel_files += "/usr/lib/libdb.so"
240 db4-devel_files += "/usr/lib/libdb-4.so"
241 db4-devel_files += "/usr/lib/libdb_cxx.so"
242 db4-devel_files += "/usr/lib/libdb_cxx-4.so"
244 FILES_${PN}-doc = "${db4-doc_files}"
245 FILES_${PN}-utils = "${db4-utils_files}"
246 FILES_${PN} = "${db4_files}"
247 FILES_${PN}-devel = "${db4-devel_files}"
249 PKG_db4-doc= "db4-doc"
250 PKG_db4-utils= "db4-utils"
252 PKG_db4-devel= "db4-devel"
254 require db4-extraconf.inc