Browse Source

Merge topic 'linux-standard-base'

cf5ad18 libarchive: Fix major() check for LSB 4.0 (#11648)
Brad King 15 years ago
parent
commit
e4f2a9317a
1 changed files with 6 additions and 2 deletions
  1. 6 2
      Utilities/cmlibarchive/CMakeLists.txt

+ 6 - 2
Utilities/cmlibarchive/CMakeLists.txt

@@ -415,8 +415,12 @@ CHECK_SYMBOL_EXISTS(strerror_r       "string.h"   HAVE_STRERROR_R)
 CHECK_SYMBOL_EXISTS(strftime         "time.h"     HAVE_STRFTIME)
 CHECK_SYMBOL_EXISTS(vprintf          "stdio.h"    HAVE_VPRINTF)
 
-CHECK_SYMBOL_EXISTS(major            "sys/mkdev.h"     MAJOR_IN_MKDEV)
-CHECK_SYMBOL_EXISTS(major            "sys/sysmacros.h" MAJOR_IN_SYSMACROS)
+CHECK_C_SOURCE_COMPILES(
+  "#include <sys/mkdev.h>\nint main() { return major(256); }"
+  MAJOR_IN_MKDEV)
+CHECK_C_SOURCE_COMPILES(
+  "#include <sys/sysmacros.h>\nint main() { return major(256); }"
+  MAJOR_IN_SYSMACROS)
 
 IF(HAVE_STRERROR_R)
   SET(HAVE_DECL_STRERROR_R 1)