From 19b60f6341c1340c532b32ab42000f8ef533e37c Mon Sep 17 00:00:00 2001 From: tcberner Date: Sun, 25 Jun 2017 21:07:58 +0000 Subject: Make ninja opt-out in cmake.mk Using ninja instead of make (1) can lead to significant speed ups while building. Therefore switch from having the ninja generator opt-in to having it opt-out. Previously cmake-ports that wanted to use ninja could set CMAKE_NINJA=yes now, ports that do not work with ninja can set cmake:,noninja Note, that needing this should be an exception and most often points to a broken cmake of the port. The ports using cmake were modified * removed USES=gmake, if ninja is used * removed MAKE_ARGS, if ninja is used * added the cmake-argument noninja if necessary PR: 219629 PR: 213331 Exp-run by: antoine Reviewed by: rakuco Differential Revision: https://reviews.freebsd.org/D10748 --- graphics/aseprite/Makefile | 2 +- graphics/darktable/Makefile | 2 +- graphics/digikam-kde4/Makefile.common | 2 +- graphics/ilmbase/files/patch-git_8eed7012 | 59 +++++++++++++++++++++++++++++++ graphics/inkscape/Makefile | 2 +- graphics/luxrender/Makefile | 2 +- graphics/mitsuba/Makefile | 1 - graphics/opensubdiv/Makefile | 2 +- graphics/osg-devel/Makefile | 6 ---- graphics/osgearth/Makefile | 2 +- graphics/rawtherapee/Makefile | 1 - graphics/tulip/Makefile | 2 +- graphics/waffle/Makefile | 2 +- graphics/xcftools/Makefile | 2 +- 14 files changed, 69 insertions(+), 18 deletions(-) create mode 100644 graphics/ilmbase/files/patch-git_8eed7012 (limited to 'graphics') diff --git a/graphics/aseprite/Makefile b/graphics/aseprite/Makefile index b7ddd01495de..1f3db8dff0bf 100644 --- a/graphics/aseprite/Makefile +++ b/graphics/aseprite/Makefile @@ -45,7 +45,7 @@ GH_TUPLE+= aseprite:laf:e6d79aa:laf/laf GH_TUPLE+= aseprite:stringencoders:f963507:stringencoders/laf/third_party/stringencoders GH_TUPLE+= dacap:observable:27fa7f6:observable/src/observable -USES= cmake:outsource compiler:c++11-lib jpeg ninja pkgconfig +USES= cmake:outsource compiler:c++11-lib jpeg pkgconfig USE_XORG= x11 xcursor xext xpm ice pixman sm xxf86dga xxf86vm USE_LDCONFIG= yes diff --git a/graphics/darktable/Makefile b/graphics/darktable/Makefile index 0578333f8cac..b859b56a6dac 100644 --- a/graphics/darktable/Makefile +++ b/graphics/darktable/Makefile @@ -27,7 +27,7 @@ ONLY_FOR_ARCHS= amd64 arm64 ONLY_FOR_ARCHS_REASON= uses SSE instructions and 64-bit address space USES= cmake:outsource compiler:c++11-lib desktop-file-utils \ - jpeg ninja pkgconfig sqlite tar:xz + jpeg pkgconfig sqlite tar:xz USE_GL= glu USE_GNOME= cairo gtk30 intltool librsvg2 libxml2 USE_XORG= ice sm x11 xext xrandr diff --git a/graphics/digikam-kde4/Makefile.common b/graphics/digikam-kde4/Makefile.common index a2b2d0d40136..555ae6d685ca 100644 --- a/graphics/digikam-kde4/Makefile.common +++ b/graphics/digikam-kde4/Makefile.common @@ -118,7 +118,7 @@ LICENSE?= GPLv2 USES+= tar:bzip2 .if !defined(NO_BUILD) -USES+= cmake kde:4 +USES+= cmake:noninja kde:4 USE_KDE+= automoc4 kdelibs USE_QT4+= qmake_build moc_build rcc_build uic_build diff --git a/graphics/ilmbase/files/patch-git_8eed7012 b/graphics/ilmbase/files/patch-git_8eed7012 new file mode 100644 index 000000000000..dbbcd85ec4a0 --- /dev/null +++ b/graphics/ilmbase/files/patch-git_8eed7012 @@ -0,0 +1,59 @@ +From 8eed7012c10f1a835385d750fd55f228d1d35df9 Mon Sep 17 00:00:00 2001 +From: Ralph Potter +Date: Wed, 5 Nov 2014 16:16:55 +0000 +Subject: [PATCH] Resolve dependency issue building eLut.h/toFloat.h with + CMake/Ninja. + +--- + IlmBase/Half/CMakeLists.txt | 23 +++++++++++------------ + 1 file changed, 11 insertions(+), 12 deletions(-) + +diff --git a/IlmBase/Half/CMakeLists.txt b/IlmBase/Half/CMakeLists.txt +index 6f9714d..958d1b0 100644 +--- Half/CMakeLists.txt ++++ Half/CMakeLists.txt +@@ -1,23 +1,24 @@ + # yue.nicholas@gmail.com + + ADD_EXECUTABLE ( eLut eLut.cpp ) +- +-ADD_CUSTOM_COMMAND ( +- TARGET eLut POST_BUILD +- COMMAND eLut > ${CMAKE_CURRENT_BINARY_DIR}/eLut.h ++ADD_CUSTOM_COMMAND( ++ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/eLut.h ++ COMMAND eLut ARGS > ${CMAKE_CURRENT_BINARY_DIR}/eLut.h ++ DEPENDS eLut + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} +-) ++ ) + SET_SOURCE_FILES_PROPERTIES( + ${CMAKE_CURRENT_BINARY_DIR}/eLut.h + PROPERTIES HEADER_FILE_ONLY TRUE + ) + + ADD_EXECUTABLE ( toFloat toFloat.cpp ) +-ADD_CUSTOM_COMMAND ( +- TARGET toFloat POST_BUILD +- COMMAND toFloat > ${CMAKE_CURRENT_BINARY_DIR}/toFloat.h ++ADD_CUSTOM_COMMAND( ++ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/toFloat.h ++ COMMAND toFloat ARGS > ${CMAKE_CURRENT_BINARY_DIR}/toFloat.h ++ DEPENDS toFloat + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} +-) ++ ) + SET_SOURCE_FILES_PROPERTIES( + ${CMAKE_CURRENT_BINARY_DIR}/toFloat.h + PROPERTIES HEADER_FILE_ONLY TRUE +@@ -27,9 +28,7 @@ SET_SOURCE_FILES_PROPERTIES( + half.cpp + PROPERTIES + OBJECT_DEPENDS +- ${CMAKE_CURRENT_BINARY_DIR}/eLut.h +- OBJECT_DEPENDS +- ${CMAKE_CURRENT_BINARY_DIR}/toFloat.h ++ "${CMAKE_CURRENT_BINARY_DIR}/eLut.h;${CMAKE_CURRENT_BINARY_DIR}/toFloat.h" + ) + + IF(BUILD_SHARED_LIBS) diff --git a/graphics/inkscape/Makefile b/graphics/inkscape/Makefile index c1d3d6d78184..fed7ea051457 100644 --- a/graphics/inkscape/Makefile +++ b/graphics/inkscape/Makefile @@ -32,7 +32,7 @@ LIB_DEPENDS= libpopt.so:devel/popt \ USE_GNOME= gtkmm24 libxml2 libxslt USES= compiler:c++11-lib cmake cpe desktop-file-utils gnome \ - iconv:wchar_t ninja jpeg pathfix pkgconfig python:2,build \ + iconv:wchar_t jpeg pathfix pkgconfig python:2,build \ shebangfix tar:bzip2 USE_XORG= x11 INSTALLS_ICONS= yes diff --git a/graphics/luxrender/Makefile b/graphics/luxrender/Makefile index dcb86e4a5e62..84e0967d4e6a 100644 --- a/graphics/luxrender/Makefile +++ b/graphics/luxrender/Makefile @@ -28,7 +28,7 @@ CONFLICTS_INSTALL?= ${PORTNAME}14-1.4* ONLY_FOR_ARCHS= i386 amd64 ONLY_FOR_ARCHS_REASON= uses SSE instructions -USES+= bison cmake python:build tar:bzip2 +USES+= bison cmake:noninja python:build tar:bzip2 USE_GL= glu WRKSRC= ${WRKDIR}/${PORTNAME}-lux-${LUX_REV} diff --git a/graphics/mitsuba/Makefile b/graphics/mitsuba/Makefile index 8a5cda9c39ae..ed7504dc529c 100644 --- a/graphics/mitsuba/Makefile +++ b/graphics/mitsuba/Makefile @@ -48,7 +48,6 @@ post-patch: post-install: # XXX: palliative; better fix installation routine not to pollute ${STAGEDIR} - @${RMDIR} ${STAGEDIR}${PREFIX}/share/mitsuba/data/ior/CMakeFiles/ior_database.dir @${RMDIR} ${STAGEDIR}${PREFIX}/share/mitsuba/data/ior/CMakeFiles .include diff --git a/graphics/opensubdiv/Makefile b/graphics/opensubdiv/Makefile index c959e3033f91..ea55b0a4e934 100644 --- a/graphics/opensubdiv/Makefile +++ b/graphics/opensubdiv/Makefile @@ -20,7 +20,7 @@ GH_PROJECT= OpenSubdiv USE_LDCONFIG= yes USE_GL= glew -USES= cmake:outsource compiler pkgconfig +USES= cmake:outsource,noninja compiler pkgconfig USE_XORG= x11 xi xcursor xrandr xxf86vm xinerama CMAKE_ARGS+= -DNO_TUTORIALS:BOOL=ON -DNO_EXAMPLES:BOOL=ON \ diff --git a/graphics/osg-devel/Makefile b/graphics/osg-devel/Makefile index b0c277f06a64..e35ee3f3e9c9 100644 --- a/graphics/osg-devel/Makefile +++ b/graphics/osg-devel/Makefile @@ -132,12 +132,6 @@ FORCE_REQUIRE= Threads OpenGL X11 JPEG PNG TIFF ZLIB # common & lightweight .include -.if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1000000 && ${OSVERSION} < 1100000 -# workaround for make (?) problem leading to cflags -# lost in osgjs -USES+= gmake -.endif - .if ${PORT_OPTIONS:MQT4} || ${PORT_OPTIONS:MQT5} CMAKE_ARGS+= -DOSG_USE_QT:BOOL=ON PLIST_SUB+= QT="" diff --git a/graphics/osgearth/Makefile b/graphics/osgearth/Makefile index 71115d9bf232..3ca5f74836f6 100644 --- a/graphics/osgearth/Makefile +++ b/graphics/osgearth/Makefile @@ -21,7 +21,7 @@ USE_GITHUB= yes GH_ACCOUNT= gwaldron USE_LDCONFIG= yes -USES= cmake gmake pkgconfig sqlite +USES= cmake pkgconfig sqlite PLIST_SUB= OSGVERSION=3.4.0 CMAKE_ARGS+= -DCMAKE_INCLUDE_PATH:PATH=${LOCALBASE}/include \ diff --git a/graphics/rawtherapee/Makefile b/graphics/rawtherapee/Makefile index 9af1e786581b..4cdcd0227e4f 100644 --- a/graphics/rawtherapee/Makefile +++ b/graphics/rawtherapee/Makefile @@ -48,7 +48,6 @@ CMAKE_ARGS+= -DDOCDIR="${DOCSDIR}" \ # any more. The CMP0056 policy must be explicitly set to NEW to ensure # linker flags are passed. Else -lomp is not found with clang. # See: https://cmake.org/cmake/help/v3.4/policy/CMP0056.html -CMAKE_NINJA= yes INSTALLS_ICONS= yes diff --git a/graphics/tulip/Makefile b/graphics/tulip/Makefile index 42c879d9f57c..842af168689e 100644 --- a/graphics/tulip/Makefile +++ b/graphics/tulip/Makefile @@ -22,7 +22,7 @@ BROKEN_powerpc64= fails to link: libOGDF.so: undefined reference to CoinPackedVe WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION} -USES= cmake:outsource compiler:c++11-lib dos2unix execinfo jpeg python \ +USES= cmake:outsource,noninja compiler:c++11-lib dos2unix execinfo jpeg python \ shebangfix SHEBANG_FILES= tulip-config.in DOS2UNIX_FILES= software/tulip/src/main.cpp diff --git a/graphics/waffle/Makefile b/graphics/waffle/Makefile index 5f1890ca75c9..53faa759d2e5 100644 --- a/graphics/waffle/Makefile +++ b/graphics/waffle/Makefile @@ -12,7 +12,7 @@ COMMENT= Library that allows to defer selection of an OpenGL API until runtime LICENSE= BSD2CLAUSE -USES= cmake:outsource compiler:c11 localbase ninja pathfix pkgconfig tar:xz +USES= cmake:outsource compiler:c11 localbase pathfix pkgconfig tar:xz USE_GL= egl gl USE_LDCONFIG= yes USE_XORG= x11 xcb diff --git a/graphics/xcftools/Makefile b/graphics/xcftools/Makefile index 4ff156aba260..3ecc6fda755c 100644 --- a/graphics/xcftools/Makefile +++ b/graphics/xcftools/Makefile @@ -18,7 +18,7 @@ GH_ACCOUNT= j-jorge GH_TAGNAME= d72ba82 # option NLS (for gettext) is wrong as this port allways needs NLS: -USES= libtool cmake gmake iconv pkgconfig perl5 gettext +USES= libtool cmake:noninja gmake iconv pkgconfig perl5 gettext USE_PERL5= build run GNU_CONFIGURE= yes USE_LDCONFIG= yes -- cgit