[[email protected]: Problem with 4.5.99.903 on NetBSD]

Bernd Ernesti <[email protected]>
Newsgroups gmane.comp.xfree86.devel
Message-ID <[email protected]>
Forwared because my original mail was stopper by the subscriber check.

----- Forwarded message from Bernd Ernesti <[email protected]> -----

Date: Sun, 23 Apr 2006 12:06:52 +0200
From: Bernd Ernesti <[email protected]>
Subject: Problem with 4.5.99.903 on NetBSD
To: [email protected]

Hi,

I send David Dawes a mail last month that there was a problem with
his change #231.
Not all problems were fixed since then.

The remaining problem is that you can't use
#define InstallManPageSource NO
in host.def.

This would result in an error during the cleaning stage of a make World:

cleaning in programs/Xserver/hw/xfree86...
make: "/xc/programs/Xserver/hw/xfree86/Makefile" line 1120: Missing dependency operator
make: Fatal errors encountered -- cannot continue

These are the lines around 1120, where 1120 is the InstallManPageLongBase one:

> cleandir::
>       $(RM) XF86Config.$(MANNEWSUFFIX)
> 
> InstallManPageLongBase(XF86Config,$(FILEMANDIR),XF86Config,$(FILEMANSUFFIX))
> 
> install::

Looking further into the NetBSD.cf changes made be belive that the
change in 3.130 contains some problems:

+#define InstallGenManPageLong(file,destdir,dest,suffix)                        @@\
+BuildInstallHtmlManPage(file,dest,suffix)                              @@\
+                                                                       @@\
+CppManTarget(file, $(EXTRAMANDEFS))                                    @@\
+                                                                       @@\
+InstallManPageLongBase(file,destdir,dest,suffix)

and

-InstallManPageAliasesBase(file,destdir,aliases)
+InstallManPageAliasesBase(file,destdir,suffix,aliases)

IMHO there is an 'Os' prefix missing for InstallManPageLongBase and
InstallManPageAliasesBase.

Attached is an NetBSD.cf to sync it with the one used in our cvs repository:
- Added some brackets to make it easier to read and changed some logic
  for the NetBSD version check
- Adding support for HasArc4Random
and a fix for the InstallManPageSource problem which seems to work for me.

I just did a complete new build, while using InstallManPageSource set to NO.
And the unformated manpages where not installed.

Bernd


--- NetBSD.cf	6 Mar 2006 15:58:01 -0000	3.130
+++ NetBSD.cf	23 Apr 2006 09:15:11 -0000
@@ -76,7 +76,7 @@
 #endif
 #define HasNdbm         	YES
 #define HasPutenv       	YES
-#if OSMajorVersion == 1 && OSMinorVersion > 4 || OSMajorVersion > 1
+#if (OSMajorVersion == 1 && OSMinorVersion > 4 || OSMajorVersion > 1)
 # define HasStrlcat		YES
 #endif
 #define HasSnprintf		YES
@@ -91,11 +91,11 @@
 # define HasLibCrypt		YES
 #endif
 #ifndef HasShm
-# if OSMajorVersion == 0 && OSMinorVersion == 9 && OSTeenyVersion == 2
 /*
  * Shm memory was removed in 0.9B because it was encumbered.
  * A free version was added in 0.9C
  */
+# if (OSMajorVersion == 0 && OSMinorVersion == 9 && OSTeenyVersion == 2)
 #  define HasShm          	NO
 # else
 #  define HasShm          	YES
@@ -110,25 +110,28 @@
 #  define HasDlsymBug		YES
 #endif
 /* Mkstemp is there since 1.2 (at least) */
-#if (!(OSMajorVersion == 0 || \
-       (OSMajorVersion == 1 && OSMinorVersion < 2))) 
-#define HasMkstemp		YES
+#if ((OSMajorVersion > 1) || \
+     (OSMajorVersion == 1 && OSMinorVersion >= 2)) 
+# define HasMkstemp		YES
 #endif
 /* But the standalone mktemp doesn't exist before NetBSD 1.5*/
-#if (OSMajorVersion ==0 || (OSMajorVersion == 1 && OSMinorVersion <= 4))
+#if ((OSMajorVersion == 0) || \
+    (OSMajorVersion == 1 && OSMinorVersion <= 4))
 # define HasMktemp		NO
 #else
 # define HasMktemp		YES
 #endif
 
 #ifndef HasIssetugid
