Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 1 | SUMMARY = "iCal and scheduling (RFC 2445, 2446, 2447) library" |
| 2 | HOMEPAGE = "https://github.com/libical/libical" |
| 3 | BUGTRACKER = "https://github.com/libical/libical/issues" |
| 4 | LICENSE = "LGPLv2.1 | MPL-2.0" |
| 5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=1910a2a76ddf6a9ba369182494170d87 \ |
| 6 | file://LICENSE.LGPL21.txt;md5=933adb561f159e7c3da079536f0ed871 \ |
| 7 | file://LICENSE.MPL2.txt;md5=f75d2927d3c1ed2414ef72048f5ad640 \ |
| 8 | " |
| 9 | SECTION = "libs" |
| 10 | |
| 11 | SRC_URI = " \ |
| 12 | https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.gz \ |
| 13 | file://0001-Use-our-hand-build-native-src-generator.patch \ |
| 14 | " |
| 15 | SRC_URI[md5sum] = "8a5d07a7fba9e73a85e67f76258bf042" |
| 16 | SRC_URI[sha256sum] = "0abe66df1ea826e57db7f281c704ede834c84139012e6c686ea7adafd4e763fc" |
| 17 | UPSTREAM_CHECK_URI = "https://github.com/libical/libical/releases" |
| 18 | |
| 19 | inherit cmake pkgconfig |
| 20 | |
| 21 | do_compile_prepend() { |
| 22 | # As long as https://github.com/libical/libical/issues/394 is open build native src-generator manually |
| 23 | NATIVE_CFLAGS="${BUILD_CFLAGS} `pkg-config-native --cflags glib-2.0` `pkg-config-native --cflags libxml-2.0`" |
| 24 | NATIVE_LDFLAGS="${BUILD_LDFLAGS} `pkg-config-native --libs glib-2.0` `pkg-config-native --libs libxml-2.0`" |
| 25 | ${BUILD_CC} $NATIVE_CFLAGS ${S}/src/libical-glib/tools/generator.c ${S}/src/libical-glib/tools/xml-parser.c -o ${B}/src-generator $NATIVE_LDFLAGS |
| 26 | } |
| 27 | |
| 28 | PACKAGECONFIG ??= "icu glib" |
| 29 | PACKAGECONFIG[bdb] = ",-DCMAKE_DISABLE_FIND_PACKAGE_BDB=True,db" |
| 30 | PACKAGECONFIG[glib] = "-DICAL_GLIB=True,-DICAL_GLIB=False,glib-2.0-native libxml2-native glib-2.0 libxml2" |
| 31 | # ICU is used for RSCALE (RFC7529) support |
| 32 | PACKAGECONFIG[icu] = ",-DCMAKE_DISABLE_FIND_PACKAGE_ICU=True,icu" |
| 33 | |
| 34 | # No need to use perl-native, the host perl is sufficient. |
| 35 | EXTRA_OECMAKE += "-DPERL_EXECUTABLE=${HOSTTOOLS_DIR}/perl" |
| 36 | # doc build fails with linker error (??) for libical-glib so disable it |
| 37 | EXTRA_OECMAKE += "-DICAL_BUILD_DOCS=false" |
| 38 | |
| 39 | do_install_append () { |
| 40 | # Remove build host references |
| 41 | sed -i \ |
| 42 | -e 's,${STAGING_LIBDIR},${libdir},g' \ |
| 43 | -e 's,${STAGING_INCDIR},${includedir},g' \ |
| 44 | ${D}${libdir}/cmake/LibIcal/LibIcal*.cmake |
| 45 | } |