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

Bug#363517: xorg-server and kfreebsd




 - attached changes to debian packaging - it looks like kdrive is (still)
 linux only,

Fixing this should be quite trivial, given that Xephyr is a 'fake'
server.

Well, I have been confused by mandatory subdir linux,
so 2nd attempt.

xorg-server 1.1.1-4 builds on kfreebsd-i386 after applying

- 13_kfreebsd-gnu.diff from original submit, accepted upstream
- kfreebsd-byteswap.diff - submitted upstream
- kfreebsd-kdrive.diff - presence of <sys/vm86.h> is not sufficient for VESA drivers,
	let hw/kdrive/linux/agp.c compile also on kfreebsd
	should be submitted upstream ?
- kfreebsd-man_suffix.diff - again sync man pages suffixes with linux (aclocal.m4), changed in 1:1.1.1-2 only for linux
- kfreebsd-debian.diff - debian packaging,
	files in usr/lib/xorg/modules/freebsd/*.so are needed for us

and regenerating of configure.

Petr
diff -ur x/xorg-server-1.1.1/GL/glx/indirect_dispatch_swap.c xorg-server-1.1.1/GL/glx/indirect_dispatch_swap.c
--- x/xorg-server-1.1.1/GL/glx/indirect_dispatch_swap.c	2006-07-05 20:31:36.000000000 +0200
+++ xorg-server-1.1.1/GL/glx/indirect_dispatch_swap.c	2006-08-28 11:53:52.000000000 +0200
@@ -28,7 +28,7 @@
 #include <X11/Xmd.h>
 #include <GL/gl.h>
 #include <GL/glxproto.h>
-#ifdef __linux__
+#if defined (__linux__) || defined (__GLIBC__)
 #include <byteswap.h>
 #elif defined(__OpenBSD__)
 #include <sys/endian.h>
diff -ur x/xorg-server-1.1.1/GL/glx/indirect_util.c xorg-server-1.1.1/GL/glx/indirect_util.c
--- x/xorg-server-1.1.1/GL/glx/indirect_util.c	2006-07-08 00:36:18.000000000 +0200
+++ xorg-server-1.1.1/GL/glx/indirect_util.c	2006-08-28 11:57:42.000000000 +0200
@@ -28,7 +28,7 @@
 #include <X11/Xmd.h>
 #include <GL/gl.h>
 #include <GL/glxproto.h>
-#ifdef __linux__
+#if defined (__linux__) || defined (__GLIBC__)
 #include <byteswap.h>
 #elif defined(__OpenBSD__)
 #include <sys/endian.h>
diff -ur x/xorg-server-1.1.1/hw/kdrive/linux/agp.c xorg-server-1.1.1/hw/kdrive/linux/agp.c
--- x/xorg-server-1.1.1/hw/kdrive/linux/agp.c	2006-07-05 20:31:39.000000000 +0200
+++ xorg-server-1.1.1/hw/kdrive/linux/agp.c	2006-08-28 13:38:45.000000000 +0200
@@ -65,7 +65,7 @@
 
 #include <linux/agpgart.h>
 
-#elif defined(__FreeBSD__)
+#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
 #include <sys/ioctl.h>
 #include <sys/agpio.h>
 #endif
diff -ur x/xorg-server-1.1.1/configure.ac xorg-server-1.1.1/configure.ac
--- x/xorg-server-1.1.1/configure.ac	2006-08-28 17:01:11.000000000 +0200
+++ xorg-server-1.1.1/configure.ac	2006-08-28 16:43:11.000000000 +0200
@@ -1433,7 +1436,11 @@
 
     AC_CHECK_HEADERS([sys/vm86.h sys/io.h])
     if test "$ac_cv_header_sys_vm86_h" = yes; then
-        AC_DEFINE(KDRIVEVESA, 1, [Build VESA-based kdrive servers])
+    	case $host_os in
+		kfreebsd*-gnu)	kdrivevesa=no ;;
+		*) 	AC_DEFINE(KDRIVEVESA, 1, [Build VESA-based kdrive servers])
+			kdrivevesa=yes;;
+	esac
     fi
 
     AC_CHECK_HEADERS([linux/fb.h])
@@ -1473,7 +1480,7 @@
 AC_SUBST(KDRIVE_LIBS)
 AM_CONDITIONAL(TSLIB, false)
 AM_CONDITIONAL(H3600_TS, false)
-AM_CONDITIONAL(KDRIVEVESA, [test x"$ac_cv_header_sys_vm86_h" = xyes])
+AM_CONDITIONAL(KDRIVEVESA, [test x"$kdrivevesa" = xyes])
 AM_CONDITIONAL(KDRIVEFBDEV, [test x"$ac_cv_header_linux_fb_h" = xyes])
 #AM_CONDITIONAL(KDRIVEVESA, false)
 #AM_CONDITIONAL(KDRIVEFBDEV, false)
diff -ur x/xorg-server-1.1.1/aclocal.m4 xorg-server-1.1.1/aclocal.m4
--- x/xorg-server-1.1.1/aclocal.m4	2006-08-28 16:49:24.000000000 +0200
+++ xorg-server-1.1.1/aclocal.m4	2006-08-28 13:12:09.000000000 +0200
@@ -6654,13 +6654,13 @@
 
 if test x$APP_MAN_SUFFIX = x    ; then
     case $host_os in
-	gnu* | k*bsd*-gnu)	APP_MAN_SUFFIX=1x ;;
+#	gnu* | k*bsd*-gnu)	APP_MAN_SUFFIX=1x ;;
 	*)	APP_MAN_SUFFIX=1  ;;
     esac
 fi
 if test x$APP_MAN_DIR = x    ; then
     case $host_os in
-	gnu* | k*bsd*-gnu)	APP_MAN_DIR='$(mandir)/man1' ;;
+#	gnu* | k*bsd*-gnu)	APP_MAN_DIR='$(mandir)/man1' ;;
 	*)	APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' ;;
     esac
 fi
@@ -6684,7 +6684,7 @@
 fi
 if test x$FILE_MAN_DIR = x    ; then
     case $host_os in
-	gnu* | k*bsd*-gnu)	FILE_MAN_DIR='$(mandir)/man5' ;;
+#	gnu* | k*bsd*-gnu)	FILE_MAN_DIR='$(mandir)/man5' ;;
 	*)	FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' ;;
     esac
 fi
diff -ur x/xorg-server-1.1.1/debian/xserver-xorg-core.install xorg-server-1.1.1/debian/xserver-xorg-core.install
--- x/xorg-server-1.1.1/debian/xserver-xorg-core.install	2006-08-28 16:49:24.000000000 +0200
+++ xorg-server-1.1.1/debian/xserver-xorg-core.install	2006-08-28 13:36:25.000000000 +0200
@@ -2,6 +2,7 @@
 usr/lib/xorg/modules/extensions/*.so
 usr/lib/xorg/modules/fonts/*
 usr/lib/xorg/modules/linux/*.so
+usr/lib/xorg/modules/freebsd/*.so
 usr/lib/xorg/modules/multimedia/*.so
 usr/bin/Xorg
 usr/share/man/man1/Xserver.1

Reply to: