[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#387444: libx11: Should compile for /usr/lib64 as per FHS



Package: libx11
Severity: important
Tags: patch

Hi,

the FHS specifies that on amd64 64bit libraries must be placed in
(/usr)/lib64 and I believe the same rationale applies to the locale
plugins in libx11.

The libx11-6 library on Debian expects to find its locales in
/usr/lib/X11/locale/common while other distributions have them
(correctly as per FHS) in /usr/lib64/X11/locale/common.

The attached patch compiled libx11-6 to use (/usr)/lib64 as libdir but
renames that to (/usr)/lib before building debs as Debian wants
it. That way compatibility with other distributions is preserved and
the FHS is followed.

This also allows automatic conversion to multiarch for the package
alowing both 64 and 32bit packages to be installed at the same time
without having to recompile the source on every update.

MfG
	Goswin

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.8-frosties-2
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
diff -u libx11-1.0.0/debian/patches/series libx11-1.0.0/debian/patches/series
--- libx11-1.0.0/debian/patches/series
+++ libx11-1.0.0/debian/patches/series
@@ -14,0 +15 @@
+015_makekeys.diff
only in patch2:
unchanged:
--- libx11-1.0.0.orig/debian/patches/015_makekeys.diff
+++ libx11-1.0.0/debian/patches/015_makekeys.diff
@@ -0,0 +1,20 @@
+Index: libx11/src/util/makekeys.c
+===================================================================
+--- libx11-1.0.0/src/util/makekeys.c	2006-01-25 01:40:34.000000000 +0000
++++ libx11-1.0.3/src/util/makekeys.c	2006-06-22 21:25:32.000000000 +0000
+@@ -1,5 +1,5 @@
+ /* $Xorg: makekeys.c,v 1.5 2001/02/09 02:03:40 $ */
+-/* $XdotOrg: xc/lib/X11/util/makekeys.c,v 1.4 2004/09/26 20:46:17 kuhn Exp $ */
++/* $XdotOrg: lib/X11/src/util/makekeys.c,v 1.5 2005-07-03 07:00:56 daniels Exp $ */
+ /*
+ 
+ Copyright 1990, 1998  The Open Group
+@@ -49,7 +49,7 @@
+     KeySym	val;
+ } info[KTNUM];
+ 
+-#define MIN_REHASH 10
++#define MIN_REHASH 15
+ #define MATCHES 10
+ 
+ char tab[KTNUM];
diff -u libx11-1.0.0/debian/changelog libx11-1.0.0/debian/changelog
--- libx11-1.0.0/debian/changelog
+++ libx11-1.0.0/debian/changelog
@@ -1,3 +1,11 @@
+libx11 (2:1.0.0-8a0.mrvn.0.1) unstable; urgency=low
+
+  * Add makekeys patch from upstreams 1.0.3 version
+  * Set libdir to /usr/lib64 on amd64
+  * Move debian/tmp/usr/lib64 to lib on amd64
+
+ -- Goswin von Brederlow <brederlo@informatik.uni-tuebingen.de>  Tue, 12 Sep 2006 12:19:17 +0000
+
 libx11 (2:1.0.0-8) unstable; urgency=low
 
   [ Denis Barbier ]
diff -u libx11-1.0.0/debian/rules libx11-1.0.0/debian/rules
--- libx11-1.0.0/debian/rules
+++ libx11-1.0.0/debian/rules
@@ -44,6 +44,10 @@
 
 confflags += --enable-man-pages=3 --enable-loadable-i18n
 
+ifeq ($(DEB_HOST_ARCH), amd64)
+confflags += --libdir=/usr/lib64
+endif
+
 # so very wrong
 CFLAGS += -DLIBXCURSOR=\\\"libXcursor.so.1\\\"
 
@@ -80,6 +84,11 @@
 	dh_installdirs
 
 	cd obj-$(DEB_BUILD_GNU_TYPE) && $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install
+ifeq ($(DEB_HOST_ARCH), amd64)
+	mkdir -p debian/tmp/usr/lib
+	mv debian/tmp/usr/lib64/* debian/tmp/usr/lib
+	rmdir debian/tmp/usr/lib64
+endif
 
 # Build architecture-dependent files here.
 binary-arch: build install

Reply to: