1SUMMARY = "Apache Thrift" 2DESCRIPTION = "A software framework, for scalable cross-language services development" 3HOMEPAGE = "https://thrift.apache.org/" 4 5LICENSE = "Apache-2.0" 6LIC_FILES_CHKSUM = "file://LICENSE;md5=c40a383cb3f747e0c7abbf1482f194f0 \ 7 file://NOTICE;md5=2659b43daca219f99a2f2626ea128f73" 8 9DEPENDS = "thrift-native boost flex-native bison-native openssl zlib" 10 11SRC_URI = "https://downloads.apache.org/${BPN}/${PV}/${BP}.tar.gz \ 12 file://0001-DefineInstallationPaths.cmake-Define-libdir-in-terms.patch" 13SRC_URI[sha256sum] = "b5d8311a779470e1502c027f428a1db542f5c051c8e1280ccd2163fa935ff2d6" 14 15BBCLASSEXTEND = "native nativesdk" 16 17CVE_PRODUCT = "apache:thrift" 18 19inherit pkgconfig cmake python3native 20 21export STAGING_INCDIR 22export STAGING_LIBDIR 23export BUILD_SYS 24export HOST_SYS 25 26EXTRA_OECMAKE = " \ 27 -DBUILD_LIBRARIES=ON \ 28 -DBUILD_SHARED_LIBS=ON \ 29 -DBUILD_COMPILER=ON \ 30 -DBUILD_TESTING=OFF \ 31 -DBUILD_TUTORIALS=OFF \ 32 -DWITH_AS3=OFF \ 33 -DWITH_CPP=ON \ 34 -DWITH_JAVA=OFF \ 35 -DWITH_OPENSSL=ON \ 36 -DWITH_QT5=OFF \ 37 -DWITH_ZLIB=ON \ 38 -DFLEX_TARGET_ARG_COMPILE_FLAGS='--noline' \ 39 -DBISON_TARGET_ARG_COMPILE_FLAGS='--no-lines' \ 40" 41 42PACKAGECONFIG ??= "glib libevent" 43PACKAGECONFIG[glib] = "-DWITH_C_GLIB=ON,-DWITH_C_GLIB=OFF,glib-2.0" 44PACKAGECONFIG[libevent] = "-DWITH_LIBEVENT=ON,-DWITH_LIBEVENT=OFF,libevent" 45PACKAGECONFIG[javascript] = "-DWITH_JAVASCRIPT=ON,-DWITH_JAVASCRIPT=OFF,nodejs" 46PACKAGECONFIG[nodejs] = "-DWITH_NODEJS=ON,-DWITH_NODEJS=OFF,nodejs" 47PACKAGECONFIG[python] = "-DWITH_PYTHON=ON,-DWITH_PYTHON=OFF,python" 48 49do_install:append () { 50 ln -sf thrift ${D}/${bindir}/thrift-compiler 51 # remove absolute paths 52 sed -i -e 's|${RECIPE_SYSROOT}||g' ${D}${libdir}/cmake/thrift/thriftnbTargets.cmake 53 sed -i -e 's|${RECIPE_SYSROOT}||g' ${D}${libdir}/cmake/thrift/thrift_c_glibTargets.cmake 54 sed -i -e 's|${RECIPE_SYSROOT}||g' ${D}${libdir}/cmake/thrift/thrift_c_glib_zlibTargets.cmake 55} 56 57LEAD_SONAME = "libthrift.so.${PV}" 58 59# thrift packages 60PACKAGE_BEFORE_PN = "${PN}-compiler lib${BPN} lib${BPN}z lib${BPN}nb lib${BPN}-c-glib" 61FILES:lib${BPN} = "${libdir}/libthrift.so.*" 62FILES:lib${BPN}z = "${libdir}/libthriftz.so.*" 63FILES:lib${BPN}nb = "${libdir}/libthriftnb.so.*" 64FILES:lib${BPN}-c-glib = "${libdir}/libthrift_c_glib.so.*" 65FILES:${PN}-compiler = "${bindir}/*" 66 67# The thrift packages just pulls in some default dependencies but is otherwise empty 68RRECOMMENDS:${PN} = "${PN}-compiler lib${BPN}" 69ALLOW_EMPTY:${PN} = "1" 70RRECOMMENDS:${PN}:class-native = "" 71RRECOMMENDS:${PN}:class-nativesdk = "" 72