Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 1 | SUMMARY = "Abseil is a cpp library like STL" |
| 2 | DESCRIPTION = "Abseil provides pieces missing from the C++ standard. Contains \ |
| 3 | additional useful libraries like algorithm, container, debugging, hash, memory, \ |
| 4 | meta, numeric, strings, synchronization, time, types and utility" |
| 5 | HOMEPAGE = "https://abseil.io/" |
| 6 | SECTION = "libs" |
| 7 | LICENSE = "Apache-2.0" |
| 8 | LIC_FILES_CHKSUM = "file://LICENSE;md5=df52c6edb7adc22e533b2bacc3bd3915" |
| 9 | |
Andrew Geissler | eef6386 | 2021-01-29 15:58:13 -0600 | [diff] [blame^] | 10 | PV = "20200923+git${SRCPV}" |
| 11 | SRCREV = "6f9d96a1f41439ac172ee2ef7ccd8edf0e5d068c" |
| 12 | BRANCH = "lts_2020_09_23" |
| 13 | SRC_URI = "git://github.com/abseil/abseil-cpp;branch=${BRANCH} \ |
| 14 | file://0001-absl-always-use-asm-sgidefs.h.patch \ |
| 15 | file://0002-Remove-maes-option-from-cross-compilation.patch \ |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 16 | " |
| 17 | |
| 18 | S = "${WORKDIR}/git" |
| 19 | |
| 20 | DEPENDS_append_libc-musl = " libexecinfo " |
| 21 | |
| 22 | ASNEEDED_class-native = "" |
| 23 | ASNEEDED_class-nativesdk = "" |
| 24 | |
| 25 | inherit cmake |
| 26 | |
Andrew Geissler | eef6386 | 2021-01-29 15:58:13 -0600 | [diff] [blame^] | 27 | EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \ |
| 28 | -DBUILD_TESTING=OFF \ |
| 29 | " |
| 30 | |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 31 | BBCLASSEXTEND = "native nativesdk" |
| 32 | ALLOW_EMPTY_${PN} = "1" |
| 33 | |
Andrew Geissler | eef6386 | 2021-01-29 15:58:13 -0600 | [diff] [blame^] | 34 | FILES_${PN} = "${libdir}/libabsl_*.so ${libdir}/cmake" |
| 35 | FILES_${PN}-dev = "${includedir}" |
| 36 | |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 37 | python () { |
| 38 | arch = d.getVar("TARGET_ARCH") |
| 39 | |
| 40 | if arch == "aarch64": |
| 41 | tunes = d.getVar("TUNE_FEATURES") |
| 42 | if not tunes: |
Andrew Geissler | bffdb3e | 2020-08-21 16:13:29 -0500 | [diff] [blame] | 43 | raise bb.parse.SkipRecipe("%s-%s Needs support for crypto on armv8" % (pkgn, pkgv)) |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 44 | return |
| 45 | pkgn = d.getVar("PN") |
| 46 | pkgv = d.getVar("PV") |
| 47 | if "crypto" not in tunes: |
Andrew Geissler | bffdb3e | 2020-08-21 16:13:29 -0500 | [diff] [blame] | 48 | raise bb.parse.SkipRecipe("%s-%s Needs support for crypto on armv8" % (pkgn, pkgv)) |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 49 | |
| 50 | if arch == "x86_64": |
| 51 | tunes = d.getVar("TUNE_FEATURES") |
| 52 | if not tunes: |
Andrew Geissler | bffdb3e | 2020-08-21 16:13:29 -0500 | [diff] [blame] | 53 | raise bb.parse.SkipRecipe("%s-%s Needs support for corei7 on x86_64" % (pkgn, pkgv)) |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 54 | return |
| 55 | pkgn = d.getVar("PN") |
| 56 | pkgv = d.getVar("PV") |
| 57 | if "corei7" not in tunes: |
Andrew Geissler | bffdb3e | 2020-08-21 16:13:29 -0500 | [diff] [blame] | 58 | raise bb.parse.SkipRecipe("%s-%s Needs support for corei7 on x86_64" % (pkgn, pkgv)) |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 59 | |
| 60 | } |