package/libeastl: new package
authorMatt Weber <matthew.weber@rockwellcollins.com>
Tue, 18 Dec 2018 18:51:45 +0000 (12:51 -0600)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Mon, 31 Dec 2018 13:14:22 +0000 (14:14 +0100)
This patch adds the Entertainment Arts Standard Template Library.

The initial version uses the latest hash so that the aarch64 support
is included vs Buildroot having to apply the aarch64 support patch.

Signed-off-by: Maury Anderson <maury.anderson@rockwellcollins.com>
Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
[Thomas:
 - add missing BR2_INSTALL_LIBSTDCPP dependency
 - use the github helper instead of the git site method, and adjust
   hash consequently
 - drop INSTALL_TARGET_CMDS, the default cmake-package implementation
   works fine]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
DEVELOPERS
package/Config.in
package/libeastl/Config.in [new file with mode: 0644]
package/libeastl/libeastl.hash [new file with mode: 0644]
package/libeastl/libeastl.mk [new file with mode: 0644]

index 4aed6fc4a72852b4cf403befffa6d438aa51c514..9654fcf2bfd5372ed697d786f67bb80e7ca60c8f 100644 (file)
@@ -1423,6 +1423,7 @@ F:        package/kvm-unit-tests/
 F:     package/kvmtool/
 F:     package/libcsv/
 F:     package/libcurl/
+F:     package/libeastl/
 F:     package/libfcgi/
 F:     package/libopenssl/
 F:     package/libselinux/
index 733c7e676455072a38bf6fe15bf914d3c2b54e23..0df9b73088b91be5ca5d931454797672c3aa1b5c 100644 (file)
@@ -1661,6 +1661,7 @@ menu "Other"
        source "package/libcrossguid/Config.in"
        source "package/libcsv/Config.in"
        source "package/libdaemon/Config.in"
+       source "package/libeastl/Config.in"
        source "package/libee/Config.in"
        source "package/libev/Config.in"
        source "package/libevdev/Config.in"
diff --git a/package/libeastl/Config.in b/package/libeastl/Config.in
new file mode 100644 (file)
index 0000000..7609434
--- /dev/null
@@ -0,0 +1,27 @@
+config BR2_PACKAGE_LIBEASTL_ARCH_SUPPORTS
+       bool
+       default y if BR2_i386
+       default y if BR2_x86_64
+       default y if BR2_aarch64
+       default y if BR2_powerpc
+       default y if BR2_powerpc64
+
+config BR2_PACKAGE_LIBEASTL
+       bool "libeastl"
+       depends on BR2_PACKAGE_LIBEASTL_ARCH_SUPPORTS
+       depends on BR2_INSTALL_LIBSTDCPP
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++14
+       help
+         EASTL stands for Electronic Arts Standard Template
+         Library. EASTL stands for Electronic Arts Standard Template
+         Library. It is a C++ template library of containers,
+         algorithms, and iterators useful for runtime and tool
+         development across multiple platforms.  It is an extensive
+         and robust implementation that has an emphasis on high
+         performance.
+
+         https://github.com/electronicarts/EASTL
+
+comment "libeastl needs a toolchain w/ C++, gcc >= 4.9"
+       depends on BR2_PACKAGE_LIBEASTL_ARCH_SUPPORTS
+       depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || !BR2_INSTALL_LIBSTDCPP
diff --git a/package/libeastl/libeastl.hash b/package/libeastl/libeastl.hash
new file mode 100644 (file)
index 0000000..2d8367c
--- /dev/null
@@ -0,0 +1,2 @@
+sha256 9b3484553812b3ec3bad0857f7f675499c81f7cf4ac87e5f3b2acbe72e3a878a  libeastl-45469730d641868ce05433fff2e199510c7d45c3.tar.gz
+sha256 82c0243a1a62b8af01dab3bce6ed2b0852604bd508b85a561ba7d32480e598e3  LICENSE
diff --git a/package/libeastl/libeastl.mk b/package/libeastl/libeastl.mk
new file mode 100644 (file)
index 0000000..0559dd8
--- /dev/null
@@ -0,0 +1,13 @@
+################################################################################
+#
+# libeastl
+#
+################################################################################
+
+LIBEASTL_VERSION = 45469730d641868ce05433fff2e199510c7d45c3
+LIBEASTL_SITE = $(call github,electronicarts,EASTL,$(LIBEASTL_VERSION))
+LIBEASTL_LICENSE = BSD-3-Clause
+LIBEASTL_LICENSE_FILES = LICENSE
+LIBEASTL_INSTALL_STAGING = YES
+
+$(eval $(cmake-package))