-# if (OSMajorVersion > 1 || (OSMajorVersion == 1 && OSMinorVersion >= 5))
+# if ((OSMajorVersion > 1) || \
+     (OSMajorVersion == 1 && OSMinorVersion >= 5))
 #  define HasIssetugid          YES
 # endif
 #endif
 
-#if (OSMajorVersion == 1 && OSMinorVersion >= 5 || OSMajorVersion > 1) 
-#define HasGetIfAddrs		YES
+#if ((OSMajorVersion > 1) || \
+     (OSMajorVersion == 1 && OSMinorVersion >= 5))
+# define HasGetIfAddrs		YES
 #endif
 
 #define HasUsableFileMmap	YES
@@ -140,8 +143,9 @@
 
 #define InstallXloadSetGID	NO
 
-#if OSMajorVersion < 1 || (OSMajorVersion == 1 && OSMinorVersion < 5)
-#define BuildIPv6		NO
+#if ((OSMajorVersion < 1) || \
+     (OSMajorVersion == 1 && OSMinorVersion < 5))
+# define BuildIPv6		NO
 #endif
 
 #define IPv6SocketsAlsoIPv4	NO
@@ -163,18 +167,31 @@
 # define ThreadedX		YES
 # define HasThreadSafeAPI	YES
 # define ThreadsLibraries	-lpthread
+# define SystemMTDefines	-D_REENTRANT
+# define MTSafeAPIDefines	-DXUSE_MTSAFE_API -DXNO_MTSAFE_PWDAPI
 # if ((OSMajorVersion == 2 && OSMinorVersion == 99 && OSTeenyVersion < 11) || \
       (OSMajorVersion == 2 && OSMinorVersion < 99) || \
       (OSMajorVersion < 2))
 #  define LibraryMTDefines	-DUSE_NBSD_THREADLIB
 # endif
-# define SystemMTDefines	-D_REENTRANT
-# define MTSafeAPIDefines	-DXUSE_MTSAFE_API -DXNO_MTSAFE_PWDAPI
 #else 
 # define ThreadedX		NO
 #endif
 
 /*
+ * Use rnd(4) under NetBSD from 1.4 to 1.6A and arc4random(3) under 1.6B
+ * and above.
+ */
+#if ((OSMajorVersion > 1) || \
+     (OSMajorVersion == 1 && OSMinorVersion == 6 && OSTeenyVersion >= 2))
+# define HasArc4Random		YES
+#elif ((OSMajorVersion > 1) || \
+       (OSMajorVersion == 1 && OSMinorVersion > 3))
+# define HasDevRandom		YES
+# define RandomDeviceFile	/dev/urandom
+#endif
+
+/*
  * Compiler Features
  */
 #define GccUsesGas		YES
@@ -586,7 +603,7 @@
 									@@\
 CppManTarget(file, $(EXTRAMANDEFS))					@@\
 									@@\
-InstallManPageLongBase(file,destdir,dest,suffix)
+OsInstallManPageLongBase(file,destdir,dest,suffix)
  
 #define InstallManPageAliases(file,destdir,aliases)			@@\
 InstallHtmlManPageAliases(file,aliases,$(MANSUFFIX))			@@\
@@ -596,7 +613,7 @@
 #define InstallGenManPageAliases(file,destdir,suffix,aliases)		@@\
 InstallHtmlManPageAliases(file,aliases,suffix)				@@\
 									@@\
-InstallManPageAliasesBase(file,destdir,suffix,aliases)
+OsInstallManPageAliasesBase(file,destdir,suffix,aliases)
 
 #define InstallMultipleMan(list,dest)					@@\
 OsInstallMultipleMan(list,dest)
@@ -637,7 +654,8 @@
  * Unresolved references are fatal on NetBSD 1.5 for libGL, which is
  * built with -Bsymbolic.
  */
-#if UseElfFormat && OSMajorVersion == 1 && OSMinorVersion == 5
+#if UseElfFormat && \
+    (OSMajorVersion == 1 && OSMinorVersion == 5)
 #define SharedGLReqs		$(LDPRELIBS) $(XLIB) -lc
 #endif
 
@@ -734,10 +752,3 @@
 #ifndef UseSeparateConfDir
 #define UseSeparateConfDir NO	/* We don't want appdefs in "/etc/X11". */
 #endif
-
-#if defined(NetBSDArchitecture) && \
-     ((OSMajorVersion > 1) || \
-      (OSMajorVersion == 1 && OSMinorVersion > 3))
-#define HasDevRandom		YES
-#define RandomDeviceFile	/dev/urandom
-#endif


----- End forwarded message -----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.