aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/librcf/librcf_0.4.bb
blob: 6e444c0af0c76304db93b6325f6f4edafc2c5ec6 (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
DESCRIPTION = "A library for object-oriented inter process communication"
SECTION = "base"
PRIORITY = "optional"
LICENSE = "unknown"
DEPENDS="zlib openssl boost-asio"
do_unpack[depends] += "unzip-native:do_populate_staging"

# the SOURCE_URI requires authentication via web browser and cookie (gasp)
# all we can do right now is download the file and save it under sources/
SRC_URI = "http://www.mediaassistent.se/jarl/files/RCF-04.zip \
	file://rcf-0.4-g++-4.1.diff;patch=1 \
	file://rcf-0.4-openembedded.diff;patch=1"
S = "${WORKDIR}/RCF-${PV}"

CPPFLAGS_prepend = "-I../../include "
BUILD_OPTIMIZATION = "-Os"

do_compile() {
	oe_runmake CXXFLAGS="-pthread ${CXXFLAGS}" -C src/RCF shared-mt
	oe_runmake -C src/RCF shared-st
	rm -f src/RCF/*.o
	oe_runmake CXXFLAGS="-pthread ${CXXFLAGS}" -C src/RCF mt
	oe_runmake -C src/RCF st
}

do_install() {
	oe_runmake -C src/RCF prefix=/usr DESTDIR=${D} install
	find ${D}/usr/include -name "*.diff" | xargs rm
}

do_stage() {
	cd ${S}
	install -d -m 775 ${STAGING_LIBDIR}
	cp -dp src/RCF/libRCF[sm]t.a ${STAGING_LIBDIR}
	cp -dp src/RCF/libRCF[sm]t.so* ${STAGING_LIBDIR}
	install -d -m 775 ${STAGING_INCDIR}
	tar -C include --exclude='*.diff' -cvf - . | tar -C ${STAGING_INCDIR} -xvf -
}

PACKAGES = "${PN}-dbg ${PN}-mt ${PN}-st ${PN}-dev ${PN}"
FILES_${PN}-mt = "/usr/lib/libRCFmt.so*"
FILES_${PN}-st = "/usr/lib/libRCFst.so*"
FILES_${PN}-dev = "/usr/lib/libRCF[sm]t.a /usr/include"