summaryrefslogtreecommitdiff
path: root/package/skalibs
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@uclibc-ng.org>2016-09-03 20:44:23 +0200
committerWaldemar Brodkorb <wbx@uclibc-ng.org>2016-09-03 20:45:28 +0200
commit17503c1de144fd5afcbfa23796c3d92a5f1cfde6 (patch)
treeca4749984b9cea7d93db5b30d4032b2ded0ba08e /package/skalibs
parent85f641f2252073f492fe356b5130e5c1fc1f8d32 (diff)
add basic support for s6 init system
Diffstat (limited to 'package/skalibs')
-rw-r--r--package/skalibs/Makefile31
-rw-r--r--package/skalibs/patches/patch-configure58
-rw-r--r--package/skalibs/src/src/sysdeps/trybigendian.c17
-rw-r--r--package/skalibs/src/src/sysdeps/trylittleendian.c16
4 files changed, 122 insertions, 0 deletions
diff --git a/package/skalibs/Makefile b/package/skalibs/Makefile
new file mode 100644
index 000000000..cc3b48a6a
--- /dev/null
+++ b/package/skalibs/Makefile
@@ -0,0 +1,31 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(ADK_TOPDIR)/rules.mk
+
+PKG_NAME:= skalibs
+PKG_VERSION:= 2.3.10.0
+PKG_RELEASE:= 1
+PKG_HASH:= e4d5147941055b2a367794666f773a4b216c3ae83c015a5fcf2cd0498470ea44
+PKG_DESCR:= general purpose libraries
+PKG_SECTION:= libs/misc
+PKG_URL:= http://www.skarnet.org/software/skalibs/
+PKG_SITES:= http://www.skarnet.org/software/skalibs/
+PKG_OPTS:= dev
+
+DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.gz
+
+include $(ADK_TOPDIR)/mk/package.mk
+
+$(eval $(call PKG_template,SKALIBS,skalibs,$(PKG_VERSION)-$(PKG_RELEASE),$(PKG_DEPENDS),$(PKG_DESCR),$(PKG_SECTION),$(PKG_OPTS)))
+
+CONFIGURE_ARGS+= --enable-force-devr \
+ --disable-allstatic \
+ --with-default-path=/sbin:/usr/sbin:/bin:/usr/bin
+
+skalibs-install:
+ $(INSTALL_DIR) $(IDIR_SKALIBS)/usr/lib
+ $(CP) $(WRKINST)/usr/lib/libskarnet.so* \
+ $(IDIR_SKALIBS)/usr/lib
+
+include $(ADK_TOPDIR)/mk/pkg-bottom.mk
diff --git a/package/skalibs/patches/patch-configure b/package/skalibs/patches/patch-configure
new file mode 100644
index 000000000..bfd291622
--- /dev/null
+++ b/package/skalibs/patches/patch-configure
@@ -0,0 +1,58 @@
+--- skalibs-2.3.10.0.orig/configure 2016-03-19 16:04:58.000000000 +0100
++++ skalibs-2.3.10.0/configure 2016-09-03 17:23:41.494368249 +0200
+@@ -154,10 +154,28 @@ choose () {
+
+ trytypesize() {
+ echo "Checking size of $3..."
+- $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO $LDFLAGS_AUTO -o trysizeof$1 src/sysdeps/trysizeof$1.c
+- type_size=$(./trysizeof$1) || fail "$0: unable to determine size of $3"
++ r=false
++ type_size=0
++ while true; do
++ cat<<EOF>trysizeof$1.c
++#include <sys/types.h>
++
++int main(void)
++{
++ static int v = 1 / !!((sizeof($3) == $type_size));
++ return 0;
++}
++EOF
++ if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO $LDFLAGS_AUTO -o trysizeof$1 trysizeof$1.c 2>/dev/null; then
++ r=true
++ break
++ fi
++ type_size=$(expr $type_size + 1)
++ test $type_size -le 16 || break
++ done
++ test $r = true || fail "$0: unable to determine size of $3"
+ type_bits=$(expr 8 \* $type_size)
+- rm -f trysizeof$1
++ rm -f trysizeof$1 trysizeof$1.c
+ echo "sizeof$1: $type_size" >> $sysdeps/sysdeps
+ echo "#define ${package_macro_name}_SIZEOF$2 $type_size" >> $sysdeps/sysdeps.h
+ echo "#define ${package_macro_name}_$2_BITS $type_bits" >> $sysdeps/sysdeps.h
+@@ -451,12 +469,20 @@ EOF
+ fi
+
+ echo "Checking system endianness..."
+- $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -o tryendianness src/sysdeps/tryendianness.c
+- endianness=$(./tryendianness) || fail "$0: unable to determine endianness"
++ if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -o trybigendian src/sysdeps/trybigendian.c 2>/dev/null; then
++ endianness=big
++ else
++ if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -o trylittleendian src/sysdeps/trylittleendian.c 2>/dev/null; then
++ endianness=little
++ else
++ fail "$0: unable to determine endianness"
++ fi
++ fi
++
+ echo "endianness: $endianness" >> $sysdeps/sysdeps
+ echo "#define ${package_macro_name}_ENDIANNESS \"$endianness\"" >> $sysdeps/sysdeps.h
+ echo " ... $endianness"
+- rm -f tryendianness
++ rm -f trybigendian trylittleendian
+
+ trytypesize ushort USHORT "unsigned short"
+ trytypesize uint UINT "unsigned int"
diff --git a/package/skalibs/src/src/sysdeps/trybigendian.c b/package/skalibs/src/src/sysdeps/trybigendian.c
new file mode 100644
index 000000000..f1e3fa537
--- /dev/null
+++ b/package/skalibs/src/src/sysdeps/trybigendian.c
@@ -0,0 +1,17 @@
+#if defined(__BYTE_ORDER) && (__BYTE_ORDER == __BIG_ENDIAN) || \
+ defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__) || \
+ defined(__BIG_ENDIAN) || \
+ defined(__ARMEB__) || \
+ defined(__THUMBEB__) || \
+ defined(__AARCH64EB__) || \
+ defined(_MIPSEB) || defined(__MIPSEB) || defined(__MIPSEB__)
+#define YEAH
+#else
+#error "not big endian"
+#endif
+
+int main(void)
+{
+ return 0;
+}
+
diff --git a/package/skalibs/src/src/sysdeps/trylittleendian.c b/package/skalibs/src/src/sysdeps/trylittleendian.c
new file mode 100644
index 000000000..5dfe44e31
--- /dev/null
+++ b/package/skalibs/src/src/sysdeps/trylittleendian.c
@@ -0,0 +1,16 @@
+#if defined(__BYTE_ORDER) && (__BYTE_ORDER == __LITTLE_ENDIAN) || \
+ defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) || \
+ defined(__LITTLE_ENDIAN) || \
+ defined(__ARMEL__) || \
+ defined(__THUMBEL__) || \
+ defined(__AARCH64EL__) || \
+ defined(_MIPSEL) || defined(__MIPSEL) || defined(__MIPSEL__)
+#define YEAH
+#else
+#error "not little endian"
+#endif
+
+int main(void)
+{
+ return 0;
+}