Initial PKGBUILD status as of 28.11.2014

This commit is contained in:
Jaroslav Lichtblau 2014-11-28 20:17:14 +01:00
commit da99aaab4d
5 changed files with 240 additions and 0 deletions

25
.SRCINFO Normal file
View file

@ -0,0 +1,25 @@
pkgbase = adesklets
pkgdesc = An imlib2-based system to have interactive 'desklets'.
pkgver = 0.6.1
pkgrel = 12
url = http://adesklets.sourceforge.net/
install = adesklets.install
arch = i686
arch = x86_64
license = GPL2
depends = imlib2
depends = fontconfig
depends = python2
depends = perl
depends = ttf-bitstream-vera
depends = libx11
options = !emptydirs
source = http://downloads.sourceforge.net/sourceforge/adesklets/adesklets-0.6.1.tar.bz2
source = fontconfig-2.4.patch
source = posix_signal.patch
md5sums = cd390c9398449c5566033e2e4792bccb
md5sums = 0374aec97670c90713fcabc2710e2160
md5sums = d9ac15cc92f833f2446218e487e6c607
pkgname = adesklets

53
PKGBUILD Normal file
View file

@ -0,0 +1,53 @@
# $Id: PKGBUILD 78820 2012-10-25 06:47:28Z foutrelis $
# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
# Contributor: Fubar
pkgname=adesklets
pkgver=0.6.1
pkgrel=12
pkgdesc="An imlib2-based system to have interactive 'desklets'."
arch=('i686' 'x86_64')
url="http://adesklets.sourceforge.net/"
license=('GPL2')
depends=('imlib2' 'fontconfig' 'python2' 'perl' 'ttf-bitstream-vera' 'libx11')
install=$pkgname.install
options=('!emptydirs')
source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2 \
fontconfig-2.4.patch posix_signal.patch)
md5sums=('cd390c9398449c5566033e2e4792bccb'
'0374aec97670c90713fcabc2710e2160'
'd9ac15cc92f833f2446218e487e6c607')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
patch -p1 -i "${srcdir}/posix_signal.patch"
#patch for fontconfig => 2.4
patch -Np0 -i "${srcdir}/fontconfig-2.4.patch"
autoreconf
PYTHON=/usr/bin/python2 ./configure --prefix=/usr
#makefile Fix
sed -i 's/\/bin\/sh//' doc/Makefile
#python2 fix
for file in checkin installer submit; do
sed -i 's_/usr/bin/env python_/usr/bin/env python2_' utils/${pkgname}_${file}
done
make
}
package() {
cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" INSTALLDIRS=vendor install
#remove the font stuff
rm -f "${pkgdir}"/usr/share/adesklets/{FONT_LICENSE,Vera.ttf}
find "${pkgdir}" -name '.packlist' -exec rm '{}' \;
find "${pkgdir}" -name 'perllocal.pod' -exec rm '{}' \;
}

31
adesklets.install Normal file
View file

@ -0,0 +1,31 @@
infodir=/usr/share/info
filelist=(adesklets.info adesklets_fr.info)
post_install() {
for file in ${filelist[@]}; do
install-info $infodir/$file $infodir/dir 2> /dev/null
done
getent group adesklets > /dev/null || usr/sbin/groupadd -g 107 adesklets
cat << EOF
==> To be able to save configs of adesklets
==> add your user to the adesklets group:
==> # gpasswd -a USERNAME adesklets
EOF
}
post_upgrade() {
for file in ${filelist[@]}; do
install-info $infodir/$file $infodir/dir 2> /dev/null
done
}
post_remove() {
for file in ${filelist[@]}; do
install-info --delete $infodir/$file $infodir/dir 2> /dev/null
done
usr/sbin/groupdel adesklets &>/dev/null
}

50
fontconfig-2.4.patch Normal file
View file

@ -0,0 +1,50 @@
--- configure.ac
+++ configure.ac
@@ -1,4 +1,4 @@
-dnl Initialize autoconf and automake
+nl Initialize autoconf and automake
AC_INIT
AC_CONFIG_SRCDIR(src/main.c)
AC_PREREQ(2.52)
@@ -428,7 +428,18 @@ AC_TRY_LINK(
#include <fontconfig/fontconfig.h>
, FcInit(),
AC_MSG_RESULT([yes])
-AC_DEFINE(HAVE_FONTCONFIG_FONTCONFIG_H,1,[Define to 1 if you have the <fontconfig/fontconfig.h> header file.]),
+AC_DEFINE(HAVE_FONTCONFIG_FONTCONFIG_H,1,[Define to 1 if you have the <fontconfig/fontconfig.h> header file.])
+
+AC_MSG_CHECKING([For fontconfig FcFini()])
+AC_TRY_LINK(
+#include <fontconfig/fontconfig.h>
+, FcFini(),
+AC_MSG_RESULT([yes])
+AC_DEFINE(HAVE_FONTCONFIG_FCFINI,1,[Define to 1 if FcFini() call exists])
+,
+AC_MSG_RESULT([no]))
+
+,
AC_MSG_RESULT([no])
FONTCONFIG_LIBS=
FONTCONFIG_CFLAGS=
--- src/xwindow.c
+++ src/xwindow.c
@@ -123,9 +123,17 @@
if ((strlen((char*)file)>4) &&
(strstr((char*)file+strlen((char*)file)-4,".ttf")))
imlib_add_path_to_font_path(dirname((char*)file));
- FcFontSetDestroy(fs);
- FcObjectSetDestroy(os);
}
+#ifdef HAVE_FONTCONFIG_FCFINI
+ FcFini();
+#else
+ /* On FontConfig >= 2.4, this causes a segfault, probably due to the new
+ caching mechanism: we don't have to care, since FcFini() always exists,
+ and does the dirty dessalocation job just fine.
+ */
+ if (fs) FcFontSetDestroy(fs);
+ FcObjectSetDestroy(os);
+#endif
}
#endif
imlib_add_path_to_font_path(".");

