Andy Cedilnik 20 лет назад
Родитель
Сommit
b507f8f0d1
3 измененных файлов с 5 добавлено и 18 удалено
  1. 4 0
      CMakeLists.txt
  2. 0 17
      Source/CMakeLists.txt
  3. 1 1
      Source/cmSystemTools.cxx

+ 4 - 0
CMakeLists.txt

@@ -125,6 +125,10 @@ IF(BUILD_CursesDialog)
   SUBDIRS(Source/CursesDialog/form)
 ENDIF(BUILD_CursesDialog)
 
+INCLUDE(CheckSymbolExists)
+CHECK_SYMBOL_EXISTS(unsetenv "stdlib.h" HAVE_UNSETENV)
+CHECK_SYMBOL_EXISTS(environ "stdlib.h" HAVE_ENVIRON_NOT_REQUIRE_PROTOTYPE)
+
 SUBDIRS(Source Modules Templates Utilities Tests/CMakeTests)
 ENABLE_TESTING()
 

+ 0 - 17
Source/CMakeLists.txt

@@ -23,23 +23,6 @@ INCLUDE_DIRECTORIES(
 
 # let cmake know it is supposed to use it
 ADD_DEFINITIONS(-DCMAKE_BUILD_WITH_CMAKE)
-INCLUDE(CheckSymbolExists)
-CHECK_SYMBOL_EXISTS(unsetenv "stdlib.h" HAVE_UNSETENV)
-INCLUDE("${CMAKE_SOURCE_DIR}/Modules/CheckCXXSourceCompiles.cmake")
-CHECK_CXX_SOURCE_COMPILES(
-  "int main(int argc, char* argv[]) { return sizeof(environ); }"
-  HAVE_ENVIRON_WITHOUT_SIGNATURE)
-IF(NOT HAVE_ENVIRON_WITHOUT_SIGNATURE)
-  CHECK_CXX_SOURCE_COMPILES(
-    "
-    #ifdef _WIN32
-    extern __declspec( dllimport ) char** environ;
-    #else
-    extern char** environ;
-    #endif
-    int main(int argc, char* argv[]) { return sizeof(environ); }"
-    HAVE_ENVIRON_WITH_SIGNATURE)
-ENDIF(NOT HAVE_ENVIRON_WITHOUT_SIGNATURE)
 
 OPTION(CMAKE_REGENERATE_YACCLEX
   "Regenerate YACC and LEXX files" OFF)

+ 1 - 1
Source/cmSystemTools.cxx

@@ -56,7 +56,7 @@
 # pragma set woff 1375 /* base class destructor not virtual */
 #endif
 
-#if !defined(HAVE_ENVIRON_WITHOUT_SIGNATURE)
+#if !defined(HAVE_ENVIRON_NOT_REQUIRE_PROTOTYPE)
 // For GetEnvironmentVariables
 # if defined(_WIN32)
 extern __declspec( dllimport ) char** environ;