From e88118554ab581e9889df269c4425d133b2ca13e Mon Sep 17 00:00:00 2001 From: Grazvydas Ignotas Date: Sun, 10 Apr 2016 19:00:52 +0300 Subject: [PATCH] add armhf support stuff just repackaging some Debian Jessie armhf libs, except: libsdl - rebuilt with pandora hacks libgles - armhf SGX libs from TI --- recipes/armhf/armhf-support.bb | 18 ++ recipes/armhf/armhf.inc | 15 ++ recipes/armhf/armhflibasound2_1.0.28.bb | 16 ++ recipes/armhf/armhflibc6_2.19.bb | 22 +++ recipes/armhf/armhflibgcc1_4.9.2.bb | 17 ++ recipes/armhf/armhflibgles_4.10.00.01.bb | 81 +++++++++ recipes/armhf/armhflibpng12-0_1.2.50.bb | 14 ++ recipes/armhf/armhflibsdl-x11/sdl.m4 | 203 ++++++++++++++++++++++ recipes/armhf/armhflibsdl-x11_1.2.14.1.bb | 65 +++++++ recipes/armhf/armhflibstdc++6_4.9.2.bb | 15 ++ recipes/armhf/armhflibx11-6_1.6.2.bb | 19 ++ recipes/armhf/armhflibxau6_1.0.8.bb | 19 ++ recipes/armhf/armhflibxcb1_1.10.bb | 18 ++ recipes/armhf/armhflibxdmcp6_1.1.1.bb | 21 +++ recipes/armhf/armhflibxext6_1.3.3.bb | 23 +++ recipes/armhf/armhfzlib1g_1.2.8.bb | 18 ++ recipes/armhf/ti-eula-unpack.inc | 71 ++++++++ 17 files changed, 655 insertions(+) create mode 100644 recipes/armhf/armhf-support.bb create mode 100644 recipes/armhf/armhf.inc create mode 100644 recipes/armhf/armhflibasound2_1.0.28.bb create mode 100644 recipes/armhf/armhflibc6_2.19.bb create mode 100644 recipes/armhf/armhflibgcc1_4.9.2.bb create mode 100644 recipes/armhf/armhflibgles_4.10.00.01.bb create mode 100644 recipes/armhf/armhflibpng12-0_1.2.50.bb create mode 100644 recipes/armhf/armhflibsdl-x11/sdl.m4 create mode 100644 recipes/armhf/armhflibsdl-x11_1.2.14.1.bb create mode 100644 recipes/armhf/armhflibstdc++6_4.9.2.bb create mode 100644 recipes/armhf/armhflibx11-6_1.6.2.bb create mode 100644 recipes/armhf/armhflibxau6_1.0.8.bb create mode 100644 recipes/armhf/armhflibxcb1_1.10.bb create mode 100644 recipes/armhf/armhflibxdmcp6_1.1.1.bb create mode 100644 recipes/armhf/armhflibxext6_1.3.3.bb create mode 100644 recipes/armhf/armhfzlib1g_1.2.8.bb create mode 100644 recipes/armhf/ti-eula-unpack.inc diff --git a/recipes/armhf/armhf-support.bb b/recipes/armhf/armhf-support.bb new file mode 100644 index 0000000..f860225 --- /dev/null +++ b/recipes/armhf/armhf-support.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "Task file for armhf support libs" + +PR = "r0" + +inherit task + +# ANGSTROM_EXTRA_INSTALL ?= "" + +RDEPENDS_${PN} = " \ + armhflibc6 \ + armhflibgcc1 \ + armhflibstdc++6 \ + armhfzlib1g \ + armhflibpng12-0 \ + armhflibx11-6 \ + armhflibsdl-x11 \ + armhflibgles \ +" diff --git a/recipes/armhf/armhf.inc b/recipes/armhf/armhf.inc new file mode 100644 index 0000000..f63a873 --- /dev/null +++ b/recipes/armhf/armhf.inc @@ -0,0 +1,15 @@ +ARMHF_DEB_MIRROR = "http://notaz.gp2x.de/misc/pnd/armhf_deb" + +PRI = "0" + +S = "${WORKDIR}" + +do_install() { + for f in ${S}/*.deb; do + dpkg-deb -x $f ${D}/ + done +} + +FILES_${PN} += "lib/arm-linux-gnueabihf/*.so* \ + usr/lib/arm-linux-gnueabihf/*.so*" +FILES_${PN}-dbg += "usr/lib/debug" diff --git a/recipes/armhf/armhflibasound2_1.0.28.bb b/recipes/armhf/armhflibasound2_1.0.28.bb new file mode 100644 index 0000000..fd6c118 --- /dev/null +++ b/recipes/armhf/armhflibasound2_1.0.28.bb @@ -0,0 +1,16 @@ +SUMMARY = "ALSA sound library" +HOMEPAGE = "http://www.alsa-project.org" +SECTION = "libs/multimedia" +LICENSE = "LGPLv2.1 GPLv2+" +RDEPENDS = "armhflibc6" + +require armhf.inc + +DEBV = "1" +PR = "${DEBV}.r${PRI}.0" + +SRC_URI = "${ARMHF_DEB_MIRROR}/libasound2_${PV}-${DEBV}_armhf.deb;name=deb1 \ + ${ARMHF_DEB_MIRROR}/libasound2-dbg_${PV}-${DEBV}_armhf.deb;name=deb2" + +SRC_URI[deb1.md5sum] = "a402fbaa974fc22f115a7a7d19f40546" +SRC_URI[deb2.md5sum] = "0965851780c5df16040a068ee01db0b1" diff --git a/recipes/armhf/armhflibc6_2.19.bb b/recipes/armhf/armhflibc6_2.19.bb new file mode 100644 index 0000000..a9b7a89 --- /dev/null +++ b/recipes/armhf/armhflibc6_2.19.bb @@ -0,0 +1,22 @@ +SUMMARY = "GLIBC (GNU C Library)" +DESCRIPTION = "The GNU C Library is used as the system C library in most systems with the Linux kernel." +HOMEPAGE = "http://www.gnu.org/software/libc/libc.html" +SECTION = "libs" +LICENSE = "GPLv2 LGPLv2.1" + +require armhf.inc + +DEBV = "18+deb8u4" +PR = "${DEBV}.r${PRI}.0" + +SRC_URI = "${ARMHF_DEB_MIRROR}/libc6_${PV}-${DEBV}_armhf.deb;name=deb1 \ + ${ARMHF_DEB_MIRROR}/libc6-dbg_${PV}-${DEBV}_armhf.deb;name=deb2" + +FILES_${PN} += "usr/lib/arm-linux-gnueabihf/audit \ + usr/lib/arm-linux-gnueabihf/gconv/CP*.so* \ + usr/lib/arm-linux-gnueabihf/gconv/ISO8859*.so* \ + usr/lib/arm-linux-gnueabihf/gconv/UTF*.so* \ + usr/lib/arm-linux-gnueabihf/gconv/UNICODE.so*" + +SRC_URI[deb1.md5sum] = "b7ac74ec6627c992e2f6009006e9ad59" +SRC_URI[deb2.md5sum] = "056587df271909396478d1ab4b90a140" diff --git a/recipes/armhf/armhflibgcc1_4.9.2.bb b/recipes/armhf/armhflibgcc1_4.9.2.bb new file mode 100644 index 0000000..c4412af --- /dev/null +++ b/recipes/armhf/armhflibgcc1_4.9.2.bb @@ -0,0 +1,17 @@ +SUMMARY = "GNU cc and gcc C compiler library" +HOMEPAGE = "http://www.gnu.org/software/gcc/" +SECTION = "libs" +LICENSE = "libgcc" + +RDEPENDS = "armhflibc6" + +require armhf.inc + +DEBV = "10" +PR = "${DEBV}.r${PRI}.0" + +SRC_URI = "${ARMHF_DEB_MIRROR}/libgcc1_${PV}-${DEBV}_armhf.deb;name=deb1 \ + ${ARMHF_DEB_MIRROR}/libgcc1-dbg_${PV}-${DEBV}_armhf.deb;name=deb2" + +SRC_URI[deb1.md5sum] = "6e1941a547478e95ddf50ec6d093999a" +SRC_URI[deb2.md5sum] = "855e35e480e2610cbbda6085fc93dc9b" diff --git a/recipes/armhf/armhflibgles_4.10.00.01.bb b/recipes/armhf/armhflibgles_4.10.00.01.bb new file mode 100644 index 0000000..d398498 --- /dev/null +++ b/recipes/armhf/armhflibgles_4.10.00.01.bb @@ -0,0 +1,81 @@ +DESCRIPTION = "SGX driver binary blobs, armhf version" +LICENSE = "TSPA" +RDEPENDS = "armhflibc6 armhflibgcc1 libgles-omap3-es23" + +PR = "r0" + +SGXPV = "4_10_00_01" +IMGPV = "1.10.2359475" + +BINFILE = "Graphics_SDK_setuplinux_4_10_00_01_hardfp_minimal_demos.bin" +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE} \ +" + +# Logic to unpack installjammer file +TI_BIN_UNPK_CMDS="Y: qY:workdir:Y" +require ti-eula-unpack.inc + +S = "${WORKDIR}/Graphics_SDK_${SGXPV}" + +export ES3LOCATION ?= "${S}/gfx_rel_es3.x" +export ES5LOCATION ?= "${S}/gfx_rel_es5.x" + +DL = ${D}/usr/lib/arm-linux-gnueabihf + +do_configure() { + # clear out old stuff + find Binaries/ | xargs rm -f || true +} + +do_compile() { + find ${S} -name "*_org" -delete +} + +do_install () { + install -d ${DL} + install -d ${DL}/.debug + + # these don't differ between ES3 and ES5 + for f in libEGL libpvrPVR2D_BLITWSEGL libpvrPVR2D_DRIWSEGL libpvrPVR2D_FLIPWSEGL libpvrPVR2D_FRONTWSEGL libpvrPVR2D_LINUXFBWSEGL libusc; do + cp -a ${ES3LOCATION}/${f}.so ${DL}/ + cp -a ${ES3LOCATION}/${f}.dbg ${DL}/.debug/ + done + + # unused: libGLES_CM_eglimage libGLESv2_eglimage libglslcompiler_eglimage libIMGegl_eglimage libsrv_um_dri + + # separate for ES3 and ES5 + for esrev in 3 5; do + install -d ${DL}/ES${esrev}.0/.debug + + ESLOCATION=$(eval echo $(echo \$\{ES${esrev}LOCATION\})) + for f in libews libGLES_CM libGLESv2 libglslcompiler libIMGegl libpvr2d libpvrEWS_REMWSEGL libpvrEWS_WSEGL libPVRScopeServices libsrv_init libsrv_um pvr_drv; do + cp -a ${ESLOCATION}/${f}.so ${DL}/ES${esrev}.0/ + cp -a ${ESLOCATION}/${f}.dbg ${DL}/ES${esrev}.0/.debug/ + done + done + + # for compatibility with other systems + cd ${DL}/ + ln -s libEGL.so libEGL.so.1 + ln -s libGLES_CM.so libGLESv1_CM.so + ln -s libGLES_CM.so libGLESv1_CM.so.1 + ln -s libGLESv2.so libGLESv2.so.2 + cd - +} + +FILES_${PN} = "usr/lib/arm-linux-gnueabihf" + +FILES_${PN}-dbg = "usr/lib/arm-linux-gnueabihf/.debug \ + usr/lib/arm-linux-gnueabihf/ES*/.debug \ +" + +#HACK! These are binaries, so we can't guarantee that LDFLAGS match :( +INSANE_SKIP_${PN} = True + +# Append to update-rc.d postinst +pkg_postinst_${PN}_append() { +rm -f $D${sysconfdir}/powervr-esrev-armhf +/etc/init.d/pvr-init restart || true +} + +SRC_URI[md5sum] = "15a3ccb66e98580e474fc112565f66b6" diff --git a/recipes/armhf/armhflibpng12-0_1.2.50.bb b/recipes/armhf/armhflibpng12-0_1.2.50.bb new file mode 100644 index 0000000..71593c7 --- /dev/null +++ b/recipes/armhf/armhflibpng12-0_1.2.50.bb @@ -0,0 +1,14 @@ +SUMMARY = "PNG image format decoding library" +HOMEPAGE = "http://www.libpng.org/" +SECTION = "libs" +LICENSE = "Libpng" +RDEPENDS = "armhflibc6 armhfzlib1g" + +require armhf.inc + +DEBV = "2+deb8u2" +PR = "${DEBV}.r${PRI}.0" + +SRC_URI = "${ARMHF_DEB_MIRROR}/libpng12-0_${PV}-${DEBV}_armhf.deb" + +SRC_URI[md5sum] = "1c89442504697629465888a43b121daa" diff --git a/recipes/armhf/armhflibsdl-x11/sdl.m4 b/recipes/armhf/armhflibsdl-x11/sdl.m4 new file mode 100644 index 0000000..6acf1b2 --- /dev/null +++ b/recipes/armhf/armhflibsdl-x11/sdl.m4 @@ -0,0 +1,203 @@ +# Configure paths for SDL +# Sam Lantinga 9/21/99 +# stolen from Manish Singh +# stolen back from Frank Belew +# stolen from Manish Singh +# Shamelessly stolen from Owen Taylor + +dnl AM_PATH_SDL([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) +dnl Test for SDL, and define SDL_CFLAGS and SDL_LIBS +dnl +AC_DEFUN([AM_PATH_SDL], +[dnl +dnl Get the cflags and libraries from the sdl-config script +dnl +AC_ARG_WITH(sdl-prefix,[ --with-sdl-prefix=PFX Prefix where SDL is installed (optional)], + sdl_prefix="$withval", sdl_prefix="") +AC_ARG_WITH(sdl-exec-prefix,[ --with-sdl-exec-prefix=PFX Exec prefix where SDL is installed (optional)], + sdl_exec_prefix="$withval", sdl_exec_prefix="") +AC_ARG_ENABLE(sdltest, [ --disable-sdltest Do not try to compile and run a test SDL program], + , enable_sdltest=yes) + + min_sdl_version=ifelse([$1], ,1.2.0,$1) + + if test "x$sdl_prefix$sdl_exec_prefix" = x ; then + PKG_CHECK_MODULES(SDL, [sdl >= $min_sdl_version], + [sdl_pc=yes], + [dnl + AC_MSG_RESULT(no) + sdl_pc=no + ]) + else + sdl_pc=no + if test x$sdl_exec_prefix != x ; then + sdl_config_args="$sdl_config_args --exec-prefix=$sdl_exec_prefix" + if test x${SDL_CONFIG+set} != xset ; then + SDL_CONFIG=$sdl_exec_prefix/bin/sdl-config + fi + fi + if test x$sdl_prefix != x ; then + sdl_config_args="$sdl_config_args --prefix=$sdl_prefix" + if test x${SDL_CONFIG+set} != xset ; then + SDL_CONFIG=$sdl_prefix/bin/sdl-config + fi + fi + fi + + if test "x$sdl_pc" = xyes ; then + no_sdl="" + SDL_CONFIG="pkg-config sdl" + else + as_save_PATH="$PATH" + if test "x$prefix" != xNONE && test "$cross_compiling" != yes; then + PATH="$prefix/bin:$prefix/usr/bin:$PATH" + fi + AC_PATH_PROG(SDL_CONFIG, sdl-config, no, [$PATH]) + PATH="$as_save_PATH" + AC_MSG_CHECKING(for SDL - version >= $min_sdl_version) + no_sdl="" + + if test "$SDL_CONFIG" = "no" ; then + no_sdl=yes + else + SDL_CFLAGS=`$SDL_CONFIG $sdl_config_args --cflags` + SDL_LIBS=`$SDL_CONFIG $sdl_config_args --libs` + + sdl_major_version=`$SDL_CONFIG $sdl_config_args --version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` + sdl_minor_version=`$SDL_CONFIG $sdl_config_args --version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` + sdl_micro_version=`$SDL_CONFIG $sdl_config_args --version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` + if test "x$enable_sdltest" = "xyes" ; then + ac_save_CFLAGS="$CFLAGS" + ac_save_CXXFLAGS="$CXXFLAGS" + ac_save_LIBS="$LIBS" + CFLAGS="$CFLAGS $SDL_CFLAGS" + CXXFLAGS="$CXXFLAGS $SDL_CFLAGS" + LIBS="$LIBS $SDL_LIBS" +dnl +dnl Now check if the installed SDL is sufficiently new. (Also sanity +dnl checks the results of sdl-config to some extent +dnl + rm -f conf.sdltest + AC_TRY_RUN([ +#include +#include +#include +#include "SDL.h" + +char* +my_strdup (char *str) +{ + char *new_str; + + if (str) + { + new_str = (char *)malloc ((strlen (str) + 1) * sizeof(char)); + strcpy (new_str, str); + } + else + new_str = NULL; + + return new_str; +} + +int main (int argc, char *argv[]) +{ + int major, minor, micro; + char *tmp_version; + + /* This hangs on some systems (?) + system ("touch conf.sdltest"); + */ + { FILE *fp = fopen("conf.sdltest", "a"); if ( fp ) fclose(fp); } + + /* HP/UX 9 (%@#!) writes to sscanf strings */ + tmp_version = my_strdup("$min_sdl_version"); + if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { + printf("%s, bad version string\n", "$min_sdl_version"); + exit(1); + } + + if (($sdl_major_version > major) || + (($sdl_major_version == major) && ($sdl_minor_version > minor)) || + (($sdl_major_version == major) && ($sdl_minor_version == minor) && ($sdl_micro_version >= micro))) + { + return 0; + } + else + { + printf("\n*** 'sdl-config --version' returned %d.%d.%d, but the minimum version\n", $sdl_major_version, $sdl_minor_version, $sdl_micro_version); + printf("*** of SDL required is %d.%d.%d. If sdl-config is correct, then it is\n", major, minor, micro); + printf("*** best to upgrade to the required version.\n"); + printf("*** If sdl-config was wrong, set the environment variable SDL_CONFIG\n"); + printf("*** to point to the correct copy of sdl-config, and remove the file\n"); + printf("*** config.cache before re-running configure\n"); + return 1; + } +} + +],, no_sdl=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) + CFLAGS="$ac_save_CFLAGS" + CXXFLAGS="$ac_save_CXXFLAGS" + LIBS="$ac_save_LIBS" + fi + fi + if test "x$no_sdl" = x ; then + AC_MSG_RESULT(yes) + else + AC_MSG_RESULT(no) + fi + fi + if test "x$no_sdl" = x ; then + ifelse([$2], , :, [$2]) + else + if test "$SDL_CONFIG" = "no" ; then + echo "*** The sdl-config script installed by SDL could not be found" + echo "*** If SDL was installed in PREFIX, make sure PREFIX/bin is in" + echo "*** your path, or set the SDL_CONFIG environment variable to the" + echo "*** full path to sdl-config." + else + if test -f conf.sdltest ; then + : + else + echo "*** Could not run SDL test program, checking why..." + CFLAGS="$CFLAGS $SDL_CFLAGS" + CXXFLAGS="$CXXFLAGS $SDL_CFLAGS" + LIBS="$LIBS $SDL_LIBS" + AC_TRY_LINK([ +#include +#include "SDL.h" + +int main(int argc, char *argv[]) +{ return 0; } +#undef main +#define main K_and_R_C_main +], [ return 0; ], + [ echo "*** The test program compiled, but did not run. This usually means" + echo "*** that the run-time linker is not finding SDL or finding the wrong" + echo "*** version of SDL. If it is not finding SDL, you'll need to set your" + echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" + echo "*** to the installed location Also, make sure you have run ldconfig if that" + echo "*** is required on your system" + echo "***" + echo "*** If you have an old version installed, it is best to remove it, although" + echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"], + [ echo "*** The test program failed to compile or link. See the file config.log for the" + echo "*** exact error that occured. This usually means SDL was incorrectly installed" + echo "*** or that you have moved SDL since it was installed. In the latter case, you" + echo "*** may want to edit the sdl-config script: $SDL_CONFIG" ]) + CFLAGS="$ac_save_CFLAGS" + CXXFLAGS="$ac_save_CXXFLAGS" + LIBS="$ac_save_LIBS" + fi + fi + SDL_CFLAGS="" + SDL_LIBS="" + ifelse([$3], , :, [$3]) + fi + AC_SUBST(SDL_CFLAGS) + AC_SUBST(SDL_LIBS) + rm -f conf.sdltest +]) diff --git a/recipes/armhf/armhflibsdl-x11_1.2.14.1.bb b/recipes/armhf/armhflibsdl-x11_1.2.14.1.bb new file mode 100644 index 0000000..873e1b6 --- /dev/null +++ b/recipes/armhf/armhflibsdl-x11_1.2.14.1.bb @@ -0,0 +1,65 @@ +DESCRIPTION = "Simple DirectMedia Layer (X11, Framebuffer, +some OMAP support)" +SECTION = "libs" +PRIORITY = "optional" +LICENSE = "LGPL" +RDEPENDS = "armhflibc6 armhflibasound2 armhflibx11-6 armhflibxext6" +PR = "r0" + +SRCREV = "d45df001413d714c8995e755f04c9936b18aa44a" + +SRC_URI = " \ + git://notaz.gp2x.de/~notaz/sdl_omap.git;protocol=git;branch=master \ + file://sdl.m4 \ +" + +S = "${WORKDIR}/git" + +inherit autotools binconfig pkgconfig + +do_configure_prepend() { + sh autogen.sh +} + +# assumes armhf (arm-unknown-linux-gnueabihf) cross-compiler is available in PATH +# with all required deps +do_configure() { + unset CPP + unset CC + unset CXX + unset AR + unset LD + unset NM + unset STRIP + unset OBJCOPY + unset CPPFLAGS + unset CFLAGS + unset CXXFLAGS + unset PKG_CONFIG_DIR + unset PKG_CONFIG_PATH + unset LDFLAGS + export CPPFLAGS="-I`arm-unknown-linux-gnueabihf-gcc -print-sysroot`/usr/local/include" + export LDFLAGS="-Wl,--hash-style=gnu" + ${S}/configure --host=arm-unknown-linux-gnueabihf --prefix=/usr --libdir=/usr/lib/arm-linux-gnueabihf \ + --disable-static --disable-esd --disable-pulseaudio --enable-video-x11 +} + +do_configure_append () { + cd ${S} + + # prevent libtool from linking libs against libstdc++, libgcc, ... + cat ${TARGET_PREFIX}libtool | sed -e 's/postdeps=".*"/postdeps=""/' > ${TARGET_PREFIX}libtool.tmp + mv ${TARGET_PREFIX}libtool.tmp ${TARGET_PREFIX}libtool + + # copy new sdl.m4 macrofile to the dir for installing + cp ${WORKDIR}/sdl.m4 ${S}/ +} + +do_stage() { + autotools_stage_all + rm ${STAGING_LIBDIR}/arm-linux-gnueabihf/libSDL.la +} + +FILES_${PN} = "usr/lib/arm-linux-gnueabihf/*.so.*" +FILES_${PN}-dbg += "usr/lib/arm-linux-gnueabihf/.debug" +# no conflicts with armel files, please +FILES_${PN}-dev := "" diff --git a/recipes/armhf/armhflibstdc++6_4.9.2.bb b/recipes/armhf/armhflibstdc++6_4.9.2.bb new file mode 100644 index 0000000..845a42b --- /dev/null +++ b/recipes/armhf/armhflibstdc++6_4.9.2.bb @@ -0,0 +1,15 @@ +SUMMARY = "GNU Standard C++ Library" +HOMEPAGE = "http://www.gnu.org/software/gcc/" +SECTION = "libs" +LICENSE = "libgcc" + +RDEPENDS = "armhflibc6 armhflibgcc1" + +require armhf.inc + +DEBV = "10" +PR = "${DEBV}.r${PRI}.0" + +SRC_URI = "${ARMHF_DEB_MIRROR}/libstdc++6_${PV}-${DEBV}_armhf.deb" + +SRC_URI[md5sum] = "b1f9700c58bae72aa0219cd2727ac4da" diff --git a/recipes/armhf/armhflibx11-6_1.6.2.bb b/recipes/armhf/armhflibx11-6_1.6.2.bb new file mode 100644 index 0000000..45b8326 --- /dev/null +++ b/recipes/armhf/armhflibx11-6_1.6.2.bb @@ -0,0 +1,19 @@ +SUMMARY = "Xlib: C Language X Interface library" +DESCRIPTION = "This package provides a client interface to the X Window \ +System, otherwise known as 'Xlib'. It provides a complete API for the \ +basic functions of the window system." + +HOMEPAGE = "http://www.x.org" +SECTION = "x11/libs" +LICENSE = "MIT-X" + +RDEPENDS = "armhflibc6 armhflibxcb1" + +require armhf.inc + +DEBV = "3" +PR = "${DEBV}.r${PRI}.0" + +SRC_URI = "${ARMHF_DEB_MIRROR}/libx11-6_${PV}-${DEBV}_armhf.deb" + +SRC_URI[md5sum] = "3365d16e486c880006cc6bb7552197a7" diff --git a/recipes/armhf/armhflibxau6_1.0.8.bb b/recipes/armhf/armhflibxau6_1.0.8.bb new file mode 100644 index 0000000..be75ca4 --- /dev/null +++ b/recipes/armhf/armhflibxau6_1.0.8.bb @@ -0,0 +1,19 @@ +SUMMARY = "Xau: X Authority Database library" +DESCRIPTION = "libxau provides the main interfaces to the X11 \ +authorisation handling, which controls authorisation for X connections, \ +both client-side and server-side." + +HOMEPAGE = "http://www.x.org" +SECTION = "x11/libs" +LICENSE = "MIT-X" + +RDEPENDS = "armhflibc6" + +require armhf.inc + +DEBV = "1" +PR = "${DEBV}.r${PRI}.0" + +SRC_URI = "${ARMHF_DEB_MIRROR}/libxau6_${PV}-${DEBV}_armhf.deb" + +SRC_URI[md5sum] = "d3ae7c68e51a44e6e07b0afad56d559f" diff --git a/recipes/armhf/armhflibxcb1_1.10.bb b/recipes/armhf/armhflibxcb1_1.10.bb new file mode 100644 index 0000000..4ab485f --- /dev/null +++ b/recipes/armhf/armhflibxcb1_1.10.bb @@ -0,0 +1,18 @@ +SUMMARY = "XCB: The X protocol C binding library" +DESCRIPTION = "The X protocol C-language Binding (XCB) is a replacement \ +for Xlib featuring a small footprint, latency hiding, direct access to \ +the protocol, improved threading support, and extensibility." +HOMEPAGE = "http://xcb.freedesktop.org" +SECTION = "x11/libs" +LICENSE = "MIT-X" + +RDEPENDS = "armhflibxau6 armhflibxdmcp6" + +require armhf.inc + +DEBV = "3+b1" +PR = "${DEBV}.r${PRI}.0" + +SRC_URI = "${ARMHF_DEB_MIRROR}/libxcb1_${PV}-${DEBV}_armhf.deb" + +SRC_URI[md5sum] = "a0f783bfbf449d5e658bea0c73fd75b6" diff --git a/recipes/armhf/armhflibxdmcp6_1.1.1.bb b/recipes/armhf/armhflibxdmcp6_1.1.1.bb new file mode 100644 index 0000000..c8bc4a2 --- /dev/null +++ b/recipes/armhf/armhflibxdmcp6_1.1.1.bb @@ -0,0 +1,21 @@ +SUMMARY = "XDMCP: X Display Manager Control Protocol library" +DESCRIPTION = "The purpose of the X Display Manager Control Protocol \ +(XDMCP) is to provide a uniform mechanism for an autonomous display to \ +request login service from a remote host. An X terminal (screen, \ +keyboard, mouse, processor, network interface) is a prime example of an \ +autonomous display." + +HOMEPAGE = "http://www.x.org" +SECTION = "x11/libs" +LICENSE = "MIT-X" + +RDEPENDS = "armhflibc6" + +require armhf.inc + +DEBV = "1+b1" +PR = "${DEBV}.r${PRI}.0" + +SRC_URI = "${ARMHF_DEB_MIRROR}/libxdmcp6_${PV}-${DEBV}_armhf.deb" + +SRC_URI[md5sum] = "406364969dc6bd3d330d295356b5c98d" diff --git a/recipes/armhf/armhflibxext6_1.3.3.bb b/recipes/armhf/armhflibxext6_1.3.3.bb new file mode 100644 index 0000000..e7aef7a --- /dev/null +++ b/recipes/armhf/armhflibxext6_1.3.3.bb @@ -0,0 +1,23 @@ +SUMMARY = "XExt: X Extension library" +DESCRIPTION = "libXext provides an X Window System client interface to \ +several extensions to the X protocol. The supported protocol extensions \ +are DOUBLE-BUFFER, DPMS, Extended-Visual-Information, LBX, MIT_SHM, \ +MIT_SUNDRY-NONSTANDARD, Multi-Buffering, SECURITY, SHAPE, SYNC, TOG-CUP, \ +XC-APPGROUP, XC-MISC, XTEST. libXext also provides a small set of \ +utility functions to aid authors of client APIs for X protocol \ +extensions." + +HOMEPAGE = "http://www.x.org" +SECTION = "x11/libs" +LICENSE = "MIT-X" + +RDEPENDS = "armhflibc6 armhflibx11-6" + +require armhf.inc + +DEBV = "1" +PR = "${DEBV}.r${PRI}.0" + +SRC_URI = "${ARMHF_DEB_MIRROR}/libxext6_${PV}-${DEBV}_armhf.deb" + +SRC_URI[md5sum] = "2e2ea23c03c37c7fc287142c7a1e2c74" diff --git a/recipes/armhf/armhfzlib1g_1.2.8.bb b/recipes/armhf/armhfzlib1g_1.2.8.bb new file mode 100644 index 0000000..d358af8 --- /dev/null +++ b/recipes/armhf/armhfzlib1g_1.2.8.bb @@ -0,0 +1,18 @@ +SUMMARY = "Zlib Compression Library" +DESCRIPTION = "Zlib is a general-purpose, patent-free, lossless data compression \ +library which is used by many different programs." +HOMEPAGE = "http://zlib.net/" +SECTION = "libs" +LICENSE = "Zlib" +RDEPENDS = "armhflibc6" + +require armhf.inc + +DEBV = "dfsg-2+b1" +PR = "${DEBV}.r${PRI}.0" + +SRC_URI = "${ARMHF_DEB_MIRROR}/zlib1g_${PV}.${DEBV}_armhf.deb;name=deb1 \ + ${ARMHF_DEB_MIRROR}/zlib1g-dbg_${PV}.${DEBV}_armhf.deb;name=deb2" + +SRC_URI[deb1.md5sum] = "7f654390409cba672c5139a67be47af0" +SRC_URI[deb2.md5sum] = "3ff597ae8523a1bed4defb14f2c74f13" diff --git a/recipes/armhf/ti-eula-unpack.inc b/recipes/armhf/ti-eula-unpack.inc new file mode 100644 index 0000000..3b79c24 --- /dev/null +++ b/recipes/armhf/ti-eula-unpack.inc @@ -0,0 +1,71 @@ +# This file defines function used for unpacking the .bin file downloaded over +# the http and display EULA. +# BINFILE - name of the install jammer .bin file +# TARFILE - name of the tar file inside the install jammer +# TI_BIN_UNPK_CMDS - contains list of commands separated with colon to be +# passed while unpacking the bin file. The keyword +# workdir expands to WORKDIR and commands are appendded +# with '\n'. Eg. TI_BIN_UNPK_CMDS="Y:Y: qY:workdir" +# TI_BIN_UNPK_WDEXT - This variable extends workdir path, if user wants to put +# the output in some internal directory + +python do_unpack () { + bb.build.exec_func('base_do_unpack', d) + bb.build.exec_func('ti_bin_do_unpack', d) +} + +TI_BIN_UNPK_WDEXT += "" +python ti_bin_do_unpack() { + + import os + + localdata = bb.data.createCopy(d) + bb.data.update_data(localdata) + + binfile = bb.data.getVar('BINFILE', localdata) + binfile = bb.data.expand(binfile, localdata) + + # Change to the working directory + save_cwd = os.getcwd() + workdir = bb.data.getVar('WORKDIR', localdata) + workdir = bb.data.expand(workdir, localdata) + os.chdir(workdir) + + # Get unpack commands + cmd_string = bb.data.getVar('TI_BIN_UNPK_CMDS', localdata) + cmd_list = cmd_string.split( ":" ) + + # Make the InstallJammer binary executable so we can run it + os.chmod(binfile, 0755) + + # Run the InstallJammer binary and accept the EULA + filename = "HOME=%s ./%s --mode console" % (workdir, binfile) + + # Test executable by printing installer version or help screen (--version currently broken for some installers) + # - this is currently broken in some IJ installers - comment out for now + #if os.system(filename + " --version") != 0: + # print "ERROR: ti-eula-unpack: failed to execute binary installer" + # raise bb.build.FuncFailed() + + f = os.popen(filename,'w') + for cmd in cmd_list: + if cmd == "workdir": + wdext = bb.data.getVar('TI_BIN_UNPK_WDEXT', localdata) + wdext = bb.data.expand(wdext, localdata) + cmd = workdir+wdext + print >>f, "%s\n" % cmd + f.close() + + # Expand the tarball that was created if required + tarfile = bb.data.getVar('TARFILE', localdata) + if bool(tarfile) == True: + tarfile = bb.data.expand(tarfile, localdata) + tcmd = 'tar x --no-same-owner -f %s -C %s' % (tarfile, workdir) + if os.system(tcmd) != 0: + print "ERROR: ti-eula-unpack: failed to extract tarfile" + raise bb.build.FuncFailed() + + # Return to the previous directory + os.chdir(save_cwd) +} + -- 2.39.5