CMake is used to control the software compilation process using simple
platform and compiler independent configuration files. CMake generates native
makefiles and workspaces that can be used in the compiler environment of your
choice. CMake is quite sophisticated: it is possible to support complex
environments requiring system configuration, pre-processor generation, code
generation, and template instantiation.
This port a Meta-port to connect all related ports to CMake's distribution
such as CMake itself, documentation and frontends.
===> The following configuration options are available for cmake-3.31.12:
DOCS=on: Build and/or install documentation
GUI=off: Qt-based GUI
MANPAGES=on: Build and/or install manual pages
===> Use 'make config' to modify these settings
Reason:
CMake has been converted to a meta-port and new CMake packages created causes
conflicts with old binary packages prior to this change.
If CMake was installed using binary packages via pkg it needs to be
uninstalled using pkg delete before installing CMake and related packages
after this change.
pkg delete cmake
pkg install cmake-core
If you're using portmaster you also need to delete the old CMake package
before upgrading.
Number of commits found: 220 (showing only 100 on this page) #
devel/cmake*: bump to 3.24.0
Update the CMake ports to 3.24. A previous exp-run -- thanks
antoine@ -- showed up new failures. That is normal for a CMake
update. tcberner@ fixed most of them (in the linked PR) and
lang/zig just landed. The original patch for the update came
from tcberner@ as well, but I had to re-jig it after CMake
was reorganized into a metaport and -core package.
PR: 265652
devel/cmake: Create a meta-port for CMake
Create a meta-port for CMake to make it easier for the end user and
better handling of build dependencies.
This pushes devel/cmake into /devel/cmake-core and splits manpages and
its dependencies to /devel/cmake-man
Approved by: kde (tcberner)
Differential Revision: https://reviews.freebsd.org/D34957
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
devel: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* "Waitman Gobble" <uzimac@da3m0n8t3r.com>
* <jkoshy@FreeBSD.org>
* Aaron Dalton <aaron@FreeBSD.org>
* Aaron Dalton <aaron@daltons.ca>
* Aaron H. K. Diep <ahkdiep@gmail.com>
* Aaron Hurt <ahurt@anbcs.com>
* Abel Chow <abel_chow@yahoo.com>
* Adam McLaurin
* Adam Saponara <as@php.net>
* Adam Weinberger <adamw@FreeBSD.org>
* Ade Lovett <ade@FreeBSD.org>
(Only the first 15 lines of the commit message are shown above )
devel/cmake: prefer python3 over versioned python3.x
Depending on which mechanism is used to find Python (Python3
in particular, since there's only one Python2 version left),
either python3 is found -- installed by the python3 metaport,
and presumed to be the "preferred / default Python3 version" --
of a versioned python3. Asking for, say, Python 3.6 will get
you whatever python3 points at -- assuming it is newer than 3.6 --
or, with the other mechanism, the newest python (e.g. highest
installed version). Those are not necessarily the same.
Switch the new mechanism to preferring python3; there's a
knob in CMake itself for that, we just need to set it in
the FreeBSD config-file.
PR: 252277
*/*: Remove redundant '-*' from CONFLICTS definitions
The conflict checks compare the patterns first against the package
names without version (as reported by "pkg query "%n"), then - if
there was no match - agsinst the full package names including the
version (as reported by "pkg query "%n-%v").
Approved by: portmgr (blanket)
devel/cmake: Revert "devel/cmake: fix build with python 3.10 as default"
This reverts commit 913219385dfdf72232e6beefe287377cfebdfb04.
Previously build of cmake failed if 3.10 is default version of
Python. And it was worked around by limiting the range of Python to
3.6-3.9. The source of the build error is runtime error of
textproc/py-sphinx with Python 3.10. But it is already fixed and
workaround isn't necessary any more. So revert the commit
corresponding to it.
PR: 258798
Approved by: adridg (kde@), ygy (mentor)
MFH: 2021Q4
Differential Revision: https://reviews.freebsd.org/D32282
devel/cmake: fix CPack .pkg support, jump to 3.21.3
Update the patch for FreeBSD .pkg support in CPack to handle
libpkg 1.17 and later's use of .pkg as package-suffix rather
than .tgz. The PR below refers to this fix. I've kept code
for older libpkg in case there are systems with weirdly
mismatched current CMake and last-quarter's libpkg.
The patch is still being upstreamed. The PR mentioned below
is for this fix.
While here, update to 3.21.3. I've decided to -- unusual,
for sure -- bump CMake without the usual exp-run, because:
A regression in CMake 3.21.2 prompted a quick release of
(Only the first 15 lines of the commit message are shown above )
devel/cmake: Update to 3.20.1
This new version of CMake is much more picky with the language
than previous versions, so there was a fair bit of fallout --
patched before this push with plenty of "fix in advance of CMake
3.20" commits.
Release notes are at
https://cmake.org/cmake/help/v3.20/release/3.20.html
Thanks to antoine@ for multiple exp-runs.
Improve FreeBSD packaging in devel/cmake
The OPTION CPACK in CMake enables building FreeBSD packages directly
from cmake / cpack. This can be useful, for instance, with not-yet-
packaged software, or building packages for proprietary software.
This patch has been submitted upstream; it resolves a disagreement
between cmake and libpkg about the name of the resulting package.
Update CMake's FreeBSD pkg(8) generator
There is an OPTION CPACK for CMake that enables a FreeBSD pkg(8)
generator: after building anything CMake-based, `cpack -G FREEBSD`
gives you a a ready-to-go installable package.
Well, assuming you turn the option on, and the bugs in the generator
are fixed. Which this patch does. I've tried it with supertux2
and some other bits and pieces and the patch is in a MR upstream.
Backport a Fortran-with-CMake patch from CMake 3.20
This is already merged upstream and slated for 3.20, but is convenient
to have in ports now (with CMake 3.19.4). It allows propagating
CMAKE_EXE_LINKER_FLAGS into fortran-compatibility-tests in the face
of post-CMake-3.10 policy settings.
Patch from yuri@, only massaged to avoid having an octothorpe in
a filename.
PR: 253381
Submitted by: yuri@
Obtained from: upstream
devel/cmake: update to 3.18.4
Changes in 3.18.4 since 3.18.3:
Brad King (3):
FindJNI: Add aarch64 support
VS: Populate `std:c{11,17}` flag table entries for v142
CMake 3.18.4
Cristian Adam (1):
OBJCXX: Fix regression for compiling cpp files as objcxx
Kinan Mahdi (1):
VS: Fix regression in C# source links
Marc Chevrier (1):
(Only the first 15 lines of the commit message are shown above )
devel/cmake: fix build on GCC architectures
Manually define __BSD_VISIBLE to make timespec_get() available:
In file included from /usr/local/lib/gcc9/include/c++/chrono:41,
from
/wrkdirs/usr/ports/devel/cmake/work/cmake-3.18.1/Source/cmDuration.h:5,
from
/wrkdirs/usr/ports/devel/cmake/work/cmake-3.18.1/Source/cmSystemTools.h:19,
from
/wrkdirs/usr/ports/devel/cmake/work/cmake-3.18.1/Source/cmSystemTools.cxx:13:
/usr/local/lib/gcc9/include/c++/ctime:80:11: error: '::timespec_get' has not
been declared
80 | using ::timespec_get;
| ^~~~~~~~~~~~
PR: 248726
devel/cmake: update to 3.18.1
- update to 3.18.1
- new port devel/cmakedoc
Thanks to adridg@ for tackling most of the fallout.
PR: 248003
Exp-run by: antoine
Update devel/cmake to latest upstream release, 3.16.2
This new release has support for the latest Boost, Objective-C
and various small improvements. The release notes are at:
https://cmake.org/cmake/help/v3.16/release/3.16.html
Two ports could not be persuaded to build with this new release
(math/openmesh science/fleur) and are marked BROKEN. Other build
fixes have already been done in-tree.
Thanks antoine@ for the exp-runs (multiple).
Thanks tcberner@ for prep-work (most of the work, actually).
PR: 242254
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
Update CMake to latest release, 3.14.1
Changelog: https://cmake.org/cmake/help/v3.14/release/3.14.html
Local patches: fixes for Boost, Python, and OpenMP
Affected ports:
- opencpn, hugin needed help in finding wx
- kadu is over-enthusiastic in finding non-existent X11 components
- xlife++ does weird things in parsing help output from cmake
Thanks antoine@ for multiple exp-runs.
Thanks tcberner@ for much prep-work.
PR: 236534223678227428
Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
Install texinfo files (GNU info) into ${PREFIX}/share/info
After a discussion on the mailing list on moving manpages to
${PREFIX}/share/man for consistency with base where it is
installed in usr/share/man, it appeared the same should happen
to GNU info files which were installed under share in base and
not in ports.
Now texinfo is not in base on any of the supported version of FreeBSD
it is possible to proceed to this move and it is easier to do than
the manpage change.
Other benefit than consistency are less patching: all build tools but
cmake are expecting info files to be under share/info and cmake (patched here)
was having an exception for BSD so the patch makes FreeBSD case less
specific for them
Bump revision of all impacted ports
PR: 232907
exp-run by: antoine
Differential Revision: https://reviews.freebsd.org/D17816
Update devel/cmake to 3.12.1
This is a minor incremental update. The patches for TCL 8.7 support
are no longer needed, because upstream has added that support.
Thanks Antoine for the exp-run.
PR: 230488
Submitted by: tcberner
Bump PORTREVISION for ports depending on the canonical version of GCC
in the ports tree (via Mk/bsd.default-versions.mk and lang/gcc) which
has now moved from GCC 6 to GCC 7 by default.
This includes ports
- featuring USE_GCC=yes or USE_GCC=any,
- featuring USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and those
- with USES=compiler specifying one of openmp, nestedfct, c11, c++0x,
c++11-lib, c++11-lang, c++14-lang, c++17-lang, or gcc-c++11-lib.
PR: 222542
CMake: add TCL/Tk 8.7 as supported versions
Since TCL/Tk 8.7 release hits the ports and allowed to be default versions,
teach CMake modules to find its right way
Submitted by: fluffy
Reviewed by: tcberner
Differential Revision: D16320
Add a patch to unbreak `make configure' with libuv 1.21.0.
r473142 updated libuv and broke CMake. The new release moved internal headers
to the uv/ directory, and CMake needs to be taught about it.
Not bumping PORTREVISION as FindLibUV.cmake is not installed and no builds with
the new libuv could have worked before.
PR: 229255
ntroduce OPTION for devel/cmake to generate packages
The generator causes segfaults because it doesn't call pkg_init()
(see https://gitlab.kitware.com/cmake/cmake/issues/18031).
This feature was briefly enabled by default for 3.11.0, between
r467437 (added) and r467620 (removed), but causes problems with
stage-qa (PR 227372). Hide it behind an OPTION for people who want
it and don't worry about stage-qa.
The patch to CPack source will be submitted upstream once some
corner cases are ironed out.
Reported by: upstream
Approved by: tcberner
Differential Revision: https://reviews.freebsd.org/D15900
Fix stage-qa problems with devel/cmake
Linking to base libarchive is disallowed by stage-qa, so restore
USES=libarchive (to avoid the bundled libarchive and to link to
ports libarchive) and drop the pkg(8) generator for CPack, since
libpkg in turn pulls in base libarchive.
PR: 227372
Approved by: tcberner (mentor, implicit)
Update CMake to 3.11.0. Thanks to antoine@ for the exp-run.
In the run-up to this commit, many other ports were pre-emptively fixed.
The only issue still known is math/kig, which had a build failure in
the exp-run, but which isn't reproducible across multiple 11.1 {i386,amd64}
machines and poudriere builds. We've decided to forge ahead.
The new CMake version:
- drops FreeBSD patches that have been incorporated upstream,
- re-shuffles patches to FindQt4, since upstream has made some changes
which break FindQt4 in new ways on FreeBSD (while fixing the old ones),
- has new patches to make OpenMP and BLAS findable on FreeBSD,
- drops ports libarchive in favor of the version in base, to avoid
overlinking for the pkg(8) support in CPack (this makes portlint
complain, and we have decided to ignore it).
PR: 227372226959223678
Approved by: tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D14506
Update CMake to 3.10.1
- https://blog.kitware.com/cmake-3-10-1-available-for-download/
- flang support
- changes to automoc policies
- support for FreeBSD package generation with CPack
Necessary fixes to other ports:
- cad/openvsp make search for libxml explicit
- math/scalapack force C compiler to be compatible with mpi
- deskutils/kdepim4 fix incorrect sources list
- www/qt5-webkit fix incorrect sources list
Thanks to Antoine for the multiple exp-runs.
PR: 223872
Approved by: tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D13210
Update the cmake family to 3.9.6 (skip 3.9.5, the upstream
releases are coming quick and fast). Upstream changes are
- AUTOMOC options fixes (3.9.5)
- gcc_eh linking (3.9.6)
Thanks antoine@ for the exp-runs.
PR: 223436
Approved by: tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D12958
Update CMake to 3.9.4.
Update CMake to latest upstream release. This is a minor bug-fix release --
the changelog suggests mostly polishing applied to the FindBoost module.
Thanks to antoine@ for the exp-run.
PR: 222878
Approved by: rakuco (mentor)
Differential Revision: https://reviews.freebsd.org/D12604
Update CMake to 3.9.3
This includes the upstream patches for the new Boost version (PR 222207,
r450301).
Thanks to antoine@ for the exp-run.
PR: 222513
Approved by: rakuco (mentor), tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D12427