Robert Millan wrote (in a message from Friday Nov 21)
> --- xc/config/cf.old/Imake.cf 2003-11-20 23:45:05.000000000 +0100
> +++ xc/config/cf/Imake.cf 2003-11-21 00:13:21.000000000 +0100
> @@ -177,6 +177,11 @@
> # endif /* __hppa__ */
> #endif /* OpenBSD */
>
> +/* Systems based on kernel of OpenBSD */
> +#if defined(__OpenBSD__) || defined(__OpenBSD_kernel__)
> +#define KOpenBSDArchitecture
> +#endif
> +
> #ifdef __NetBSD__
> # define MacroIncludeFile <NetBSD.cf>
> # define MacroFile NetBSD.cf
> @@ -224,6 +229,11 @@
> # endif
> #endif /* NetBSD */
>
> +/* Systems based on kernel of NetBSD */
> +#if defined(__NetBSD__) || defined(__NetBSD_kernel__)
> +#define KNetBSDArchitecture
> +#endif
> +
> #ifdef __FreeBSD__
> # define MacroIncludeFile <FreeBSD.cf>
> # define MacroFile FreeBSD.cf
> @@ -254,6 +264,11 @@
> # endif
> #endif /* __FreeBSD__ */
>
> +/* Systems based on kernel of FreeBSD */
> +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
> +#define KFreeBSDArchitecture
> +#endif
> +
> #ifdef AMOEBA
> /* Should be before the 'sun' entry because we may be cross-compiling */
> # define MacroIncludeFile <Amoeba.cf>
> @@ -962,10 +977,20 @@
> #define i386Architecture
> #endif /* minix */
>
> -#ifdef MACH
> -#ifdef __GNU__
> +/* Systems with GNU libc and userland */
> +#if defined(__GNU__) || defined(__GNU_KFreeBSD__) || \
> + defined(__GNU_KNetBSD__) || defined(__GNU_KOpenBSD__)
> +#define GNUArchitecture
> #define MacroIncludeFile <gnu.cf>
> #define MacroFile gnu.cf
> +#ifdef __i386__
> +#define i386Architecture
> +#endif
> +#endif
> +
> +#ifdef MACH
> +#ifdef __GNU__
> +/* Mach-based GNU system */
> #define GNUMachArchitecture
> #else
> #define MacroIncludeFile <mach.cf>
This patch together with the one in bugzilla #908 broke XFree86 builds
on OpenBSD on everything but i386. By inspection of the code, I guess
it also breaks FreeBSD and NetBSD on non i386 platforms.
The problem is that the patch above fails to define K*BSDArchitecture
because __*BSD__ is #undef'd before the attempt to define the former.
The following patch to Imake.cf makes it behave as intended and causes
the current code in xc/programs/Xserver/hw/xfre86/os-support/Imakefile
to work again. But systems that don't define BUS_SUBDIR
will fail anyways.
So maybe it's better to remove the gigantic test to define BUS_SUBDIR?
--- xc/config/cf/Imake.cf.orig Mon Dec 15 20:32:07 2003
+++ xc/config/cf/Imake.cf Mon Dec 15 20:33:21 2003
@@ -102,6 +102,7 @@
# undef __OpenBSD__
# undef __NetBSD__
# define OpenBSDArchitecture
+# define KOpenBSDArchitecture
# define MacroIncludeFile <OpenBSD.cf>
# define MacroFile OpenBSD.cf
# ifdef __i386__
@@ -178,7 +179,7 @@
#endif /* OpenBSD */
/* Systems based on kernel of OpenBSD */
-#if defined(__OpenBSD__) || defined(__OpenBSD_kernel__)
+#if defined(__OpenBSD_kernel__)
#define KOpenBSDArchitecture
#endif
@@ -187,6 +188,7 @@
# define MacroFile NetBSD.cf
# undef __NetBSD__
# define NetBSDArchitecture
+# define KNetBSDArchitecture
# ifdef __i386__
# define i386BsdArchitecture
# define i386Architecture
@@ -230,7 +232,7 @@
#endif /* NetBSD */
/* Systems based on kernel of NetBSD */
-#if defined(__NetBSD__) || defined(__NetBSD_kernel__)
+#if defined(__NetBSD_kernel__)
#define KNetBSDArchitecture
#endif
@@ -239,6 +241,7 @@
# define MacroFile FreeBSD.cf
# undef __FreeBSD__
# define FreeBSDArchitecture
+# define KFreeBSDArchitecture
# ifdef __i386__
# define i386BsdArchitecture
# define i386Architecture
@@ -265,7 +268,7 @@
#endif /* __FreeBSD__ */
/* Systems based on kernel of FreeBSD */
-#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
+#if defined(__FreeBSD_kernel__)
#define KFreeBSDArchitecture
#endif
Matthieu
_______________________________________________
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel