package/cctz: new package
authorGilles Talis <gilles.talis@gmail.com>
Sun, 22 Dec 2019 13:23:14 +0000 (14:23 +0100)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Tue, 24 Dec 2019 13:06:48 +0000 (14:06 +0100)
CCTZ is a C++ library for translating between absolute
and civil times using the rules of a time zone.

Signed-off-by: Gilles Talis <gilles.talis@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
DEVELOPERS
package/Config.in
package/cctz/Config.in [new file with mode: 0644]
package/cctz/cctz.hash [new file with mode: 0644]
package/cctz/cctz.mk [new file with mode: 0644]

index 8850463130f8df145799d057638f42f8a5bc1cdf..c86fd5931fa09ddd4d60ee4be97582b0ced7d702 100644 (file)
@@ -983,6 +983,7 @@ F:  configs/qemu_*
 N:     Gilles Talis <gilles.talis@gmail.com>
 F:     board/freescale/imx8mmevk/
 F:     configs/freescale_imx8mmevk_defconfig
+F:     package/cctz/
 F:     package/fdk-aac/
 F:     package/httping/
 F:     package/iozone/
index de0091629f747908c8d0ac37d3713ce540000001..df4265ead3fe479e4c5bf02114b467e225640680 100644 (file)
@@ -1729,6 +1729,7 @@ menu "Other"
        source "package/boost/Config.in"
        source "package/c-capnproto/Config.in"
        source "package/capnproto/Config.in"
+       source "package/cctz/Config.in"
        source "package/clang/Config.in"
        source "package/clapack/Config.in"
        source "package/classpath/Config.in"
diff --git a/package/cctz/Config.in b/package/cctz/Config.in
new file mode 100644 (file)
index 0000000..73a0f9f
--- /dev/null
@@ -0,0 +1,29 @@
+config BR2_PACKAGE_CCTZ
+       bool "cctz"
+       depends on BR2_INSTALL_LIBSTDCPP
+       depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
+       select BR2_TARGET_TZ_INFO # runtime dependency
+       help
+         CCTZ is a C++ library for translating between absolute
+         and civil times using the rules of a time zone.
+
+         https://github.com/google/cctz
+
+if BR2_PACKAGE_CCTZ
+
+config BR2_PACKAGE_CCTZ_INSTALL_TOOLS
+       bool "Install tools"
+       help
+         This option allows installing CCTZ tools.
+
+config BR2_PACKAGE_CCTZ_INSTALL_EXAMPLES
+       bool "Install example programs"
+       help
+         This option allows installing CCTZ example programs.
+
+endif
+
+comment "cctz needs a toolchain w/ C++, threads, gcc >= 4.8"
+       depends on !BR2_INSTALL_LIBSTDCPP || \
+               !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
diff --git a/package/cctz/cctz.hash b/package/cctz/cctz.hash
new file mode 100644 (file)
index 0000000..fe8897c
--- /dev/null
@@ -0,0 +1,3 @@
+# locally computed
+sha256 8615b20d4e33e02a271c3b93a3b208e3d7d5d66880f5f6208b03426e448f32db cctz-2.3.tar.gz
+sha256 c79a7fea0e3cac04cd43f20e7b648e5a0ff8fa5344e644b0ee09ca1162b62747 LICENSE.txt
diff --git a/package/cctz/cctz.mk b/package/cctz/cctz.mk
new file mode 100644 (file)
index 0000000..bcc80ba
--- /dev/null
@@ -0,0 +1,27 @@
+################################################################################
+#
+# cctz
+#
+################################################################################
+
+CCTZ_VERSION = 2.3
+CCTZ_SITE = $(call github,google,cctz,v$(CCTZ_VERSION))
+CCTZ_LICENSE = Apache-2.0
+CCTZ_LICENSE_FILES = LICENSE.txt
+CCTZ_INSTALL_STAGING = YES
+
+CCTZ_CONF_OPTS = -DBUILD_TESTING=OFF
+
+ifeq ($(BR2_PACKAGE_CCTZ_INSTALL_TOOLS),y)
+CCTZ_CONF_OPTS += -DBUILD_TOOLS=ON
+else
+CCTZ_CONF_OPTS += -DBUILD_TOOLS=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_CCTZ_INSTALL_EXAMPLES),y)
+CCTZ_CONF_OPTS += -DBUILD_EXAMPLES=ON
+else
+CCTZ_CONF_OPTS += -DBUILD_EXAMPLES=OFF
+endif
+
+$(eval $(cmake-package))