On Fri, 18 Dec 2020 05:46:35 +0100
Rafael Sadowski wrote:
> On Fri Dec 11, 2020 at 04:37:36PM +0100, Rafael Sadowski wrote:
> > Update CMake to the latest version 3.19.1.
> >
> > This diff is currently in an amd64 bulk build. It would be helpful
> > if other cmake-arches (mostly all) could test the diff.
> >
> > Changlog:
> >
> > https://cmake.org/cmake/help/v3.18/release/3.18.html
> > https://cmake.org/cmake/help/v3.19/release/3.19.html
> >
> > Rafael Sadowski
>
> This diff went through an amd64 bulk build without fallout. There was
> also a macppc build test by cwen.
Since then i've managed to build ~500 ports on macppc without issues.
> >
> > diff --git a/devel/cmake/Makefile b/devel/cmake/Makefile
> > index 32ea41ee10a..b8da6479471 100644
> > --- a/devel/cmake/Makefile
> > +++ b/devel/cmake/Makefile
> > @@ -4,11 +4,10 @@ DPB_PROPERTIES = parallel
> >
> > COMMENT = portable build system
> >
> > -VER = 3.17.5
> > +VER = 3.19.1
> > EPOCH = 0
> > DISTNAME = cmake-${VER}
> > CATEGORIES = devel
> > -REVISION = 1
> >
> > HOMEPAGE = https://www.cmake.org/
> >
> > @@ -52,6 +51,10 @@ CONFIGURE_ENV += MAKE=${MAKE_PROGRAM}
> >
> > MAKE_FLAGS += VERBOSE=1
> >
> > +# bootstrap build
> > +CONFIGURE_ENV += MODCMAKE_PORT_BUILD=yes
> > +MAKE_ENV += MODCMAKE_PORT_BUILD=yes
> > +
> > PORTHOME = ${WRKDIR}
> >
> > SEPARATE_BUILD = Yes
> > diff --git a/devel/cmake/distinfo b/devel/cmake/distinfo
> > index 2e33c49f7f2..1e77838aa37 100644
> > --- a/devel/cmake/distinfo
> > +++ b/devel/cmake/distinfo
> > @@ -1,2 +1,2 @@
> > -SHA256 (cmake-3.17.5.tar.gz) =
> > jDCD2Y/ZPBIo1eTkDb/y3Yj097c7n6JKKThie4vCjxo= -SIZE
> > (cmake-3.17.5.tar.gz) = 9473615 +SHA256 (cmake-3.19.1.tar.gz) =
> > HSZuo6du9lDNzxbHgqMXy0p6pGFhfulB44nLSHOKOro= +SIZE
> > (cmake-3.19.1.tar.gz) = 9256956 diff --git
> > a/devel/cmake/patches/patch-Modules_Compiler_GNU-Fortran_cmake
> > b/devel/cmake/patches/patch-Modules_Compiler_GNU-Fortran_cmake
> > index c57451892a1..27eb8e21aa2 100644
> > --- a/devel/cmake/patches/patch-Modules_Compiler_GNU-Fortran_cmake
> > +++ b/devel/cmake/patches/patch-Modules_Compiler_GNU-Fortran_cmake
> > @@ -2,7 +2,7 @@ $OpenBSD:
> > patch-Modules_Compiler_GNU-Fortran_cmake,v 1.9 2020/11/23 07:33:20
> > rsa Index: Modules/Compiler/GNU-Fortran.cmake
> > --- Modules/Compiler/GNU-Fortran.cmake.orig
> > +++ Modules/Compiler/GNU-Fortran.cmake
> > -@@ -12,9 +12,11 @@ set(CMAKE_Fortran_FORMAT_FREE_FLAG
> > "-ffree-form") +@@ -17,9 +17,11 @@ endif()
> >
> > set(CMAKE_Fortran_POSTPROCESS_FLAG "-fpreprocessed")
> >
> > diff --git a/devel/cmake/patches/patch-Modules_Compiler_GNU_cmake
> > b/devel/cmake/patches/patch-Modules_Compiler_GNU_cmake index
> > 08642e625e1..c979e4f4175 100644
> > --- a/devel/cmake/patches/patch-Modules_Compiler_GNU_cmake
> > +++ b/devel/cmake/patches/patch-Modules_Compiler_GNU_cmake
> > @@ -2,7 +2,7 @@ $OpenBSD: patch-Modules_Compiler_GNU_cmake,v 1.15
> > 2020/11/23 07:33:20 rsadowski Index: Modules/Compiler/GNU.cmake
> > --- Modules/Compiler/GNU.cmake.orig
> > +++ Modules/Compiler/GNU.cmake
> > -@@ -53,10 +53,18 @@ macro(__compiler_gnu lang)
> > +@@ -54,10 +54,17 @@ macro(__compiler_gnu lang)
> >
> > # Initial configuration flags.
> > string(APPEND CMAKE_${lang}_FLAGS_INIT " ")
> > @@ -21,7 +21,6 @@ Index: Modules/Compiler/GNU.cmake
> > + string(APPEND CMAKE_${lang}_FLAGS_RELEASE_INIT " -O3
> > -DNDEBUG")
> > + string(APPEND CMAKE_${lang}_FLAGS_RELWITHDEBINFO_INIT " -O2
> > -g -DNDEBUG")
> > + endif()
> > -+
> > set(CMAKE_${lang}_CREATE_PREPROCESSED_SOURCE "<CMAKE_${lang}
> > _COMPILER> <DEFINES> <INCLUDES> <FLAGS> -E <SOURCE> >
> > <PREPROCESSED_SOURCE>") set(CMAKE_${lang}_CREATE_ASSEMBLY_SOURCE
> > "<CMAKE_${lang}_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -S <SOURCE>
> > -o <ASSEMBLY_SOURCE>") if(NOT APPLE OR NOT CMAKE_${lang}
> > _COMPILER_VERSION VERSION_LESS 4) # work around #4462 diff --git
> > a/devel/cmake/patches/patch-Modules_FindTclStub_cmake
> > b/devel/cmake/patches/patch-Modules_FindTclStub_cmake index
> > f1904fb8550..5f5321ee78e 100644
> > --- a/devel/cmake/patches/patch-Modules_FindTclStub_cmake
> > +++ b/devel/cmake/patches/patch-Modules_FindTclStub_cmake
> > @@ -2,8 +2,13 @@ $OpenBSD: patch-Modules_FindTclStub_cmake,v 1.7
> > 2019/08/21 05:47:40 rsadowski Ex Index: Modules/FindTclStub.cmake
> > --- Modules/FindTclStub.cmake.orig
> > +++ Modules/FindTclStub.cmake
> > -@@ -49,13 +49,21 @@ include($
> > {CMAKE_CURRENT_LIST_DIR}/FindTCL.cmake) +@@ -47,15 +47,26 @@
> > variables were moved or removed. Changes compared to
> > + include(${CMAKE_CURRENT_LIST_DIR}/FindTCL.cmake)
> > +
> > ++set(MODTCL_VERSION $ENV{MODTCL_VERSION})
> > ++set(MODTK_VERSION $ENV{MODTK_VERSION})/MODTK_VERSION
> > ++
> > get_filename_component(TCL_TCLSH_PATH "${TCL_TCLSH}" PATH)
> > get_filename_component(TCL_TCLSH_PATH_PARENT "${TCL_TCLSH_PATH}"
> > PATH) -string(REGEX REPLACE
> > @@ -28,7 +33,7 @@ Index: Modules/FindTclStub.cmake
> >
> > get_filename_component(TCL_INCLUDE_PATH_PARENT "$
> > {TCL_INCLUDE_PATH}" PATH)
> > get_filename_component(TK_INCLUDE_PATH_PARENT "${TK_INCLUDE_PATH}"
> > PATH) -@@ -70,14 +78,20 @@
> > get_filename_component(TK_LIBRARY_PATH_PARENT "${TK_LI +@@ -70,14
> > +81,20 @@ get_filename_component(TK_LIBRARY_PATH_PARENT "${TK_LI
> > string(REGEX REPLACE "^.*tk([0-9]\\.*[0-9]).*$" "\\1"
> > TK_LIBRARY_VERSION "${TK_LIBRARY}") diff --git
> > a/devel/cmake/patches/patch-Modules_FindTclsh_cmake
> > b/devel/cmake/patches/patch-Modules_FindTclsh_cmake index
> > 83d8eef7733..7e4bba4bab5 100644
> > --- a/devel/cmake/patches/patch-Modules_FindTclsh_cmake
> > +++ b/devel/cmake/patches/patch-Modules_FindTclsh_cmake
> > @@ -2,17 +2,13 @@ $OpenBSD: patch-Modules_FindTclsh_cmake,v 1.6
> > 2019/08/21 05:47:40 rsadowski Exp Index: Modules/FindTclsh.cmake
> > --- Modules/FindTclsh.cmake.orig
> > +++ Modules/FindTclsh.cmake
> > -@@ -20,14 +20,21 @@ In cygwin, look for the cygwin version first.
> > Don't l
> > - to avoid finding the cygwin version on a Win32 build.
> > +@@ -17,18 +17,30 @@ library is. This code sets the following
> > variables:
> > + TCL_TCLSH = the path to the tclsh executable
> > #]=======================================================================]
> >
> > +set(MODTCL_VERSION $ENV{MODTCL_VERSION})
> > +set(MODTK_VERSION $ENV{MODTK_VERSION})
> > +
> > - if(CYGWIN)
> > - find_program(TCL_TCLSH NAMES cygtclsh83 cygtclsh80)
> > - endif()
> > -
> > get_filename_component(TK_WISH_PATH "${TK_WISH}" PATH)
> > get_filename_component(TK_WISH_PATH_PARENT "${TK_WISH_PATH}" PATH)
> > -string(REGEX REPLACE
> > @@ -26,3 +22,18 @@ Index: Modules/FindTclsh.cmake
> >
> > get_filename_component(TCL_INCLUDE_PATH_PARENT "$
> > {TCL_INCLUDE_PATH}" PATH)
> > get_filename_component(TK_INCLUDE_PATH_PARENT "${TK_INCLUDE_PATH}"
> > PATH)
> > +
> > + get_filename_component(TCL_LIBRARY_PATH "${TCL_LIBRARY}" PATH)
> > + get_filename_component(TCL_LIBRARY_PATH_PARENT "$
> > {TCL_LIBRARY_PATH}" PATH) +-string(REGEX REPLACE
> > +- "^.*tcl([0-9]\\.*[0-9]).*$" "\\1" TCL_LIBRARY_VERSION "$
> > {TCL_LIBRARY}") ++
> > ++if(MODTCL_VERSION)
> > ++ set(TCL_LIBRARY_VERSION "${MODTCL_VERSION}")
> > ++else(MODTCL_VERSION)
> > ++ string(REGEX REPLACE
> > ++ "^.*tcl([0-9]\\.*[0-9]).*$" "\\1" TCL_LIBRARY_VERSION "$
> > {TCL_LIBRARY}") ++endif(MODTCL_VERSION)
> > +
> > + get_filename_component(TK_LIBRARY_PATH "${TK_LIBRARY}" PATH)
> > + get_filename_component(TK_LIBRARY_PATH_PARENT "$
> > {TK_LIBRARY_PATH}" PATH) diff --git
> > a/devel/cmake/patches/patch-Source_cmArchiveWrite_cxx
> > b/devel/cmake/patches/patch-Source_cmArchiveWrite_cxx index
> > fedfa212858..b2d99c74787 100644
> > --- a/devel/cmake/patches/patch-Source_cmArchiveWrite_cxx
> > +++ b/devel/cmake/patches/patch-Source_cmArchiveWrite_cxx
> > @@ -29,7 +29,7 @@ the invalid use of the interface.
> > Index: Source/cmArchiveWrite.cxx
> > --- Source/cmArchiveWrite.cxx.orig
> > +++ Source/cmArchiveWrite.cxx
> > -@@ -242,9 +242,6 @@ bool cmArchiveWrite::AddFile(const char* file,
> > size_t +@@ -283,9 +283,6 @@ bool cmArchiveWrite::AddFile(const
> > char* file, size_t }
> > const char* out = file + skip;
> >
> > diff --git
> > a/devel/cmake/patches/patch-Source_cmComputeLinkInformation_cxx
> > b/devel/cmake/patches/patch-Source_cmComputeLinkInformation_cxx
> > index 9a916ad4215..cb2b182f107 100644
> > --- a/devel/cmake/patches/patch-Source_cmComputeLinkInformation_cxx
> > +++ b/devel/cmake/patches/patch-Source_cmComputeLinkInformation_cxx
> > @@ -38,8 +38,8 @@ Index: Source/cmComputeLinkInformation.cxx
> > +
> > // Restore the target link type so the correct system runtime
> > // libraries are found.
> > - const char* lss =
> > this->Target->GetProperty("LINK_SEARCH_END_STATIC"); -@@ -718,10
> > +727,16 @@ void cmComputeLinkInformation::AddItem(BT<std::string>
> > + cmProp lss =
> > this->Target->GetProperty("LINK_SEARCH_END_STATIC"); +@@ -703,10
> > +712,16 @@ void
> > cmComputeLinkInformation::AddItem(BT<std::string> // This is a
> > directory. this->AddDirectoryItem(item.Value); } else {
> > @@ -59,22 +59,21 @@ Index: Source/cmComputeLinkInformation.cxx
> > }
> > } else {
> > // This is a library or option specified by the user.
> > -@@ -1053,11 +1068,18 @@ void
> > cmComputeLinkInformation::AddTargetItem(BT<std::s +@@ -1036,11
> > +1051,18 @@ void cmComputeLinkInformation::AddTargetItem(BT<std::s
> > this->SharedLibrariesLinked.insert(target); }
> >
> > -- // Handle case of an imported shared library with no soname.
> > -- if (this->NoSONameUsesPath &&
> > -- target->IsImportedSharedLibWithoutSOName(this->Config)) {
> > -- this->AddSharedLibNoSOName(item.Value);
> > -- return;
> > + if (this->OpenBSD) {
> > + if (target->GetType() == cmStateEnums::SHARED_LIBRARY) {
> > + this->AddSharedLibNoSOName(item.Value);
> > + return;
> > + }
> > + } else {
> > -+ // Handle case of an imported shared library with no soname.
> > + // Handle case of an imported shared library with no soname.
> > +- if (this->NoSONameUsesPath &&
> > +- target->IsImportedSharedLibWithoutSOName(this->Config)) {
> > +- this->AddSharedLibNoSOName(item.Value);
> > +- return;
> > + if (this->NoSONameUsesPath &&
> > + target->IsImportedSharedLibWithoutSOName(this->Config)) {
> > + this->AddSharedLibNoSOName(item.Value);
> > @@ -83,32 +82,31 @@ Index: Source/cmComputeLinkInformation.cxx
> > }
> >
> > // For compatibility with CMake 2.4 include the item's
> > directory in -@@ -1616,6 +1638,28 @@ void
> > cmComputeLinkInformation::LoadImplicitLinkInfo()
> > - if (const char* rpathDirs =
> > -
> > (this->Makefile->GetDefinition("CMAKE_PLATFORM_RUNTIME_PATH"))) {
> > - cmExpandList(rpathDirs, this->RuntimeLinkDirs);
> > -+ }
> > +@@ -1053,6 +1075,27 @@ void
> > cmComputeLinkInformation::AddTargetItem(BT<std::s
> > +
> > + // Now add the full path to the library.
> > + this->Items.emplace_back(item, true, target);
> > +}
> > +
> > -+
> > +void cmComputeLinkInformation::LoadImplicitLinkInfoOpenBSD()
> > +{
> > + std::vector<std::string> implicitDirVec;
> > +
> > + // Get platform-wide implicit directories.
> > -+ if (const char* implicitLinks = (this->Makefile->GetDefinition(
> > -+ "CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES"))) {
> > -+ cmExpandList(implicitLinks, implicitDirVec);
> > ++ if (cmProp implicitLinks =
> > ++
> > this->Makefile->GetDefinition("CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES"))
> > { ++ this->Makefile->GetDefExpandList(*implicitLinks,
> > implicitDirVec);
> > + }
> > +
> > + // Append library architecture to all implicit platform
> > directories
> > + // and add them to the set
> > -+ if (const char* libraryArch =
> > ++ if (cmProp libraryArch =
> > +
> > this->Makefile->GetDefinition("CMAKE_LIBRARY_ARCHITECTURE")) {
> > + for (std::vector<std::string>::const_iterator i =
> > implicitDirVec.begin();
> > + i != implicitDirVec.end(); ++i) {
> > -+ this->ImplicitLinkDirs.insert(*i + "/" + libraryArch);
> > ++ this->ImplicitLinkDirs.insert(*i + "/" + *libraryArch);
> > + }
> > - }
> > ++ }
> > }
> >
> > + void cmComputeLinkInformation::AddFullItem(BT<std::string> const&
> > item) diff --git
> > a/devel/cmake/patches/patch-Source_cmComputeLinkInformation_h
> > b/devel/cmake/patches/patch-Source_cmComputeLinkInformation_h index
> > 61585e4b750..70b44694409 100644
> > --- a/devel/cmake/patches/patch-Source_cmComputeLinkInformation_h
> > +++ b/devel/cmake/patches/patch-Source_cmComputeLinkInformation_h
> > @@ -3,7 +3,7 @@ $OpenBSD: patch-Source_cmComputeLinkInformation_h,v
> > 1.6 2020/05/25 05:12:00 rsad Index:
> > Source/cmComputeLinkInformation.h
> > --- Source/cmComputeLinkInformation.h.orig
> > +++ Source/cmComputeLinkInformation.h
> > -@@ -176,6 +176,7 @@ class cmComputeLinkInformation (private)
> > +@@ -175,6 +175,7 @@ class cmComputeLinkInformation (private)
> >
> > // Implicit link libraries and directories for linker language.
> > void LoadImplicitLinkInfo();
> > diff --git a/devel/cmake/patches/patch-Source_cmGeneratorTarget_cxx
> > b/devel/cmake/patches/patch-Source_cmGeneratorTarget_cxx index
> > 9af23610dfd..19ceb84ebad 100644
> > --- a/devel/cmake/patches/patch-Source_cmGeneratorTarget_cxx
> > +++ b/devel/cmake/patches/patch-Source_cmGeneratorTarget_cxx
> > @@ -3,24 +3,22 @@ $OpenBSD: patch-Source_cmGeneratorTarget_cxx,v
> > 1.14 2020/10/09 18:50:41 rsadowsk Index:
> > Source/cmGeneratorTarget.cxx
> > --- Source/cmGeneratorTarget.cxx.orig
> > +++ Source/cmGeneratorTarget.cxx
> > -@@ -4154,9 +4154,15 @@ cmGeneratorTarget::Names
> > cmGeneratorTarget::GetLibrary +@@ -4774,9 +4774,14 @@
> > cmGeneratorTarget::Names cmGeneratorTarget::GetLibrary // Check for
> > library version properties.
> > - const char* version = this->GetProperty("VERSION");
> > - const char* soversion = this->GetProperty("SOVERSION");
> > + cmProp version = this->GetProperty("VERSION");
> > + cmProp soversion = this->GetProperty("SOVERSION");
> > +#if defined(__OpenBSD__)
> > + if (this->GetType() != cmStateEnums::SHARED_LIBRARY &&
> > -+ this->GetType() != cmStateEnums::MODULE_LIBRARY)
> > ++ this->GetType() != cmStateEnums::MODULE_LIBRARY) {
> > +#else
> > if (!this->HasSOName(config) ||
> > this->Makefile->IsOn("CMAKE_PLATFORM_NO_VERSIONED_SONAME")
> > ||
> > -- this->IsFrameworkOnApple()) {
> > -+ this->IsFrameworkOnApple())
> > + this->IsFrameworkOnApple()) {
> > +
No comments:
Post a Comment