]> git.ipfire.org Git - ipfire-3.x.git/blob - libdb/libdb.nm
json-c: Update to version 0.17-20230812
[ipfire-3.x.git] / libdb / libdb.nm
1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
5
6 name = libdb
7 version_major = 6
8 version_minor = 1
9 version_patch = 26
10 version = %{version_major}.%{version_minor}.%{version_patch}
11 release = 5
12 thisapp = db-%{version}
13
14 soversion = %{version_major}.%{version_minor}
15
16 maintainer = Michael Tremer <michael.tremer@ipfire.org>
17 groups = System/Libraries
18 url = http://www.oracle.com/technology/products/berkeley-db/
19 license = Proprietary
20 summary = Berkeley DB is a library that provides an embedded database.
21
22 description
23 Berkeley DB (BDB) is a computer software library that provides
24 a high-performance embedded database.
25 end
26
27 source_dl = http://download.oracle.com/berkeley-db/
28
29 build
30 requires
31 automake
32 gcc-c++
33 libtool
34 patchelf
35 perl
36 zlib-devel
37 end
38
39 CFLAGS += -fno-strict-aliasing
40
41 DIR_APP = %{DIR_SRC}/%{thisapp}/dist/dist-tls
42
43 prepare_cmds
44 for i in $(find %{DIR_SRC}/%{thisapp} -name config.guess -or -name config.sub); do
45 cp -vf %{datadir}/automake-*/config.{guess,sub} $(dirname ${i})
46 done
47
48 mkdir -pv %{DIR_APP} && cd %{DIR_APP}
49 ln -svf ../configure .
50 end
51
52 MACRO_FIX_LIBTOOL
53 # Remove libtool predep_objects and postdep_objects wonkiness so that
54 # building without -nostdlib doesn't include them twice. Because we
55 # already link with g++, weird stuff happens if you don't let the
56 # compiler handle this.
57 perl -pi -e 's/^predep_objects=".*$/predep_objects=""/' libtool
58 perl -pi -e 's/^postdep_objects=".*$/postdep_objects=""/' libtool
59 perl -pi -e 's/-shared -nostdlib/-shared/' libtool
60 end
61
62 configure_options += \
63 -C \
64 --enable-compat185 \
65 --enable-cxx \
66 --enable-sql \
67 --disable-static \
68 --disable-rpath \
69 STRIP=:
70
71 install_cmds
72 # Remove RPATH in all binaries.
73 for i in %{BUILDROOT}%{bindir}/*; do
74 patchelf --remove-rpath ${i}
75 done
76
77 # Remove documentation which is very big.
78 rm -rf %{BUILDROOT}%{prefix}/docs
79
80 # Remove unversioned libs.
81 rm -vf %{BUILDROOT}%{libdir}/libdb*-%{version_major}.so
82
83 mkdir -pv %{BUILDROOT}%{includedir}/%{name}
84 mv -v %{BUILDROOT}%{includedir}/*.h %{BUILDROOT}%{includedir}/%{name}/
85 for i in db.h db_cxx.h db_185.h; do
86 ln -svf %{name}/${i} %{BUILDROOT}/%{includedir}
87 done
88
89 # Fix binary permissions.
90 find %{BUILDROOT}%{bindir} -type f -executable \
91 -exec chmod 755 {} \;
92
93 # Fix header permissions.
94 find %{BUILDROOT}%{includedir} -type f -iname "*.h" \
95 -exec chmod 644 {} \;
96 end
97 end
98
99 packages
100 package %{name}
101
102 package %{name}-devel
103 template DEVEL
104
105 obsoletes
106 compat-db-headers
107 end
108
109 # You cannot install libdb-devel and db4-devel
110 # at the same time.
111 conflicts
112 compat-db-headers
113 db4-devel
114 end
115
116 files += !%{libdir}/libdb-%{soversion}.so
117 files += !%{libdir}/libdb_sql-%{soversion}.so
118 end
119
120 package %{name}-utils
121 summary = Command line tools for managing Berkeley DB (version 4) databases.
122 description = %{summary}
123
124 files
125 /usr/bin
126 end
127 end
128
129 package %{name}-cxx
130 summary = The Berkeley DB database library (version 4) for C++.
131 description = %{summary}
132
133 files
134 %{libdir}/libdb_cxx-%{soversion}.so
135 end
136 end
137
138 package %{name}-debuginfo
139 template DEBUGINFO
140 end
141 end