blob: b526c1bcdf9465d83b37fcdcd32f9296c49ed551 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
DESCRIPTION = "The RPM Package Manager."
HOMEPAGE = "http://rpm.org/"
LICENSE = "LGPL GPL"
DEPENDS = "zlib beecrypt file popt python"
PR = "r12"
SRC_URI = "http://www.rpm.org/releases/rpm-4.4.x/rpm-4.4.2.3.tar.gz \
file://external-tools.patch;patch=1 \
file://cross_libpaths.patch;patch=1 \
file://weakdeps.patch;patch=1;pnum=0 \
file://tagsbackport.patch;patch=1;pnum=0 \
file://missingok.patch;patch=1;pnum=0 \
file://extcond.patch;patch=1;pnum=0"
inherit autotools gettext
S = "${WORKDIR}/rpm-${PV}"
acpaths = "-I ${S}/db/dist/aclocal -I ${S}/db/dist/aclocal_java"
EXTRA_OECONF = "--with-python=$PYTHONVER \
--with-python-incdir=${STAGING_INCDIR}/python$PYTHONVER \
--with-python-libdir=${libdir}/python$PYTHONVER \
--without-apidocs \
--without-selinux \
--without-lua \
--without-dmalloc \
--without-efence"
PACKAGES += "python-rpm"
FILES_python-rpm = "${libdir}/python*/site-packages/rpm/_*"
# Handle the db MUTEX settings here, the POSIX library is
# the default - "POSIX/pthreads/library".
# Don't ignore the nice SWP instruction on the ARM:
# These enable the ARM assembler mutex code, this won't
# work with thumb compilation...
ARM_MUTEX = "--with-mutex=ARM/gcc-assembly"
MUTEX = ""
MUTEX_arm = "${ARM_MUTEX}"
MUTEX_armeb = "${ARM_MUTEX}"
EXTRA_OECONF += "${MUTEX}"
export varprefix = "${localstatedir}"
do_configure () {
rm ${S}/popt/ -Rf
rm ${S}/db/dist/configure.in -f
cd ${S}/db/dist/aclocal
rm libtool* -f
for i in `ls *.ac`; do
j=`echo $i | sed 's/.ac/.m4/g'`
mv $i $j
done
cd ${S}/db/dist/aclocal_java
for i in `ls *.ac`; do
j=`echo $i | sed 's/.ac/.m4/g'`
mv $i $j
done
cd ${S}
autotools_do_configure
cd ${S}/db/dist
. ./RELEASE
# Edit version information we couldn't pre-compute.
(echo "1,\$s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" &&
echo "1,\$s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" &&
echo "1,\$s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" &&
echo "1,\$s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" &&
echo "1,\$s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" &&
echo "1,\$s/__EDIT_DB_VERSION__/$DB_VERSION/g" &&
echo "w" &&
echo "q") | ed configure
cd ${S}/db3
${S}/db3/configure \
--build=${BUILD_SYS} \
--host=${HOST_SYS} \
--target=${TARGET_SYS} \
--prefix=${prefix} \
--exec_prefix=${exec_prefix} \
--bindir=${bindir} \
--sbindir=${sbindir} \
--libexecdir=${libexecdir} \
--datadir=${datadir} \
--sysconfdir=${sysconfdir} \
--sharedstatedir=${sharedstatedir} \
--localstatedir=${localstatedir} \
--libdir=${libdir} \
--includedir=${includedir} \
--oldincludedir=${oldincludedir} \
--infodir=${infodir} \
--mandir=${mandir} \
${EXTRA_OECONF} \
--with-pic
}
do_install_append () {
rmdir ${D}${localstatedir}/tmp || true
}
def rpm_python_version(d):
import os, bb
staging_incdir = bb.data.getVar( "STAGING_INCDIR", d, 1 )
if os.path.exists( "%s/python2.5" % staging_incdir ): return "2.5"
if os.path.exists( "%s/python2.4" % staging_incdir ): return "2.4"
if os.path.exists( "%s/python2.3" % staging_incdir ): return "2.3"
raise "No Python in STAGING_INCDIR. Forgot to build python/python-native?"
# Use a shell variable here since otherwise gettext trys to expand this at
# parse time when it manipulates EXTRA_OECONF which fails
export PYTHONVER = "${@rpm_python_version(d)}"
|