diff --git a/media-gfx/splashutils/Manifest b/media-gfx/splashutils/Manifest deleted file mode 100644 index e888a6a..0000000 --- a/media-gfx/splashutils/Manifest +++ /dev/null @@ -1,18 +0,0 @@ -AUX libmng2-lcms2.patch 1595 SHA256 4d96ba589ae779a73b3ed2ce5514d72ce9e8a51dbc74d4b8f89f7fcac6b3a733 SHA512 81c3edf653f17a1c4c671935a2e32df0c7751414e3863bd2f48208773f509616c6f9933d9b370697edd59555c4389a8ccfaa9a6ddd24839498778af52c02ef6c WHIRLPOOL 2f1ecb077bcc0fca1bd18fb8a9636c6b45ee564b421c614b6ec8664458913f4bd933c45b44b4e1419d093faf0cb9bc60ea5a36bd186d74efc69b948e5037f9e3 -AUX miscsplashutils-0.1.8_fix-freetype-includes.patch 406 SHA256 68bccd14ac1fb5b143f454e0ddf84536e87bbc4e7318301c58c737fa3cc46e2a SHA512 136520d9e558533404212913578f44963bc4c550ceff8007a3da4d580fb338b90c5d11b3d242b0c0a81bbc8253803e8d8edad3b669c273bd35da48659a508687 WHIRLPOOL 005be0266925115ff24caa1938f55a7348383ca30cfcc600cd9a59b62eaa5ba7a1430693cfaaa1c4e89e0451981b2bbcb2f4ea338f8269601e24c708370b78ee -AUX splashutils-1.5.4.4-bzip2.patch 1539 SHA256 9596a410eb5fcadab850ac8f1d54c14d60287333a204212cfcdb1dc2dfa608ac SHA512 c42a967361b4ebe9673eb41cb3d8d120edf95708892422bed0b2a46ea501d852c6c43b9405c90b69469a9b0eb07a5159e1547d168ef04b0de8a6c7bae0651317 WHIRLPOOL 4f28bec7ffac7caa4b5fc8e931ae579bf8041b8fcf6c6b571dc9c59a329285d6a6c5943313bedfc3144a3f0848eecbe0784a27bdaf395715c57909bd5e90447c -AUX splashutils-1.5.4.4-freetype-bz2.patch 515 SHA256 06a9f6d9d9206d09115abf3d8c86692908530f11168a51d99dd43a465e7092c0 SHA512 880cc0703de76c3c145680f1e85e461473df3dd41817757878bd18dc4c0d10484d1f93f995e6818ddcf3309e6b9febc1447ce7880006df8e08626bac5aae2e5c WHIRLPOOL 50c58afaacfd2594c1bc402c07680d742809e2af694b98acb3656f7dbc50cc85a537bec4b362c443f9dbe1054307c397cdba9613392ef6c508760d2487095265 -AUX splashutils-1.5.4.4-gentoo-typo-fix.patch 567 SHA256 92ee0727bfd9fe6f9565d09546ea63079467f67c2d57385713a62d0b617bb1bf SHA512 f5d5fd222b5dea9906e5a7541ad2ab1ff161061c6bb5e013929767d3f6aa9fe245092e201b8d42a086938be3320b77384301c22bc307cf7872daac33184127f2 WHIRLPOOL f971453383c1abf28c912a49c426c7da92ba6d44580981e89bedd4ef7df9940236e53842bd31ecb85c44c2ff31230569a33e7233498269aefc8caeacb84b9caa -AUX splashutils-1.5.4.4-multi-keyboard.patch 10158 SHA256 95a0de0a666c29c7d80fe653659191770d359f62d1edac00dc3ad97ac14d6dac SHA512 71056d599f4465ef424444d717ce1597295e0228f548c69cb36ef617075af430b1ac50f5be27bca65a50ed9e7d0169ceb256dbc66cf4b635fd9f8310d32baeae WHIRLPOOL ce782d0a6a21350fd9b00792f0eb247907b3bcf900c0e5aa8f6304d4d3c05ee59f1b036d623f25262484bd8d48ddd95a5ef086644d369c6190570be8db432112 -AUX splashutils-1.5.4.4-r3-bzip2.patch 1808 SHA256 9622dc7721e0c36538e8a1321ff59e224231578675831909d1c68f3eb9f46434 SHA512 8c1ea0bef43c4c829615db010a958ffa7c4ab8c84786a39e702be677745e47004ee59bdb1d7c80bfc637ff7c0f9a129f225e024251492b45aec7c42e1bd73da0 WHIRLPOOL 2522dcc049d68269764c9254f8884d62aa16d08fe5fa917b7c89db46617c1694c73c79f3af30c361cdd22b4d68c07b0b52c70c3243c15b263c6b5cdb6e2ef457 -AUX splashutils-1.5.4.4_fix-freetype-includes.patch 747 SHA256 b92527c18f5b402c63dc0c57e907ca537e7113d10264da0747224a7662c38b78 SHA512 0a2cb454678e16a8fb2bd169a296f957887331d75113af4af68222c8fb22de279ab606398cb00a26e3a6dad16f503b5ab614617523124dcd7fedc87f0fc55cdd WHIRLPOOL 7eb00076fedeae8e30ed11a746724919802885f8fd9d9fb27335309c5147277264c487323415d2690e1e4a247699cf77ab4834b6630e4aa219398b7446315eb5 -DIST freetype-2.3.12.tar.bz2 1453034 SHA256 3b96438f016a62b676c1d2089c00ca777f710d19f6aefa66ccf068d360db3e92 SHA512 becb0f138ee13181513d3f03b943f0a474e492cab151992fa78d0c84127819dc91ec6d2bd1528af7e111ab150b3a29104f2f7ab79650cebc35ce4d966b19f34b WHIRLPOOL 1a7363b8e1cc1b4597077e6cdf7e978b80cc76e1428124312d139ee81fe5247eed5ec0243352b721c28a25a179bceb901700d0766c1a5110b19f8fe53c303a89 -DIST jpegsrc.v8a.tar.gz 962018 SHA256 bf86a5eaafa79b5d60feb27bee08df2db4c9ca2fb40d453e7a2080f7663a713b SHA512 4020e82e16b99189b1a50bad18b09616775559740b94a988692aa33f9302d4b5abe3ccaa30895b49e6950fb3d9a830deeb7df750d128ec5c7e1844583db4524d WHIRLPOOL 46e0c98f30c8d975b85b8e86b69e9c5c64632f579502b1b3c54902706d7e08b86582a85b49a0d3bfffd03cd90946fbd20171324504a5ff521eb89e6ce11d568b -DIST libpng-1.4.3.tar.bz2 658335 SHA256 2b022f39f4788505ad62a4b1f4a33286228d544719680da40f3626393ecde4a2 SHA512 aaa137ebc2312805d58caf19702d24a34ee81593d4250c4e807ce66ba7edb829926919cd0a2b0e5975421451c8eb6674798c06dbaf745175b16c9d3c92b63f61 WHIRLPOOL d383e01e6080166816991650183b47d15938aa269c0a85e234846b9c5a7ec04a1ba7620779b4ddae639ca64440772ce8dd1b3a596f6eb32124c4d6c55592fb0a -DIST miscsplashutils-0.1.8.tar.bz2 91997 SHA256 38e8434c7266126477237c4d9e6cbeca152089ab33c14a7761089b7970f8d336 SHA512 fa017e264249feda45839030728e90c82f775354c3f2c29a88362938c4a31b19e6d61f967512305642f8b96575f4d756ba197e672a361760e40080c23ec0442a WHIRLPOOL c418ee425bf323fc0e00388be4547232207fd6cac10a2e8cafeef8c8aabcd014052307533bd015e61dc483ab45edd9fbd59a3005549b7bee4a4b90bf3297394a -DIST splashutils-gentoo-1.0.17.tar.bz2 15814 SHA256 6877263d0b6f5a3532db0d6a531cd4d41fbc6c45a16c5d10050e9048ecc1af81 SHA512 75f1fbfdf165f571b0bf09235235827f370e1b940f1717c4faf5b223caba0b80f853a910ba492c776512aecfafa6e74fd964239bbc6cf412620143d5ffc74167 WHIRLPOOL de9e1ca86a87c169f0a2f7844ab9a68b29cc46c208daca4d13cf7d552b35c05b6e266d66724078cf1f6eea3d41496fdf4fd7b3219697b2032520ad2b9a5ec5c9 -DIST splashutils-lite-1.5.4.4.tar.bz2 441340 SHA256 bc0e22293d4550281d2289672da3acb42594c18a75b9d00ba75526e05162ec6b SHA512 1a78216a1de1fdccff514494d7301640e447c65466e1fe02428e5114485507f67fe4394094880d927d074a8ab2d9c786ba03f9fb0371eb7ab6ef4e3b01aa4613 WHIRLPOOL f861a1673fd9e1fe32e417da48be8c472c5c3cc06844eb0886a66b498ca38cb04a6e51708821eefe3e15f66004bb6a4ef76df7242643b34090035bffdf1f87d7 -DIST zlib-1.2.3.tar.bz2 425209 SHA256 e3b9950851a19904d642c4dec518623382cf4d2ac24f70a76510c944330d28ca SHA512 edae735960279d92acf58e1f4095c6392a7c2059b8f1d2c46648fc608a0fb06b392db2d073f4973f5762c034ea66596e769b95b3d26ad963a086b9b2d09825f2 WHIRLPOOL e874b123296f5d77daf60617501b30f4beebccb64b3910c2539f75f6c194a2cf4885dc7a3904bf790e1651120ec33b55c48e95970dd6bfd6c4d0a2ea48d7d0f4 -EBUILD splashutils-1.5.4.4-r1.ebuild 7862 SHA256 e7611890bc45fb450dd95762d2fbe6fb0674ebe05b1bb968a13a8e44f4eb5bf2 SHA512 1765798dd36786c3bc672ba7e9a9c5585e39e7305ac8a587a6562bebc07e6f82764eeb0db861392ce2cc254763240dc95eef3e0564dd882206a15c12f52cf3b9 WHIRLPOOL 270990e9ad3e12925017b4904bebcf15344f6b866c118ccc7ef9954e3bd58b21642d0b29cfc46f44eada6f412e9ba8af27871a9822cc9c5385b64314fe89b7b6 -EBUILD splashutils-1.5.4.4-r4.ebuild 7017 SHA256 a192d1d2803efcec6deb7754e9cd8cb25331ec18c5ef010d158b08127452cf85 SHA512 a2cc15fbf197d0b6b11858b4db2a0b19a047a578c8092d5d200c6f579f30537d99c9aea0c9e545e86a8504738a8ea4287050dfeff468af553de6e285d0aff0f0 WHIRLPOOL 7b8ca95ac11789b56722620a2b760e15d7cd08eb8ab2aa30f9adb252c0b227be82466f7afae8521fc1ddef775522518a332baf2cf2c6526990cf006eea625f1b -MISC metadata.xml 324 SHA256 51a25c570502116aa46bfe2bdfbb99be8a81290879563848978a9ee301a3dfa5 SHA512 4fccbcc1c6372560a0139262caf1f305cf658be6761e9703a0033da08af0d8a3dc310e1ceec52761b173fce2d6a94971fbde69ee0a419a7f00457f08691b233e WHIRLPOOL 60b68573116b7ef2a1a4fd87ab47172b56617c7d713ba44e9cdfce23283bf45ddf94ce0d4dd7d9d8ca7ab0c3af164557ec8f16ae872269b1b04b92d3a6e4781d diff --git a/media-gfx/splashutils/files/libmng2-lcms2.patch b/media-gfx/splashutils/files/libmng2-lcms2.patch deleted file mode 100644 index 553bb94..0000000 --- a/media-gfx/splashutils/files/libmng2-lcms2.patch +++ /dev/null @@ -1,39 +0,0 @@ ---- configure-old 2014-02-03 18:49:57.524228900 +0100 -+++ configure 2014-02-03 18:54:31.920895855 +0100 -@@ -13025,13 +13025,13 @@ - MNG_LIBS="${MNG_LIBS} -lz" - fi - -- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cmsCloseProfile in -llcms" >&5 --$as_echo_n "checking for cmsCloseProfile in -llcms... " >&6; } -+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cmsCloseProfile in -llcms2" >&5 -+$as_echo_n "checking for cmsCloseProfile in -llcms2... " >&6; } - if ${ac_cv_lib_lcms_cmsCloseProfile+:} false; then : - $as_echo_n "(cached) " >&6 - else - ac_check_lib_save_LIBS=$LIBS --LIBS="-llcms $LIBS" -+LIBS="-llcms2 $LIBS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ - -@@ -13062,7 +13062,7 @@ - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lcms_cmsCloseProfile" >&5 - $as_echo "$ac_cv_lib_lcms_cmsCloseProfile" >&6; } - if test "x$ac_cv_lib_lcms_cmsCloseProfile" = xyes; then : -- MNG_LIBS="${MNG_LIBS} -llcms" -+ MNG_LIBS="${MNG_LIBS} -llcms2" - fi - - ---- configure.ac-old 2014-02-03 18:49:17.970895525 +0100 -+++ configure.ac 2014-02-03 18:53:08.964229101 +0100 -@@ -538,7 +538,7 @@ - MNG_LIBS="${MNG_LIBS} -lmng" - MNG_LIBS="${MNG_LIBS} ${JPEG_LIBS}" - AC_CHECK_LIB([z], [zlibVersion], [MNG_LIBS="${MNG_LIBS} -lz" ]) -- AC_CHECK_LIB([lcms], [cmsCloseProfile],[MNG_LIBS="${MNG_LIBS} -llcms"]) -+ AC_CHECK_LIB([lcms2], [cmsCloseProfile],[MNG_LIBS="${MNG_LIBS} -llcms2"]) - ], - [AC_MSG_ERROR(['libmng' library file was not found.])] - ) diff --git a/media-gfx/splashutils/files/miscsplashutils-0.1.8_fix-freetype-includes.patch b/media-gfx/splashutils/files/miscsplashutils-0.1.8_fix-freetype-includes.patch deleted file mode 100644 index 8bf5fae..0000000 --- a/media-gfx/splashutils/files/miscsplashutils-0.1.8_fix-freetype-includes.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -dNur a/fbtruetype/ttf.c b/fbtruetype/ttf.c ---- a/fbtruetype/ttf.c 2006-02-03 16:10:41.000000000 +0100 -+++ b/fbtruetype/ttf.c 2014-07-24 16:39:03.645062304 +0200 -@@ -13,8 +13,8 @@ - #include - #include FT_FREETYPE_H - /* #include */ --#include --#include -+#include FT_OUTLINE_H -+#include FT_TRUETYPE_IDS_H - - #include "ttf.h" - diff --git a/media-gfx/splashutils/files/splashutils-1.5.4.4-bzip2.patch b/media-gfx/splashutils/files/splashutils-1.5.4.4-bzip2.patch deleted file mode 100644 index e821c16..0000000 --- a/media-gfx/splashutils/files/splashutils-1.5.4.4-bzip2.patch +++ /dev/null @@ -1,43 +0,0 @@ - core/configure.ac | 6 ++++++ - core/src/Makefile.am | 2 +- - 2 files changed, 7 insertions(+), 1 deletions(-) - -diff --git a/core/configure.ac b/core/configure.ac -index c5fbb84..ae9e235 100644 ---- a/core/configure.ac -+++ b/core/configure.ac -@@ -616,6 +616,7 @@ AS_IF( - AC_SUBST([PNG_CFLAGS]) - AC_SUBST([PNG_LIBS]) - -+BZ2_LIBS= - AS_IF( - [test "x${config_ttf}" = "xyes"], - [ -@@ -625,8 +626,13 @@ AS_IF( - , - [AC_MSG_ERROR([freetype was not found.])] - ) -+ AC_CHECK_LIB([bz2], [BZ2_bzDecompress], -+ [BZ2_LIBS="${BZ2_LIBS} -lbz2"], -+ [AC_MSG_ERROR(['libbz2' library was not found.])] -+ ) - ] - ) -+AC_SUBST([BZ2_LIBS]) - - AH_TOP([#ifndef __SPLASH_CONFIG_H - #define __SPLASH_CONFIG_H]) -diff --git a/core/src/Makefile.am b/core/src/Makefile.am -index d6ce315..349b5e7 100644 ---- a/core/src/Makefile.am -+++ b/core/src/Makefile.am -@@ -190,7 +190,7 @@ fbsplashctl_SOURCES = $(fbsplashd_SOURCES) $(splash_util_SOURCES) fbspla - fbsplashctl_CFLAGS = $(AM_CFLAGS) $(PTHREAD_STATIC_CFLAGS) $(RT_CFLAGS) $(libfbsplashrender_la_CFLAGS) -DUNIFIED_BUILD - fbsplashctl_CPPFLAGS = $(fbsplashd_CPPFLAGS) $(splash_util_CPPFLAGS) - fbsplashctl_LDFLAGS = $(AM_LDFLAGS) -all-static --fbsplashctl_LDADD = libfbsplashrender.la libfbsplash.la $(PTHREAD_STATIC_LIBS) $(RT_LIBS) $(GPM_LIBS) -+fbsplashctl_LDADD = libfbsplashrender.la libfbsplash.la $(PTHREAD_STATIC_LIBS) $(RT_LIBS) $(GPM_LIBS) $(BZ2_LIBS) - - if CONFIG_FBCON_DECOR - fbsplashctl_SOURCES += $(fbcondecor_ctl_SOURCES) diff --git a/media-gfx/splashutils/files/splashutils-1.5.4.4-freetype-bz2.patch b/media-gfx/splashutils/files/splashutils-1.5.4.4-freetype-bz2.patch deleted file mode 100644 index 3438fd5..0000000 --- a/media-gfx/splashutils/files/splashutils-1.5.4.4-freetype-bz2.patch +++ /dev/null @@ -1,15 +0,0 @@ -=== modified file 'fbtruetype/Makefile' ---- fbtruetype/Makefile 2011-10-01 14:10:17 +0000 -+++ fbtruetype/Makefile 2011-10-01 14:15:02 +0000 -@@ -23,8 +23,8 @@ - OBJECTS = fbtruetype.o messages.o console.o ttf.o luxisri.o - - LDFLAGS += -L$(LIBDIR) --LIBSS = $(LIBDIR)/libfreetype.a $(LIBDIR)/libz.a -lm --LIBSD = -lfreetype -lm -+LIBSS = $(shell pkg-config freetype2 --libs --static) -lm -+LIBSD = $(shell pkg-config freetype2 --libs) -lm - - CFLAGS += -I/usr/include/freetype2 - COMPILE = $(CC) $(CFLAGS) - diff --git a/media-gfx/splashutils/files/splashutils-1.5.4.4-gentoo-typo-fix.patch b/media-gfx/splashutils/files/splashutils-1.5.4.4-gentoo-typo-fix.patch deleted file mode 100644 index 4b8d513..0000000 --- a/media-gfx/splashutils/files/splashutils-1.5.4.4-gentoo-typo-fix.patch +++ /dev/null @@ -1,19 +0,0 @@ -commit 74dda8291efae78f00bb781148c8fd4fccaeb764 -Author: MichaƂ Januszewski -Date: Tue Jun 14 23:23:33 2011 +0200 - - Fix typo in the Gentoo initscript. - -diff --git a/gentoo/init-fbcondecor b/gentoo/init-fbcondecor -index b66f40a..ce921b6 100755 ---- a/gentoo/init-fbcondecor -+++ b/gentoo/init-fbcondecor -@@ -12,7 +12,7 @@ start() { - splash_setup - - if [ -z "${FBCONDECOR_TTYS}" ]; then -- FBCONDECOR_TTYS=$(seq 1 "${rc_tty_number:-${RC_TTY_NUMBER}:-12}") -+ FBCONDECOR_TTYS=$(seq 1 "${rc_tty_number:-${RC_TTY_NUMBER:-12}}") - fi - - local err=0 diff --git a/media-gfx/splashutils/files/splashutils-1.5.4.4-multi-keyboard.patch b/media-gfx/splashutils/files/splashutils-1.5.4.4-multi-keyboard.patch deleted file mode 100644 index 23f15fd..0000000 --- a/media-gfx/splashutils/files/splashutils-1.5.4.4-multi-keyboard.patch +++ /dev/null @@ -1,381 +0,0 @@ -diff -ru a/core/src/common.h b/core/src/common.h ---- a/core/src/common.h 2013-01-11 06:35:35.000000000 +0200 -+++ b/core/src/common.h 2013-01-11 06:34:08.000000000 +0200 -@@ -34,6 +34,10 @@ - #define PATH_PROC FBSPLASH_DIR"/proc" - #endif - -+/* Maximum number of keyboard connected to a machine. -+ * The number is big (8) to be on the safe side */ -+#define MAX_KBDS 8 -+ - /* Useful short-named types */ - typedef u_int8_t u8; - typedef u_int16_t u16; -diff -ru a/core/src/daemon.c b/core/src/daemon.c ---- a/core/src/daemon.c 2013-01-11 06:35:35.000000000 +0200 -+++ b/core/src/daemon.c 2013-01-11 06:34:08.000000000 +0200 -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -29,6 +30,8 @@ - #include "common.h" - #include "daemon.h" - -+#define EV_BUF_SIZE 8 -+ - /* Threading structures */ - pthread_mutex_t mtx_tty = PTHREAD_MUTEX_INITIALIZER; - pthread_mutex_t mtx_paint = PTHREAD_MUTEX_INITIALIZER; -@@ -41,7 +44,8 @@ - int ctty = CTTY_VERBOSE; - - /* File descriptors */ --int fd_evdev = -1; -+int fd_evdevs[MAX_KBDS]; -+int evdev_count = 0; - #ifdef CONFIG_GPM - int fd_gpm = -1; - #endif -@@ -51,7 +55,6 @@ - - /* Misc settings */ - char *notify[2]; --char *evdev = NULL; - - /* Service list */ - list svcs = { NULL, NULL }; -@@ -400,56 +403,83 @@ - } - } - -+__u16 get_ev_key_pressed(int fd_evdev, int ev_buf_size, -+ struct input_event *ev_buf) { -+ size_t rb; -+ int i; -+ rb = read(fd_evdev, ev_buf, sizeof(struct input_event) * ev_buf_size); -+ if (rb < (int) sizeof(struct input_event)) -+ return 0; -+ -+ for (i = 0; i < (int) (rb / sizeof(struct input_event)); i++) { -+ if (ev_buf[i].type != EV_KEY || ev_buf[i].value != 0) -+ continue; -+ return ev_buf[i].code; -+ } -+} -+ - /* - * Event device monitor thread. - */ - void* thf_switch_evdev(void *unused) - { -- int i, h, oldstate; -- size_t rb; -- struct input_event ev[8]; -+ int i, h, oldstate, nfds, retval, fd_evdev; -+ fd_set rfds; -+ struct input_event ev_buf[EV_BUF_SIZE]; -+ __u16 key_pressed = 0; - - while (1) { -- rb = read(fd_evdev, ev, sizeof(struct input_event)*8); -- if (rb < (int) sizeof(struct input_event)) -- continue; -+ nfds = 0, fd_evdev = -1; -+ FD_ZERO(&rfds); -+ for (i = 0;i < evdev_count;i++) { -+ FD_SET(fd_evdevs[i], &rfds); -+ nfds = max(nfds, fd_evdevs[i]); -+ } - -- for (i = 0; i < (int) (rb / sizeof(struct input_event)); i++) { -- if (ev[i].type != EV_KEY || ev[i].value != 0) -- continue; -+ nfds++; - -- switch (ev[i].code) { -- case KEY_F2: -- pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &oldstate); -- pthread_mutex_lock(&mtx_paint); -- if (ctty == CTTY_SILENT) { -- h = config.tty_v; -- } else { -- h = config.tty_s; -+ retval = select(nfds, &rfds, NULL, NULL, NULL); -+ if (retval == -1) -+ perror("select()"); -+ else if (retval) { -+ for (i = 0;i < evdev_count;i++) { -+ if (FD_ISSET(fd_evdevs[i], &rfds)) { -+ fd_evdev = fd_evdevs[i]; -+ break; - } -- pthread_mutex_unlock(&mtx_paint); -- pthread_setcancelstate(oldstate, NULL); -+ } -+ key_pressed = get_ev_key_pressed(fd_evdev, EV_BUF_SIZE, ev_buf); -+ if (key_pressed == -1) -+ continue; -+ switch (key_pressed) { -+ case KEY_F2: -+ pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &oldstate); -+ pthread_mutex_lock(&mtx_paint); -+ h = (ctty == CTTY_SILENT) ? config.tty_v : config.tty_s; -+ pthread_mutex_unlock(&mtx_paint); -+ pthread_setcancelstate(oldstate, NULL); -+ -+ /* Switch to the new tty. This ioctl has to be done on -+ * the silent tty. Sometimes init will mess with the -+ * settings of the verbose console which will prevent -+ * console switching from working properly. -+ * -+ * Don't worry about fd_tty[config.tty_s] -+ * not being protected by a mutex -- -+ * this thread is always killed before any changes -+ * are made to fd_tty[config.tty_s]. -+ */ -+ ioctl(fd_tty[config.tty_s], VT_ACTIVATE, h); -+ break; - -- /* Switch to the new tty. This ioctl has to be done on -- * the silent tty. Sometimes init will mess with the -- * settings of the verbose console which will prevent -- * console switching from working properly. -- * -- * Don't worry about fd_tty[config.tty_s] not being protected by a -- * mutex -- this thread is always killed before any changes -- * are made to fd_tty[config.tty_s]. -- */ -- ioctl(fd_tty[config.tty_s], VT_ACTIVATE, h); -- break; -- -- case KEY_F3: -- config.textbox_visible = !config.textbox_visible; -- invalidate_textbox(theme, config.textbox_visible); -- cmd_paint(NULL); -- break; -+ case KEY_F3: -+ config.textbox_visible = !config.textbox_visible; -+ invalidate_textbox(theme, config.textbox_visible); -+ cmd_paint(NULL); -+ break; - } -- } -- } -+ } /* end of else if (retval) */ -+ } /* end of while(1) */ - - pthread_exit(NULL); - } -@@ -519,7 +549,7 @@ - - /* Do we have to start a monitor thread? */ - if (update & UPD_MON) { -- if (fd_evdev != -1) { -+ if (evdev_count >= 0) { - if (pthread_create(&th_switchmon, NULL, &thf_switch_evdev, NULL)) { - iprint(MSG_ERROR, "Evdev monitor thread creation failed.\n"); - exit(3); -diff -ru a/core/src/daemon.h b/core/src/daemon.h ---- a/core/src/daemon.h 2013-01-11 06:35:35.000000000 +0200 -+++ b/core/src/daemon.h 2013-01-11 06:34:08.000000000 +0200 -@@ -40,13 +40,13 @@ - extern int fd_tty_s, fd_tty1, fd_tty0; - - /* -- * Event device on which the daemon listens for F2 keypresses. -- * The proper device has to be detected by an external program and -+ * Event devices on which the daemon listens for F2 keypresses. -+ * The proper devices have to be detected by an external program and - * then enabled by sending an appropriate command to the splash - * daemon. - */ --extern int fd_evdev; --extern char *evdev; -+extern int fd_evdevs[]; -+extern int evdev_count; - - #ifdef CONFIG_GPM - #include -diff -ru a/core/src/daemon_cmd.c b/core/src/daemon_cmd.c ---- a/core/src/daemon_cmd.c 2013-01-11 06:35:35.000000000 +0200 -+++ b/core/src/daemon_cmd.c 2013-01-11 06:34:08.000000000 +0200 -@@ -239,18 +239,35 @@ - */ - int cmd_set_event_dev(void **args) - { -- if (evdev) -- free(evdev); -- -- evdev = strdup(args[0]); -+ char *evdevs; -+ char *evdev; -+ int i, j, fd_evdev = -1; - - pthread_cancel(th_switchmon); -+ for (i = 0;i < evdev_count;i++) { -+ close(fd_evdevs[i]); -+ } -+ evdevs = strdup(args[1]); -+ evdev_count = *(int*)args[0]; -+ j = 0; -+ for (i = 0;i < evdev_count;i++, evdevs = NULL) { -+ evdev = strtok(evdevs, ","); -+ fd_evdev = open(evdev, O_RDONLY); -+ if (fd_evdev != -1) { -+ fd_evdevs[j] = fd_evdev; -+ j++; -+ } else { -+ perror("failed to open event device"); -+ } -+ } -+ if (j == 0) { /* all input devices failed to open */ -+ evdev_count = -1; -+ free(evdevs); -+ return -1; -+ } - -- if (fd_evdev != -1) -- close(fd_evdev); -- -- fd_evdev = open(evdev, O_RDONLY); -- -+ evdev_count = j; -+ free(evdevs); - switchmon_start(UPD_MON, config.tty_s); - - return 0; -@@ -524,8 +541,8 @@ - - { .cmd = "set event dev", - .handler = cmd_set_event_dev, -- .args = 1, -- .specs = "s" -+ .args = 2, -+ .specs = "ds" - }, - - { .cmd = "set message", -@@ -628,7 +645,7 @@ - continue; - - for (j = 0; j < known_cmds[i].args; j++) { -- for (; buf[k] == ' '; buf[k] = 0, k++); -+ for (; buf[k] == ' '; buf[k] = '\0', k++); - if (!buf[k]) { - args[j] = NULL; - continue; -diff -ru a/core/src/libfbsplash.c b/core/src/libfbsplash.c ---- a/core/src/libfbsplash.c 2013-01-11 06:35:35.000000000 +0200 -+++ b/core/src/libfbsplash.c 2013-01-11 06:34:08.000000000 +0200 -@@ -588,6 +588,8 @@ - return -1; - } - -+#define EVDV_BUF_LEN 128 -+ - /** - * Try to set the event device for the splash daemon. - * -@@ -595,10 +597,14 @@ - */ - int fbsplash_set_evdev(void) - { -- char buf[128]; -+ char buf[EVDV_BUF_LEN]; -+ char evdev_devs[EVDV_BUF_LEN * MAX_KBDS]; - FILE *fp; - int i, j; -- -+ int kbd_count; -+ int max_chars, chars_left, dev_path_len; -+ char dev_path[] = PATH_DEV "/input/"; -+ dev_path_len = strlen(dev_path); - char *evdev_cmds[] = { - "/bin/grep -Hsi keyboard " PATH_SYS "/class/input/input*/name | /bin/sed -e 's#.*input\\([0-9]*\\)/name.*#event\\1#'", - "/bin/grep -Hsi keyboard " PATH_SYS "/class/input/event*/device/driver/description | /bin/grep -o 'event[0-9]\\+'", -@@ -608,22 +614,43 @@ - - /* Try to activate the event device interface so that F2 can - * be used to switch from verbose to silent. */ -- buf[0] = 0; -- for (i = 0; i < sizeof(evdev_cmds)/sizeof(char*); i++) { -+ buf[0] = '\0'; -+ kbd_count = 0; -+ max_chars = sizeof(evdev_devs) / sizeof(char*); -+ chars_left = max_chars - 1; -+ evdev_devs[0] = '\0'; -+ for (i = 0; i < sizeof(evdev_cmds) / sizeof(char*); i++) { - fp = popen(evdev_cmds[i], "r"); - if (fp) { -- fgets(buf, 128, fp); -- if ((j = strlen(buf)) > 0) { -- if (buf[j-1] == '\n') -- buf[j-1] = 0; -- break; -+ while (fgets(buf, 128, fp) && kbd_count < MAX_KBDS) { -+ if ((j = strlen(buf)) > 0) { -+ if (buf[j-1] == '\n') -+ buf[j-1] = ','; -+ if (chars_left < (j + dev_path_len)) { -+ break; -+ } -+ kbd_count++; -+ strncat(evdev_devs, dev_path, chars_left); -+ chars_left -= dev_path_len; -+ strncat(evdev_devs, buf, chars_left); -+ chars_left -= j; -+ } -+ } -+ /* replace the last ',' with '\n' */ -+ if (chars_left > 0 && evdev_devs[0] != '\0') { -+ j = strlen(evdev_devs); -+ if (j > 2) { -+ evdev_devs[j - 1] = '\n'; -+ } - } - pclose(fp); - } -+ if (kbd_count > 0) -+ break; - } - -- if (buf[0] != 0) { -- fbsplash_send("set event dev " PATH_DEV "/input/%s\n", buf); -+ if (evdev_devs[0] != '\0') { -+ fbsplash_send("set event dev %d %s", kbd_count, evdev_devs); - return 0; - } else { - return -1; -@@ -661,6 +688,8 @@ - return 0; - } - -+#define MAX_CMD 2048 -+ - /** - * Send stuff to the splash daemon using the splash FIFO. - * -@@ -668,7 +697,7 @@ - */ - int fbsplash_send(const char *fmt, ...) - { -- char cmd[256]; -+ char cmd[MAX_CMD]; - va_list ap; - - if (!fp_fifo) { -@@ -690,7 +719,7 @@ - } - - va_start(ap, fmt); -- vsnprintf(cmd, 256, fmt, ap); -+ vsnprintf(cmd, MAX_CMD, fmt, ap); - va_end(ap); - - fprintf(fp_fifo, cmd); diff --git a/media-gfx/splashutils/files/splashutils-1.5.4.4-r3-bzip2.patch b/media-gfx/splashutils/files/splashutils-1.5.4.4-r3-bzip2.patch deleted file mode 100644 index 13626df..0000000 --- a/media-gfx/splashutils/files/splashutils-1.5.4.4-r3-bzip2.patch +++ /dev/null @@ -1,53 +0,0 @@ - core/configure.ac | 6 ++++++ - core/src/Makefile.am | 2 +- - 2 files changed, 7 insertions(+), 1 deletions(-) - -diff --git a/core/configure.ac b/core/configure.ac -index c5fbb84..ae9e235 100644 ---- a/core/configure.ac -+++ b/core/configure.ac -@@ -616,6 +616,7 @@ AS_IF( - AC_SUBST([PNG_CFLAGS]) - AC_SUBST([PNG_LIBS]) - -+BZ2_LIBS= - AS_IF( - [test "x${config_ttf}" = "xyes"], - [ -@@ -625,8 +626,13 @@ AS_IF( - , - [AC_MSG_ERROR([freetype was not found.])] - ) -+ AC_CHECK_LIB([bz2], [BZ2_bzDecompress], -+ [BZ2_LIBS="${BZ2_LIBS} -lbz2"], -+ [AC_MSG_ERROR(['libbz2' library was not found.])] -+ ) - ] - ) -+AC_SUBST([BZ2_LIBS]) - - AH_TOP([#ifndef __SPLASH_CONFIG_H - #define __SPLASH_CONFIG_H]) -diff --git a/core/src/Makefile.am b/core/src/Makefile.am -index d6ce315..349b5e7 100644 ---- a/core/src/Makefile.am -+++ b/core/src/Makefile.am -@@ -121,6 +121,9 @@ - libfbsplashrender_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(libfbsplashrender_version) - libfbsplashrender_la_LIBADD = libfbsplash.la - -+libfbsplashrender_la_CFLAGS += $(BZ2_CFLAGS) -+libfbsplashrender_la_LIBADD += $(BZ2_LIBS) -+ - libfbsplashrender_la_CFLAGS += $(JPEG_CFLAGS) - libfbsplashrender_la_LIBADD += $(JPEG_LIBS) - -@@ -190,7 +193,7 @@ - fbsplashctl_CFLAGS = $(AM_CFLAGS) $(PTHREAD_STATIC_CFLAGS) $(RT_CFLAGS) $(libfbsplashrender_la_CFLAGS) -DUNIFIED_BUILD - fbsplashctl_CPPFLAGS = $(fbsplashd_CPPFLAGS) $(splash_util_CPPFLAGS) - fbsplashctl_LDFLAGS = $(AM_LDFLAGS) -all-static --fbsplashctl_LDADD = libfbsplashrender.la libfbsplash.la $(PTHREAD_STATIC_LIBS) $(RT_LIBS) $(GPM_LIBS) -+fbsplashctl_LDADD = libfbsplashrender.la libfbsplash.la $(PTHREAD_STATIC_LIBS) $(RT_LIBS) $(GPM_LIBS) $(BZ2_LIBS) - - if CONFIG_FBCON_DECOR - fbsplashctl_SOURCES += $(fbcondecor_ctl_SOURCES) diff --git a/media-gfx/splashutils/files/splashutils-1.5.4.4_fix-freetype-includes.patch b/media-gfx/splashutils/files/splashutils-1.5.4.4_fix-freetype-includes.patch deleted file mode 100644 index f52a6c1..0000000 --- a/media-gfx/splashutils/files/splashutils-1.5.4.4_fix-freetype-includes.patch +++ /dev/null @@ -1,28 +0,0 @@ -diff -dNur a/src/ttf.c b/src/ttf.c ---- a/src/ttf.c 2011-06-12 23:43:39.000000000 +0200 -+++ b/src/ttf.c 2014-07-24 16:54:19.322207452 +0200 -@@ -25,8 +25,8 @@ - #include - - #include --#include --#include -+#include FT_OUTLINE_H -+#include FT_TRUETYPE_IDS_H - - #include "common.h" - #include "render.h" -diff -dNur a/src/ttf.h b/src/ttf.h ---- a/src/ttf.h 2011-06-12 23:43:39.000000000 +0200 -+++ b/src/ttf.h 2014-07-24 16:54:30.426027477 +0200 -@@ -1,8 +1,8 @@ - #ifndef _TTF_H - #define _TTF_H - #include --#include --#include -+#include FT_OUTLINE_H -+#include FT_TRUETYPE_IDS_H - - #define CACHED_METRICS 0x10 - #define CACHED_BITMAP 0x01 diff --git a/media-gfx/splashutils/metadata.xml b/media-gfx/splashutils/metadata.xml deleted file mode 100644 index 07123e4..0000000 --- a/media-gfx/splashutils/metadata.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - -proxy-maintainers - - asaf.gery@gmail.com - - - - Support for the fbcondecor kernel patch. - - - diff --git a/media-gfx/splashutils/splashutils-1.5.4.4-r1.ebuild b/media-gfx/splashutils/splashutils-1.5.4.4-r1.ebuild deleted file mode 100644 index 18dcd97..0000000 --- a/media-gfx/splashutils/splashutils-1.5.4.4-r1.ebuild +++ /dev/null @@ -1,245 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-gfx/splashutils/splashutils-1.5.4.4-r1.ebuild,v 1.9 2014/01/01 15:33:34 hwoarang Exp $ - -EAPI="2" - -inherit autotools eutils multilib toolchain-funcs - -MISCSPLASH="miscsplashutils-0.1.8" -GENTOOSPLASH="splashutils-gentoo-1.0.17" -V_JPEG="8a" -V_PNG="1.4.3" -V_ZLIB="1.2.3" -V_FT="2.3.12" - -ZLIBSRC="libs/zlib-${V_ZLIB}" -LPNGSRC="libs/libpng-${V_PNG}" -JPEGSRC="libs/jpeg-${V_JPEG}" -FT2SRC="libs/freetype-${V_FT}" - -RESTRICT="test" -IUSE="hardened +png +truetype +mng gpm fbcondecor" - -DESCRIPTION="Framebuffer splash utilities." -HOMEPAGE="http://fbsplash.berlios.de" -SRC_URI="mirror://berlios/fbsplash/${PN}-lite-${PV}.tar.bz2 - mirror://berlios/fbsplash/${GENTOOSPLASH}.tar.bz2 - mirror://gentoo/${MISCSPLASH}.tar.bz2 - mirror://sourceforge/libpng/libpng-${V_PNG}.tar.bz2 - ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v${V_JPEG}.tar.gz - mirror://sourceforge/freetype/freetype-${V_FT}.tar.bz2 - http://www.gzip.org/zlib/zlib-${V_ZLIB}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 ~ppc x86" -RDEPEND="gpm? ( sys-libs/gpm[static-libs] ) - truetype? ( >=media-libs/freetype-2[static-libs] - || ( =media-libs/libpng-1.4.3[static-libs] ) - mng? ( - media-libs/lcms:0[static-libs] - || ( media-libs/libmng[static-libs] =sys-apps/baselayout-1.9.4-r5 - app-arch/cpio - media-gfx/fbgrab - !sys-apps/lcdsplash" -DEPEND="${RDEPEND} - >=dev-libs/klibc-1.5 - virtual/pkgconfig" - -S="${WORKDIR}/${P/_/-}" -SG="${WORKDIR}/${GENTOOSPLASH}" -SM="${WORKDIR}/${MISCSPLASH}" - -pkg_setup() { - if use hardened; then - ewarn "Due to problems with klibc, it is currently impossible to compile splashutils" - ewarn "with 'hardened' GCC flags. As a workaround, the package will be compiled with" - ewarn "-fno-stack-protector. Hardened GCC features will not be used while building" - ewarn "the splash kernel helper." - fi -} - -src_prepare() { - mv "${WORKDIR}"/{libpng-${V_PNG},jpeg-${V_JPEG},zlib-${V_ZLIB},freetype-${V_FT}} "${S}/libs" - # We need to delete the Makefile and let it be rebuilt when splashutils - # is being configured. Either that, or we end up with a segfaulting kernel - # helper. - rm "${S}/libs/zlib-${V_ZLIB}/Makefile" - - if use truetype ; then - epatch "${FILESDIR}/splashutils-1.5.4.4_fix-freetype-includes.patch" - fi - - cd "${SG}" - epatch "${FILESDIR}/splashutils-1.5.4.4-gentoo-typo-fix.patch" - - if use truetype ; then - cd "${SM}" - epatch "${FILESDIR}/splashutils-1.5.4.4-freetype-bz2.patch" - epatch "${FILESDIR}/miscsplashutils-0.1.8_fix-freetype-includes.patch" - fi - - cd "${S}" - ln -sf "${S}/src" "${WORKDIR}/core" - - epatch "${FILESDIR}/${P}-bzip2.patch" - epatch "${FILESDIR}/libmng2-lcms2.patch" - - if ! tc-is-cross-compiler && \ - has_version "sys-devel/gcc:$(gcc-version)[vanilla]" ; then - ewarn "Your GCC was built with the 'vanilla' flag set. If you can't compile" - ewarn "splashutils, you're on your own, as this configuration is not supported." - else - # This should make splashutils compile on systems with hardened GCC. - sed -e 's@K_CFLAGS =@K_CFLAGS = -fno-stack-protector@' -i "${S}/Makefile.in" - fi - - if ! use truetype ; then - sed -i -e 's/fbtruetype kbd/kbd/' "${SM}/Makefile" - fi - - # Latest version of klibc defined its own version of ferror, so there is - # not need for the hack in klibc_compat.h - if has_version ">=dev-libs/klibc-1.5.20"; then - echo > "libs/klibc_compat.h" - fi - - rm -f m4/* - eautoreconf -} - -src_configure() { - tc-export CC - cd "${SM}" - emake CC="${CC}" LIB=$(get_libdir) STRIP=true || die "failed to build miscsplashutils" - - cd "${S}" - econf \ - $(use_with png) \ - $(use_with mng) \ - $(use_with gpm) \ - $(use_with truetype ttf) \ - $(use_with truetype ttf-kernel) \ - $(use_enable fbcondecor) \ - --docdir=/usr/share/doc/${PF} \ - --with-freetype2-src=${FT2SRC} \ - --with-jpeg-src=${JPEGSRC} \ - --with-lpng-src=${LPNGSRC} \ - --with-zlib-src=${ZLIBSRC} \ - --with-essential-libdir=/$(get_libdir) || die "failed to configure splashutils" -} - -src_compile() { - emake CC="${CC}" STRIP="true" || die "failed to build splashutils" - - if has_version ">=sys-apps/baselayout-1.13.99"; then - cd "${SG}" - emake LIB=$(get_libdir) || die "failed to build the splash plugin" - fi -} - -src_install() { - local LIB=$(get_libdir) - - cd "${SM}" - make DESTDIR="${D}" LIB=${LIB} install || die - - cd "${S}" - make DESTDIR="${D}" STRIP="true" install || die - - mv "${D}"/usr/${LIB}/libfbsplash.so* "${D}"/${LIB}/ - gen_usr_ldscript libfbsplash.so - - echo 'CONFIG_PROTECT_MASK="/etc/splash"' > 99splash - doenvd 99splash - - if use fbcondecor ; then - newinitd "${SG}"/init-fbcondecor fbcondecor - newconfd "${SG}"/fbcondecor.conf fbcondecor - fi - newconfd "${SG}"/splash.conf splash - - insinto /usr/share/${PN} - doins "${SG}"/initrd.splash - - insinto /etc/splash - doins "${SM}"/fbtruetype/luxisri.ttf - - if has_version ">=sys-apps/baselayout-1.13.99"; then - cd "${SG}" - make DESTDIR="${D}" LIB=${LIB} install || die "failed to install the splash plugin" - else - cp "${SG}"/splash-functions-bl1.sh "${D}"/sbin/ - fi - - sed -i -e "s#/lib/splash#/${LIB}/splash#" "${D}"/sbin/splash-functions.sh - keepdir /${LIB}/splash/{tmp,cache,bin,sys} - dosym /${LIB}/splash/bin/fbres /sbin/fbres -} - -pkg_preinst() { - has_version "<${CATEGORY}/${PN}-1.0" - previous_less_than_1_0=$? - - has_version "<${CATEGORY}/${PN}-1.5.3" - previous_less_than_1_5_3=$? -} - -pkg_postinst() { - if has_version sys-fs/devfsd || ! has_version virtual/udev ; then - elog "This package has been designed with udev in mind. Other solutions, such as" - elog "devfs or a static /dev tree might work, but are generally discouraged and" - elog "not supported. If you decide to switch to udev, you might want to have a" - elog "look at 'The Gentoo udev Guide', which can be found at" - elog " http://www.gentoo.org/doc/en/udev-guide.xml" - elog "" - fi - - if [[ $previous_less_than_1_0 = 0 ]] ; then - elog "Since you are upgrading from a pre-1.0 version, please make sure that you" - elog "rebuild your initrds. You can use the splash_geninitramfs script to do that." - elog "" - fi - - if [[ $previous_less_than_1_5_3 = 0 ]] && ! use fbcondecor ; then - elog "Starting with splashutils-1.5.3, support for the fbcondecor kernel patch" - elog "is optional and dependent on the the 'fbcondecor' USE flag. If you wish" - elog "to use fbcondecor, run:" - elog " echo \"media-gfx/splashutils fbcondecor\" >> /etc/portage/package.use" - elog "and re-emerge splashutils." - fi - - if ! test -f /proc/cmdline || - ! egrep -q '(console=tty1|CONSOLE=/dev/tty1)' /proc/cmdline ; then - elog "It is required that you add 'console=tty1' to your kernel" - elog "command line parameters." - elog "" - elog "After these modifications, the relevant part of the kernel command" - elog "line might look like:" - elog " splash=silent,fadein,theme:emergence console=tty1" - elog "" - fi - - if ! has_version 'media-gfx/splash-themes-livecd' && - ! has_version 'media-gfx/splash-themes-gentoo'; then - elog "The sample Gentoo themes (emergence, gentoo) have been removed from the" - elog "core splashutils package. To get some themes you might want to emerge:" - elog " media-gfx/splash-themes-livecd" - elog " media-gfx/splash-themes-gentoo" - fi - - elog "Please note that the 'fbsplash' kernel patch has now been renamed to" - elog "'fbcondecor'. Accordingly, the old 'splash' initscript is now called" - elog "'fbcondecor'. Make sure you update your system. See:" - elog " http://dev.gentoo.org/~spock/projects/fbcondecor/#history" - elog "for further info about the name changes." - elog "" - elog "Also note that splash_util has now been split into splash_util, fbsplashd" - elog "and fbcondecor_ctl." -} diff --git a/media-gfx/splashutils/splashutils-1.5.4.4-r4.ebuild b/media-gfx/splashutils/splashutils-1.5.4.4-r4.ebuild deleted file mode 100644 index 819f60c..0000000 --- a/media-gfx/splashutils/splashutils-1.5.4.4-r4.ebuild +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-gfx/splashutils/splashutils-1.5.4.4-r4.ebuild,v 1.1 2013/10/14 13:50:25 pinkbyte Exp $ - -EAPI=5 -inherit autotools eutils multilib toolchain-funcs - -MISCSPLASH="miscsplashutils-0.1.8" -GENTOOSPLASH="splashutils-gentoo-1.0.17" -V_JPEG="8a" -V_PNG="1.4.3" -V_ZLIB="1.2.3" -V_FT="2.3.12" - -ZLIBSRC="libs/zlib-${V_ZLIB}" -LPNGSRC="libs/libpng-${V_PNG}" -JPEGSRC="libs/jpeg-${V_JPEG}" -FT2SRC="libs/freetype-${V_FT}" - -RESTRICT="test" -IUSE="hardened +png +truetype +mng gpm fbcondecor" - -DESCRIPTION="Framebuffer splash utilities" -HOMEPAGE="http://fbsplash.berlios.de" -SRC_URI=" - mirror://berlios/fbsplash/${PN}-lite-${PV}.tar.bz2 - mirror://berlios/fbsplash/${GENTOOSPLASH}.tar.bz2 - mirror://gentoo/${MISCSPLASH}.tar.bz2 - mirror://sourceforge/libpng/libpng-${V_PNG}.tar.bz2 - ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v${V_JPEG}.tar.gz - mirror://sourceforge/freetype/freetype-${V_FT}.tar.bz2 - http://www.gzip.org/zlib/zlib-${V_ZLIB}.tar.bz2 -" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86" - -RDEPEND=" - gpm? ( sys-libs/gpm[static-libs(+)] ) - truetype? ( - >=media-libs/freetype-2[static-libs] - app-arch/bzip2[static-libs(+)] - sys-libs/zlib[static-libs(+)] - ) - png? ( - >=media-libs/libpng-1.4.3[static-libs] - sys-libs/zlib[static-libs(+)] - ) - mng? ( - media-libs/lcms:0[static-libs] - media-libs/libmng[static-libs(+)] - ) - virtual/jpeg:0[static-libs] - app-arch/cpio - media-gfx/fbgrab - !sys-apps/lcdsplash" - -DEPEND="${RDEPEND} - >=dev-libs/klibc-1.5 - virtual/pkgconfig -" - -S="${WORKDIR}/${P/_/-}" -SG="${WORKDIR}/${GENTOOSPLASH}" -SM="${WORKDIR}/${MISCSPLASH}" - -pkg_setup() { - if use hardened; then - ewarn "Due to problems with klibc, it is currently impossible to compile splashutils" - ewarn "with 'hardened' GCC flags. As a workaround, the package will be compiled with" - ewarn "-fno-stack-protector. Hardened GCC features will not be used while building" - ewarn "the splash kernel helper." - fi -} - -src_prepare() { - mv "${WORKDIR}"/{libpng-${V_PNG},jpeg-${V_JPEG},zlib-${V_ZLIB},freetype-${V_FT}} "${S}/libs" - - # We need to delete the Makefile and let it be rebuilt when splashutils - # is being configured. Either that, or we end up with a segfaulting kernel - # helper. - rm "${S}/libs/zlib-${V_ZLIB}/Makefile" - - if use truetype ; then - epatch "${FILESDIR}/splashutils-1.5.4.4_fix-freetype-includes.patch" - fi - - cd "${SG}" - epatch "${FILESDIR}/splashutils-1.5.4.4-gentoo-typo-fix.patch" - - if use truetype ; then - cd "${SM}" - epatch "${FILESDIR}/splashutils-1.5.4.4-freetype-bz2.patch" - epatch "${FILESDIR}/miscsplashutils-0.1.8_fix-freetype-includes.patch" - - fi - - cd "${S}" - ln -sf "${S}/src" "${WORKDIR}/core" - - epatch "${FILESDIR}/${P}-bzip2.patch" - epatch "${FILESDIR}/${P}-multi-keyboard.patch" - epatch "${FILESDIR}/libmng2-lcms2.patch" - - if ! tc-is-cross-compiler && \ - has_version "sys-devel/gcc:$(gcc-version)[vanilla]" ; then - ewarn "Your GCC was built with the 'vanilla' flag set. If you can't compile" - ewarn "splashutils, you're on your own, as this configuration is not supported." - else - # This should make splashutils compile on systems with hardened GCC. - sed -e 's@K_CFLAGS =@K_CFLAGS = -fno-stack-protector@' -i "${S}/Makefile.in" - fi - - if ! use truetype ; then - sed -i -e 's/fbtruetype kbd/kbd/' "${SM}/Makefile" - fi - - # Latest version of klibc defined its own version of ferror, so there is - # not need for the hack in klibc_compat.h - if has_version ">=dev-libs/klibc-1.5.20"; then - echo > "libs/klibc_compat.h" - fi - - rm -f m4/* - eautoreconf -} - -src_configure() { - tc-export CC - cd "${SM}" - emake CC="${CC}" LIB=$(get_libdir) STRIP=true - - cd "${S}" - econf \ - $(use_with png) \ - $(use_with mng) \ - $(use_with gpm) \ - $(use_with truetype ttf) \ - $(use_with truetype ttf-kernel) \ - $(use_enable fbcondecor) \ - --docdir=/usr/share/doc/${PF} \ - --with-freetype2-src=${FT2SRC} \ - --with-jpeg-src=${JPEGSRC} \ - --with-lpng-src=${LPNGSRC} \ - --with-zlib-src=${ZLIBSRC} \ - --with-essential-libdir=/$(get_libdir) -} - -src_compile() { - emake CC="${CC}" STRIP="true" - - cd "${SG}" - emake LIB=$(get_libdir) -} - -src_install() { - local LIB=$(get_libdir) - - cd "${SM}" - emake DESTDIR="${D}" LIB=${LIB} install - - cd "${S}" - emake DESTDIR="${D}" STRIP="true" install - - mv "${D}"/usr/${LIB}/libfbsplash.so* "${D}"/${LIB}/ - gen_usr_ldscript libfbsplash.so - - echo 'CONFIG_PROTECT_MASK="/etc/splash"' > 99splash - doenvd 99splash - - if use fbcondecor ; then - newinitd "${SG}"/init-fbcondecor fbcondecor - newconfd "${SG}"/fbcondecor.conf fbcondecor - fi - newconfd "${SG}"/splash.conf splash - - insinto /usr/share/${PN} - doins "${SG}"/initrd.splash - - insinto /etc/splash - doins "${SM}"/fbtruetype/luxisri.ttf - - cd "${SG}" - make DESTDIR="${D}" LIB=${LIB} install - - sed -i -e "s#/lib/splash#/${LIB}/splash#" "${D}"/sbin/splash-functions.sh - keepdir /${LIB}/splash/{tmp,cache,bin,sys} - dosym /${LIB}/splash/bin/fbres /sbin/fbres -} - -pkg_preinst() { - has_version "<${CATEGORY}/${PN}-1.0" - previous_less_than_1_0=$? - - has_version "<${CATEGORY}/${PN}-1.5.3" - previous_less_than_1_5_3=$? -} - -pkg_postinst() { - if has_version sys-fs/devfsd || ! has_version virtual/udev ; then - elog "This package has been designed with udev in mind. Other solutions, such as" - elog "devfs or a static /dev tree might work, but are generally discouraged and" - elog "not supported. If you decide to switch to udev, you might want to have a" - elog "look at 'The Gentoo udev Guide', which can be found at" - elog " http://www.gentoo.org/doc/en/udev-guide.xml" - elog "" - fi - - if [[ $previous_less_than_1_0 = 0 ]] ; then - elog "Since you are upgrading from a pre-1.0 version, please make sure that you" - elog "rebuild your initrds. You can use the splash_geninitramfs script to do that." - elog "" - fi - - if [[ $previous_less_than_1_5_3 = 0 ]] && ! use fbcondecor ; then - elog "Starting with splashutils-1.5.3, support for the fbcondecor kernel patch" - elog "is optional and dependent on the the 'fbcondecor' USE flag. If you wish" - elog "to use fbcondecor, run:" - elog " echo \"media-gfx/splashutils fbcondecor\" >> /etc/portage/package.use" - elog "and re-emerge splashutils." - fi - - if ! test -f /proc/cmdline || - ! egrep -q '(console=tty1|CONSOLE=/dev/tty1)' /proc/cmdline ; then - elog "It is required that you add 'console=tty1' to your kernel" - elog "command line parameters." - elog "" - elog "After these modifications, the relevant part of the kernel command" - elog "line might look like:" - elog " splash=silent,fadein,theme:emergence console=tty1" - elog "" - fi - - if ! has_version 'media-gfx/splash-themes-livecd' && - ! has_version 'media-gfx/splash-themes-gentoo'; then - elog "The sample Gentoo themes (emergence, gentoo) have been removed from the" - elog "core splashutils package. To get some themes you might want to emerge:" - elog " media-gfx/splash-themes-livecd" - elog " media-gfx/splash-themes-gentoo" - fi -}