diff --git a/.gitignore b/.gitignore index 225731e..6354a6e 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,4 @@ /cmake-2.8.12.tar.gz /cmake-2.8.12.1.tar.gz /cmake-2.8.12.2.tar.gz +/cmake-3.0.0-rc1.tar.gz diff --git a/cmake-FindFreetype.patch b/cmake-FindFreetype.patch deleted file mode 100644 index 1de0dff..0000000 --- a/cmake-FindFreetype.patch +++ /dev/null @@ -1,43 +0,0 @@ -From: Julian Ospald -Date: Sun Dec 8 13:38:06 UTC 2013 -Subject: fix check for freetype-2.5.1 - ---- cmake/Modules/FindFreetype.cmake -+++ cmake/Modules/FindFreetype.cmake -@@ -64,6 +64,19 @@ - PATH_SUFFIXES include/freetype2 include - ) - -+if(NOT FREETYPE_INCLUDE_DIR_freetype2) -+ find_path(FREETYPE_INCLUDE_DIR_freetype2 config/ftheader.h -+ HINTS -+ ENV FREETYPE_DIR -+ PATHS -+ /usr/X11R6 -+ /usr/local/X11R6 -+ /usr/local/X11 -+ /usr/freeware -+ PATH_SUFFIXES include/freetype2 include -+ ) -+endif() -+ - find_library(FREETYPE_LIBRARY - NAMES freetype libfreetype freetype219 - HINTS -@@ -82,8 +95,14 @@ - endif() - set(FREETYPE_LIBRARIES "${FREETYPE_LIBRARY}") - --if(FREETYPE_INCLUDE_DIR_freetype2 AND EXISTS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h") -- file(STRINGS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h" freetype_version_str -+if(EXISTS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h") -+ set(FREETYPE_H "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h") -+elseif(EXISTS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype.h") -+ set(FREETYPE_H "${FREETYPE_INCLUDE_DIR_freetype2}/freetype.h") -+endif() -+ -+if(FREETYPE_INCLUDE_DIR_freetype2 AND FREETYPE_H) -+ file(STRINGS "${FREETYPE_H}" freetype_version_str - REGEX "^#[\t ]*define[\t ]+FREETYPE_(MAJOR|MINOR|PATCH)[\t ]+[0-9]+$") - - unset(FREETYPE_VERSION_STRING) diff --git a/cmake-boostmpi.patch b/cmake-boostmpi.patch deleted file mode 100644 index 817d314..0000000 --- a/cmake-boostmpi.patch +++ /dev/null @@ -1,67 +0,0 @@ -commit a22eeca3fd7fe022e06001428d5e903913467fa0 -Author: Brad King -Date: Fri Feb 7 16:45:10 2014 -0500 - - FindBoost: Search next to MPI libraries for boost_mpi (#14739) - - Some distributions place boost_mpi next to the MPI libraries against - which it was built instead of next to the other Boost libraries. If - find_package(MPI) has already been run prior to find_package(Boost) then - MPI_CXX_LIBRARIES or MPI_C_LIBRARIES may be set to the location of the - MPI libraries. Teach FindBoost.cmake to look there for boost_mpi and - boost_mpi_python after looking next to the other Boost libraries but - not consider the location to be Boost_LIBRARY_DIR. - -diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake -index ae8baab..945694d 100644 ---- a/Modules/FindBoost.cmake -+++ b/Modules/FindBoost.cmake -@@ -305,10 +305,15 @@ endmacro() - macro(_Boost_FIND_LIBRARY var) - find_library(${var} ${ARGN}) - -- # If we found the first library save Boost_LIBRARY_DIR. -- if(${var} AND NOT Boost_LIBRARY_DIR) -- get_filename_component(_dir "${${var}}" PATH) -- set(Boost_LIBRARY_DIR "${_dir}" CACHE PATH "Boost library directory" FORCE) -+ if(${var}) -+ # If this is the first library found then save Boost_LIBRARY_DIR. -+ if(NOT Boost_LIBRARY_DIR) -+ get_filename_component(_dir "${${var}}" PATH) -+ set(Boost_LIBRARY_DIR "${_dir}" CACHE PATH "Boost library directory" FORCE) -+ endif() -+ elseif(_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT) -+ # Try component-specific hints but do not save Boost_LIBRARY_DIR. -+ find_library(${var} HINTS ${_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT} ${ARGN}) - endif() - - # If Boost_LIBRARY_DIR is known then search only there. -@@ -935,6 +940,28 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS}) - set( _boost_docstring_release "Boost ${COMPONENT} library (release)") - set( _boost_docstring_debug "Boost ${COMPONENT} library (debug)") - -+ # Compute component-specific hints. -+ set(_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT "") -+ if(${COMPONENT} STREQUAL "mpi" OR ${COMPONENT} STREQUAL "mpi_python") -+ foreach(lib ${MPI_CXX_LIBRARIES} ${MPI_C_LIBRARIES}) -+ if(IS_ABSOLUTE "${lib}") -+ get_filename_component(libdir "${lib}" PATH) -+ string(REPLACE "\\" "/" libdir "${libdir}") -+ list(APPEND _Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT ${libdir}) -+ endif() -+ endforeach() -+ endif() -+ -+ # Consolidate and report component-specific hints. -+ if(_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT) -+ list(REMOVE_DUPLICATES _Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT) -+ if(Boost_DEBUG) -+ message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] " -+ "Component-specific library search paths for ${COMPONENT}: " -+ "${_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT}") -+ endif() -+ endif() -+ - # - # Find RELEASE libraries - # diff --git a/cmake-qtdeps.patch b/cmake-qtdeps.patch index a22eb0d..7bee2f4 100644 --- a/cmake-qtdeps.patch +++ b/cmake-qtdeps.patch @@ -1,54 +1,25 @@ -diff -up cmake-2.8.12/Modules/UseQt4.cmake.qtdeps cmake-2.8.12/Modules/UseQt4.cmake ---- cmake-2.8.12/Modules/UseQt4.cmake.qtdeps 2013-10-07 09:31:00.000000000 -0600 -+++ cmake-2.8.12/Modules/UseQt4.cmake 2013-10-23 10:39:14.763568925 -0600 -@@ -56,39 +56,13 @@ if (QT_USE_QT3SUPPORT) - add_definitions(-DQT3_SUPPORT) - endif () - --# list dependent modules, so dependent libraries are added --set(QT_QT3SUPPORT_MODULE_DEPENDS QTGUI QTSQL QTXML QTNETWORK QTCORE) --set(QT_QTSVG_MODULE_DEPENDS QTGUI QTXML QTCORE) --set(QT_QTUITOOLS_MODULE_DEPENDS QTGUI QTXML QTCORE) --set(QT_QTHELP_MODULE_DEPENDS QTGUI QTSQL QTXML QTNETWORK QTCORE) --if(QT_QTDBUS_FOUND) -- set(QT_PHONON_MODULE_DEPENDS QTGUI QTDBUS QTCORE) --else() -- set(QT_PHONON_MODULE_DEPENDS QTGUI QTCORE) --endif() --set(QT_QTDBUS_MODULE_DEPENDS QTXML QTCORE) --set(QT_QTXMLPATTERNS_MODULE_DEPENDS QTNETWORK QTCORE) --set(QT_QAXCONTAINER_MODULE_DEPENDS QTGUI QTCORE) --set(QT_QAXSERVER_MODULE_DEPENDS QTGUI QTCORE) --set(QT_QTSCRIPTTOOLS_MODULE_DEPENDS QTGUI QTCORE) --set(QT_QTWEBKIT_MODULE_DEPENDS QTXMLPATTERNS QTGUI QTCORE) --set(QT_QTDECLARATIVE_MODULE_DEPENDS QTSCRIPT QTSVG QTSQL QTXMLPATTERNS QTGUI QTCORE) --set(QT_QTMULTIMEDIA_MODULE_DEPENDS QTGUI QTCORE) --set(QT_QTOPENGL_MODULE_DEPENDS QTGUI QTCORE) --set(QT_QTSCRIPT_MODULE_DEPENDS QTCORE) --set(QT_QTGUI_MODULE_DEPENDS QTCORE) --set(QT_QTTEST_MODULE_DEPENDS QTCORE) --set(QT_QTXML_MODULE_DEPENDS QTCORE) --set(QT_QTSQL_MODULE_DEPENDS QTCORE) --set(QT_QTNETWORK_MODULE_DEPENDS QTCORE) -- - # Qt modules (in order of dependence) - foreach(module QT3SUPPORT QTOPENGL QTASSISTANT QTDESIGNER QTMOTIF QTNSPLUGIN - QAXSERVER QAXCONTAINER QTDECLARATIVE QTSCRIPT QTSVG QTUITOOLS QTHELP - QTWEBKIT PHONON QTSCRIPTTOOLS QTMULTIMEDIA QTXMLPATTERNS QTGUI QTTEST - QTDBUS QTXML QTSQL QTNETWORK QTCORE) - -- if (QT_USE_${module} OR QT_USE_${module}_DEPENDS) -+ if (QT_USE_${module}) - if (QT_${module}_FOUND) - if(QT_USE_${module}) - string(REPLACE "QT" "" qt_module_def "${module}") -@@ -104,9 +78,6 @@ foreach(module QT3SUPPORT QTOPENGL QTASS +commit b94ecab6d6540512df5e7c11deb9d168566d346f +Author: Clinton Stimpson +Date: Wed Feb 26 10:53:53 2014 -0700 + + FindQt4: prevent overlinking when using UseQt4.cmake. + + Now it only links with the Qt libraries specified by the user, + instead of automatically including all dependencies. + Fixes #14750 and thanks to Orion Poplawski. + +diff --git a/Modules/UseQt4.cmake b/Modules/UseQt4.cmake +index 7478310..cba22af 100644 +--- a/Modules/UseQt4.cmake ++++ b/Modules/UseQt4.cmake +@@ -98,7 +98,9 @@ foreach(module QT3SUPPORT QTOPENGL QTASSISTANT QTDESIGNER QTMOTIF QTNSPLUGIN + include_directories(SYSTEM ${QT_${module}_INCLUDE_DIR}) + endif(QT_INCLUDE_DIRS_NO_SYSTEM) + endif() +- set(QT_LIBRARIES ${QT_LIBRARIES} ${QT_${module}_LIBRARY}) ++ if(QT_USE_${module} OR QT_IS_STATIC) ++ set(QT_LIBRARIES ${QT_LIBRARIES} ${QT_${module}_LIBRARY}) ++ endif() + set(QT_LIBRARIES_PLUGINS ${QT_LIBRARIES_PLUGINS} ${QT_${module}_PLUGINS}) if(QT_IS_STATIC) set(QT_LIBRARIES ${QT_LIBRARIES} ${QT_${module}_LIB_DEPENDENCIES}) - endif() -- foreach(depend_module ${QT_${module}_MODULE_DEPENDS}) -- set(QT_USE_${depend_module}_DEPENDS 1) -- endforeach() - else () - message("Qt ${module} library not found.") - endif () diff --git a/cmake.spec b/cmake.spec index a30f542..ce0264a 100644 --- a/cmake.spec +++ b/cmake.spec @@ -4,7 +4,7 @@ # Set to bcond_with or use --without gui to disable qt4 gui build %bcond_without gui # Set to RC version if building RC, else %{nil} -%define rcver %{nil} +%define rcver -rc1 %define rpm_macros_dir %{_sysconfdir}/rpm %if 0%{?fedora} > 18 @@ -12,8 +12,8 @@ %endif Name: cmake -Version: 2.8.12.2 -Release: 2%{?dist} +Version: 3.0.0 +Release: 0.1.rc1%{?dist} Summary: Cross-platform make system Group: Development/Tools @@ -23,7 +23,7 @@ Group: Development/Tools # some GPL-licensed bison-generated files, these all include an exception granting redistribution under terms of your choice License: BSD and MIT and zlib URL: http://www.cmake.org -Source0: http://www.cmake.org/files/v2.8/cmake-%{version}%{?rcver}.tar.gz +Source0: http://www.cmake.org/files/v3.0/cmake-%{version}%{?rcver}.tar.gz Source1: cmake-init.el Source2: macros.cmake # Patch to find DCMTK in Fedora (bug #720140) @@ -44,7 +44,7 @@ Patch3: cmake-FindPostgreSQL.patch # https://bugzilla.redhat.com/show_bug.cgi?id=876118 Patch4: cmake-FindPythonLibs.patch # Add FindLua52.cmake -Patch5: cmake-2.8.11-rc4-lua-5.2.patch +Patch5: cmake-2.8.11-rc4-lua-5.2.patch # Add -fno-strict-aliasing when compiling cm_sha2.c # http://www.cmake.org/Bug/view.php?id=14314 Patch6: cmake-strict_aliasing.patch @@ -52,14 +52,8 @@ Patch6: cmake-strict_aliasing.patch # http://www.cmake.org/Bug/view.php?id=14315 Patch7: cmake-desktop_icon.patch # Remove automatic Qt module dep adding +# http://public.kitware.com/Bug/view.php?id=14750 Patch8: cmake-qtdeps.patch -# Fix FindFreetype for 2.5.1+ -# http://public.kitware.com/Bug/view.php?id=14601 -Patch9: cmake-FindFreetype.patch -# Upstream patch to find Boost MPI library -# http://www.cmake.org/Bug/view.php?id=14739 -# https://bugzilla.redhat.com/show_bug.cgi?id=756141 -Patch10: cmake-boostmpi.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -128,8 +122,6 @@ The %{name}-gui package contains the Qt based GUI for CMake. %patch6 -p1 %patch7 -p1 %patch8 -p1 -%patch9 -p1 -%patch10 -p1 # Setup copyright docs for main package mkdir _doc find Source Utilities -type f -iname copy\* | while read f @@ -150,6 +142,7 @@ pushd build --docdir=/share/doc/%{name} --mandir=/share/man \ --%{?with_bootstrap:no-}system-libs \ --parallel=`/usr/bin/getconf _NPROCESSORS_ONLN` \ + --sphinx-man \ %{?qt_gui} make VERBOSE=1 %{?_smp_mflags} @@ -159,9 +152,12 @@ pushd build make install DESTDIR=%{buildroot} find %{buildroot}/%{_datadir}/%{name}/Modules -type f | xargs chmod -x popd -cp -a Example %{buildroot}%{_docdir}/%{name}/ +# Install bash completions properly +mkdir -p %{buildroot}%{_datadir}/bash-completion/ +mv %{buildroot}%{_datadir}/%{name}/completions %{buildroot}%{_datadir}/bash-completion/ +# Install emacs cmake mode mkdir -p %{buildroot}%{_emacs_sitelispdir}/%{name} -install -p -m 0644 Docs/cmake-mode.el %{buildroot}%{_emacs_sitelispdir}/%{name} +install -p -m 0644 Auxiliary/cmake-mode.el %{buildroot}%{_emacs_sitelispdir}/%{name}/ %{_emacs_bytecompile} %{buildroot}%{_emacs_sitelispdir}/%{name}/cmake-mode.el mkdir -p %{buildroot}%{_emacs_sitestartdir} install -p -m 0644 %SOURCE1 %{buildroot}%{_emacs_sitestartdir}/ @@ -211,17 +207,13 @@ update-mime-database %{_datadir}/mime &> /dev/null || : %{_bindir}/cpack %{_bindir}/ctest %{_datadir}/aclocal/cmake.m4 +%{_datadir}/bash-completion/ %{_datadir}/%{name}/ %{_mandir}/man1/ccmake.1.gz %{_mandir}/man1/cmake.1.gz -%{_mandir}/man1/cmakecommands.1.gz -%{_mandir}/man1/cmakecompat.1.gz -%{_mandir}/man1/cmakemodules.1.gz -%{_mandir}/man1/cmakepolicies.1.gz -%{_mandir}/man1/cmakeprops.1.gz -%{_mandir}/man1/cmakevars.1.gz %{_mandir}/man1/cpack.1.gz %{_mandir}/man1/ctest.1.gz +%{_mandir}/man7/*.7.gz %{_emacs_sitelispdir}/%{name} %{_emacs_sitestartdir}/%{name}-init.el %{_libdir}/%{name}/ @@ -231,7 +223,6 @@ update-mime-database %{_datadir}/mime &> /dev/null || : %if %{with gui} %files gui -%{_docdir}/%{name}/cmake-gui.* %{_bindir}/cmake-gui %{_datadir}/applications/CMake.desktop %{_datadir}/mime/packages/cmakecache.xml @@ -241,6 +232,11 @@ update-mime-database %{_datadir}/mime &> /dev/null || : %changelog +* Fri Feb 28 2014 Orion Poplawski - 3.0.0-0.1.rc1 +- Update to 3.0.0-rc1 +- Update qtdeps patch to upstreamed version +- Install bash completions + * Tue Feb 11 2014 Orion Poplawski - 2.8.12.2-2 - Add upstream patch to find Boost MPI library (bug #756141) diff --git a/sources b/sources index 42774ab..542414b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -17c6513483d23590cbce6957ec6d1e66 cmake-2.8.12.2.tar.gz +3f6e729a52e15cc3b1d58e2d1195c421 cmake-3.0.0-rc1.tar.gz