81
posix_signal.patch Normal file
View file

@ -0,0 +1,81 @@
From 92e686badce5c549699a30e82458a42dbcd99183 Mon Sep 17 00:00:00 2001
From: Sylvain <syfou@users.sourceforge.net>
Date: Wed, 2 May 2007 13:23:18 -0400
Subject: [PATCH] Definitive fix for the signal module importation problem
...from posix_signal on some amd64 systems. Many thanks to Jason
Pontious for his support and patience.
---
scripting/python/posix_signal.c | 34 ++++++++++++++++++----------------
1 files changed, 18 insertions(+), 16 deletions(-)
diff --git a/scripting/python/posix_signal.c b/scripting/python/posix_signal.c
index 620248f..7c5ac25 100644
--- a/scripting/python/posix_signal.c
+++ b/scripting/python/posix_signal.c
@@ -1,16 +1,17 @@
/*--- posix_signal.c -----------------------------------------------------------
-This is nothing but a forward port from older python code by Lance Ellinghaus,
-Guido van Rossum & al., reformatted and put back together by Sylvain Fourmanoit <syfou@users.sourceforge.net>
-for recent (2.2.0 final and newer) python implementations.
-
-The ability to temporarily delay signals delivery is a very usefull feature -
-not all C functions are reentrant (in fact, only a few need to be 'safe'
-according to the POSIX 1003.1-2003 list), so being able to create critical
-code sections is a must. Although I am convinced Python's developpers
-had good reasons, I do not know myself why 'sigprocmask' and associated
-functions support was dropped from the signal module on systems which
-implemented them... Since I needed them in my blissful ignorance,
-here they are, alive and kicking. :-)
+This is nothing but a forward port from older python code by Lance
+Ellinghaus, Guido van Rossum & al., reformatted and put back together
+by Sylvain Fourmanoit <syfou@users.sourceforge.net> for recent (2.2.0
+final and newer) python implementations.
+
+The ability to temporarily delay signals delivery is a very usefull
+feature - not all C functions are reentrant (in fact, only a few need
+to be 'safe' according to the POSIX 1003.1-2003 list), so being able
+to create critical code sections is a must. Although I am convinced
+Python's developpers had good reasons, I do not know myself why
+'sigprocmask' and associated functions support was dropped from the
+signal module on systems which implemented them... Since I needed them
+in my blissful ignorance, here they are, alive and kicking. :-)
------------------------------------------------------------------------------*/
#include <Python.h>
@@ -214,8 +215,9 @@ PyMODINIT_FUNC
initposix_signal(void)
{
const char * KEYS [] = { "__doc__", "__name__" , NULL};
- int i, pos=0;
+ int i;
char * key_str, * doc_str , * new_str;
+ Py_ssize_t pos = 0;
PyObject * m, * mDoc, *d,
* pName, * pModule, * pDict,
* key, * value, *x;
@@ -236,7 +238,6 @@ initposix_signal(void)
/* The chunk of code below roughly perfoms python equivalent of:
'from signal import *' inside what would be a pure python posix_signal
module ... */
- pName=PyString_FromString("signal");
if ((pModule=PyImport_Import((pName=PyString_FromString("signal"))))) {
pDict=PyModule_GetDict(pModule);
while (PyDict_Next(pDict, &pos, &key, &value))
@@ -246,10 +247,11 @@ initposix_signal(void)
for(i=0;KEYS[i];++i)
if (strncmp(key_str,KEYS[i],strlen(KEYS[i]))==0)
break;
- if (!KEYS[i])
+ if (!KEYS[i]) {
/* This needs python 2.2 and up */
+ Py_INCREF(value);
PyModule_AddObject(m,key_str,value);
- else {
+ } else {
if (i==0) {
/* Append signal module documentation */
if ((mDoc=PyDict_GetItemString(d,KEYS[0]))) {
--
1.6.5.GIT