diff options
author | ryoon <ryoon> | 2014-07-17 13:44:28 +0000 |
---|---|---|
committer | ryoon <ryoon> | 2014-07-17 13:44:28 +0000 |
commit | cd269c07995bc321eb5eb2c8e272d99faf9a4631 (patch) | |
tree | c2a2c3b75b936de267a522f7636ac73ca316d014 /devel/cmake/patches | |
parent | c3aebbea76d464af579d08ea8463849818482a30 (diff) | |
download | pkgsrc-cd269c07995bc321eb5eb2c8e272d99faf9a4631.tar.gz |
Add SCO OpenServer 5.0.7/3.2 support. Fix build.
Diffstat (limited to 'devel/cmake/patches')
-rw-r--r-- | devel/cmake/patches/patch-Modules_Platform_SCO__SV.cmake | 10 | ||||
-rw-r--r-- | devel/cmake/patches/patch-Source_cmELF.cxx | 48 | ||||
-rw-r--r-- | devel/cmake/patches/patch-Source_kwsys_SystemTools.cxx | 19 |
3 files changed, 77 insertions, 0 deletions
diff --git a/devel/cmake/patches/patch-Modules_Platform_SCO__SV.cmake b/devel/cmake/patches/patch-Modules_Platform_SCO__SV.cmake new file mode 100644 index 00000000000..95269dc4d48 --- /dev/null +++ b/devel/cmake/patches/patch-Modules_Platform_SCO__SV.cmake @@ -0,0 +1,10 @@ +$NetBSD: patch-Modules_Platform_SCO__SV.cmake,v 1.1 2014/07/17 13:44:28 ryoon Exp $ + +* so filename versioning requires CMAKE_SHARED_LIBRARY_SONAME_C_FLAG. + +--- Modules/Platform/SCO_SV.cmake.orig 2014-01-16 17:15:08.000000000 +0000 ++++ Modules/Platform/SCO_SV.cmake +@@ -1,2 +1,3 @@ + set(CMAKE_DL_LIBS "") ++set(CMAKE_SHARED_LIBRARY_SONAME_C_FLAG "-h,") + include(Platform/UnixPaths) diff --git a/devel/cmake/patches/patch-Source_cmELF.cxx b/devel/cmake/patches/patch-Source_cmELF.cxx new file mode 100644 index 00000000000..58b414531a4 --- /dev/null +++ b/devel/cmake/patches/patch-Source_cmELF.cxx @@ -0,0 +1,48 @@ +$NetBSD: patch-Source_cmELF.cxx,v 1.1 2014/07/17 13:44:28 ryoon Exp $ + +* SCO OpenServer 5.0.7/3.2 has not 64bit ELF support. + +--- Source/cmELF.cxx.orig 2014-01-16 17:15:08.000000000 +0000 ++++ Source/cmELF.cxx +@@ -28,6 +28,9 @@ + #if defined(__sun) + # include <sys/link.h> // For dynamic section information + #endif ++#if defined(_SCO_DS) ++# include <link.h> // For DT_SONAME etc. ++#endif + + //---------------------------------------------------------------------------- + // Low-level byte swapping implementation. +@@ -181,6 +184,8 @@ struct cmELFTypes32 + }; + + // Configure the implementation template for 32-bit ELF files. ++#if !defined(_SCO_DS) ++// SCO OpenServer 5.0.7/3.2 has not 64bit ELF support. + struct cmELFTypes64 + { + typedef Elf64_Ehdr ELF_Ehdr; +@@ -189,6 +194,7 @@ struct cmELFTypes64 + typedef Elf64_Half ELF_Half; + static const char* GetName() { return "64-bit"; } + }; ++#endif + + //---------------------------------------------------------------------------- + // Parser implementation template. +@@ -764,11 +770,14 @@ cmELF::cmELF(const char* fname): Interna + // 32-bit ELF + this->Internal = new cmELFInternalImpl<cmELFTypes32>(this, fin, order); + } ++#if !defined(_SCO_DS) ++// SCO OpenServer 5.0.7/3.2 has not 64bit ELF support. + else if(ident[EI_CLASS] == ELFCLASS64) + { + // 64-bit ELF + this->Internal = new cmELFInternalImpl<cmELFTypes64>(this, fin, order); + } ++#endif + else + { + this->ErrorMessage = "ELF file class is not 32-bit or 64-bit."; diff --git a/devel/cmake/patches/patch-Source_kwsys_SystemTools.cxx b/devel/cmake/patches/patch-Source_kwsys_SystemTools.cxx new file mode 100644 index 00000000000..7fe47f9b0c3 --- /dev/null +++ b/devel/cmake/patches/patch-Source_kwsys_SystemTools.cxx @@ -0,0 +1,19 @@ +$NetBSD: patch-Source_kwsys_SystemTools.cxx,v 1.1 2014/07/17 13:44:28 ryoon Exp $ + +* SCO OpenServer 5.0.7/3.2's command has 711 permission. + +--- Source/kwsys/SystemTools.cxx.orig 2014-01-16 17:15:08.000000000 +0000 ++++ Source/kwsys/SystemTools.cxx +@@ -1071,7 +1071,12 @@ bool SystemTools::FileExists(const char* + #elif defined(_WIN32) + return WindowsFileExists(filename); + #else ++// SCO OpenServer 5.0.7/3.2's command has 711 permission. ++# if defined(_SCO_DS) ++ return access(filename, F_OK) == 0; ++# else + return access(filename, R_OK) == 0; ++# endif + #endif + } + |