summaryrefslogtreecommitdiffstats
path: root/package/libb64
diff options
context:
space:
mode:
authorAngelo Compagnucci <angelo.compagnucci@gmail.com>2017-08-11 18:00:47 +0200
committerArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>2017-08-12 23:21:42 +0200
commit69911ee1e0389ae84b083ec30844fb14676d9551 (patch)
tree1fe80b16a8677d21aabc9f2a5a10343a7956be34 /package/libb64
parent7f854b2141517c6fc7f180a63da8eea4bdacda48 (diff)
downloadbuildroot-69911ee1e0389ae84b083ec30844fb14676d9551.tar.gz
buildroot-69911ee1e0389ae84b083ec30844fb14676d9551.zip
package/libb64: new package
This patch adds libb64, a library of ANSI C routines for fast encoding/decoding data into and from a base64-encoded format. The package contains a static library, headers, and an executable. The latter, however, requires C++ and offers no advantages over busybox or coreutils base64, so it is not installed. Therefore, nothing is installed to target. Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com> [Arnout: - properly wrap Config.in - move from Crypto to Other menu - don't install to target - don't make headers executable - don't add -D to install with multiple source files - extend commit log] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Diffstat (limited to 'package/libb64')
-rw-r--r--package/libb64/Config.in14
-rw-r--r--package/libb64/libb64.hash3
-rw-r--r--package/libb64/libb64.mk30
3 files changed, 47 insertions, 0 deletions
diff --git a/package/libb64/Config.in b/package/libb64/Config.in
new file mode 100644
index 0000000000..405d0b8c4b
--- /dev/null
+++ b/package/libb64/Config.in
@@ -0,0 +1,14 @@
+config BR2_PACKAGE_LIBB64
+ bool "libb64"
+ help
+ libb64 is a library of ANSI C routines for fast encoding
+ and decoding of data into and from a base64-encoded format.
+ C++ wrappers are included, as well as the source code for
+ standalone encoding and decoding executables.
+
+ Base64 uses a subset of displayable ASCII characters, and is
+ therefore a useful encoding for storing binary data in a text
+ file, such as XML, or sending binary data over text-only
+ email.
+
+ http://libb64.sourceforge.net
diff --git a/package/libb64/libb64.hash b/package/libb64/libb64.hash
new file mode 100644
index 0000000000..012a7b0b00
--- /dev/null
+++ b/package/libb64/libb64.hash
@@ -0,0 +1,3 @@
+# sha1 from sourceforge, sha256 locally computed
+sha1 04b3e21b8c951d27f02fe91249ca3474554af0b9 libb64-1.2.1.zip
+sha256 20106f0ba95cfd9c35a13c71206643e3fb3e46512df3e2efb2fdbf87116314b2 libb64-1.2.1.zip
diff --git a/package/libb64/libb64.mk b/package/libb64/libb64.mk
new file mode 100644
index 0000000000..4dea9593a0
--- /dev/null
+++ b/package/libb64/libb64.mk
@@ -0,0 +1,30 @@
+################################################################################
+#
+# libb64
+#
+################################################################################
+
+LIBB64_VERSION = 1.2.1
+LIBB64_SOURCE = libb64-$(LIBB64_VERSION).zip
+LIBB64_SITE = https://downloads.sourceforge.net/project/libb64/libb64/libb64
+LIBB64_LICENSE = Public Domain
+LIBB64_LICENSE_FILES = LICENSE
+LIBB64_INSTALL_STAGING = YES
+# Only static lib and headers
+LIBB64_INSTALL_TARGET = NO
+
+define LIBB64_EXTRACT_CMDS
+ unzip $(DL_DIR)/$(LIBB64_SOURCE) -d $(BUILD_DIR)
+endef
+
+define LIBB64_BUILD_CMDS
+ $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" CCFLAGS="$(TARGET_CFLAGS)" -C $(@D) all_src
+endef
+
+define LIBB64_INSTALL_STAGING_CMDS
+ $(INSTALL) -d -m 0755 $(STAGING_DIR)/usr/include/b64
+ $(INSTALL) -m 0644 $(@D)/include/b64/* $(STAGING_DIR)/usr/include/b64
+ $(INSTALL) -D -m 0755 $(@D)/src/libb64.a $(STAGING_DIR)/usr/lib
+endef
+
+$(eval $(generic-package))
OpenPOWER on IntegriCloud