summaryrefslogtreecommitdiffstats
path: root/meta/recipes-extended/sat-solver/sat-solver_git.bb
blob: b0382f6af0e8cec40b08eb2b602a40f5e15f2fa1 (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
DESCRIPTION  = "Sat Solver"
HOMEPAGE = "http://http://en.opensuse.org/openSUSE:Libzypp_satsolver"

LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE.BSD;md5=62272bd11c97396d4aaf1c41bc11f7d8"

DEPENDS = "libcheck rpm zlib expat db"

SRCREV = "0a7378d5f482f477a01cf1690d76871ab8bdcc32"
PV = "0.0-git${SRCPV}"
PR = "r14"

PARALLEL_MAKE=""

SRC_URI = "git://github.com/openSUSE/sat-solver.git;protocol=git \
           file://sat-solver_rpm5.patch \
           file://sat-solver_obsolete.patch \
           file://cmake.patch \
           file://db5.patch \
           file://sat-solver_core.patch \
           file://fix_gcc-4.6.0_compile_issue.patch \
           file://0001-sat_xfopen.c-Forward-port-to-zlib-1.2.6-gzFile.patch \
          "

S = "${WORKDIR}/git"

EXTRA_OECMAKE += "-DRPM5=RPM5 -DOE_CORE=OE_CORE"

EXTRA_OECMAKE += " -DLIB=${@os.path.basename('${libdir}')}"

inherit cmake pkgconfig

RDEPENDS_${PN} = "rpm-libs"

PACKAGE_ARCH = "${MACHINE_ARCH}"

do_archgen () {
	# We need to dynamically generate our arch file based on the machine
	# configuration

	INSTALL_PLATFORM_ARCHS=""
	for each_arch in ${PACKAGE_ARCHS} ; do
		case "$each_arch" in
			all | any | noarch)
				continue;;
		esac
		INSTALL_PLATFORM_ARCHS="$each_arch $INSTALL_PLATFORM_ARCHS"
	done

	echo "/* Automatically generated by the sat-solver recipe */" > src/core-arch.h
	echo "const char *archpolicies[] = {" >> src/core-arch.h

        set -- $INSTALL_PLATFORM_ARCHS

        save_IFS=$IFS
        IFS=:
        while [ $# -gt 0 ]; do echo "  \"$1\",	"\""$*"\", >> src/core-arch.h ; shift; done
        IFS=$save_IFS

	echo "  0" >> src/core-arch.h
	echo "};" >> src/core-arch.h
}

addtask archgen before do_configure after do_patch