summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbiao716.wang <biao716.wang@samsung.com>2020-03-22 17:11:48 +0900
committerbiao716.wang <biao716.wang@samsung.com>2020-03-22 17:11:48 +0900
commit223cf873796719e548b97dfb522a89ba7b058434 (patch)
tree41087133fab1434c0964b64df37ed6dc09262b56
parent22838cb0059ea5d57f55774a3b7f074aa6883d56 (diff)
downloadcmake-223cf873796719e548b97dfb522a89ba7b058434.tar.gz
cmake-223cf873796719e548b97dfb522a89ba7b058434.tar.bz2
cmake-223cf873796719e548b97dfb522a89ba7b058434.zip
change back to use orignal macros.cmake
Change-Id: Ic2d290f7f6d2b65070b6e37adb908994453e3d96 Signed-off-by: biao716.wang <biao716.wang@samsung.com>
-rw-r--r--packaging/cmake.spec25
-rw-r--r--packaging/macros.cmake62
-rw-r--r--packaging/macros.cmake_316465
3 files changed, 100 insertions, 52 deletions
diff --git a/packaging/cmake.spec b/packaging/cmake.spec
index 32b0ac04d..662275de8 100644
--- a/packaging/cmake.spec
+++ b/packaging/cmake.spec
@@ -9,14 +9,16 @@ Source0: http://www.cmake.org/files/v3.16/cmake-%{version}.tar.gz
Source1: macros.cmake
Source2: TizenCommon.cmake
Source1001: cmake.manifest
+Source3: cmake.attr
+Source4: cmake.prov
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: pkgconfig
+BuildRequires: ncurses-devel
BuildRequires: pkgconfig(expat)
BuildRequires: pkgconfig(bzip2)
BuildRequires: pkgconfig(openssl1.1)
-BuildRequires: pkgconfig(ncurses)
BuildRequires: pkgconfig(liblzma)
BuildRequires: pkgconfig(libarchive) >= 3.3.3
BuildRequires: pkgconfig(zlib)
@@ -64,7 +66,24 @@ cp %{SOURCE2} %{buildroot}%{_datadir}/%{name}/Modules
# Install cmake rpm macros
install -D -p -m 0644 %{S:1} \
%{buildroot}%{_sysconfdir}/rpm/macros.cmake
+# RPM auto provides
+install -p -m0644 -D %{SOURCE3} %{buildroot}%{_libexecdir}/rpm/fileattrs/cmake.attr
+install -p -m0755 -D %{SOURCE4} %{buildroot}%{_libexecdir}/rpm/cmake.prov
+
+# Install bash completion symlinks
+mkdir -p %{buildroot}%{_datadir}/bash-completion/completions
+for f in %{buildroot}%{_datadir}/cmake/completions/*
+do
+ ln -s ../../cmake/completions/$(basename $f) %{buildroot}%{_datadir}/bash-completion/completions
+done
+
+# cmake-mode.el
+%define cmake_mode_el %{_datadir}/emacs/site-lisp/cmake-mode.el
+install -D -p -m 0644 Auxiliary/cmake-mode.el %{buildroot}%cmake_mode_el
+rm %{buildroot}%{_datadir}/cmake/editors/emacs/cmake-mode.el
+# fix: W: files-duplicate (%%license covers already)
+rm %{buildroot}%{_docdir}/cmake/Copyright.txt
fdupes %{buildroot}%{_datadir}/%{name}
%docs_package
@@ -80,3 +99,7 @@ fdupes %{buildroot}%{_datadir}/%{name}
%{_bindir}/cpack
%{_bindir}/ctest
%{_datadir}/%{name}
+%{_libexecdir}/rpm
+%{_datadir}/bash-completion
+%cmake_mode_el
+%dir %{dirname:%cmake_mode_el}
diff --git a/packaging/macros.cmake b/packaging/macros.cmake
index 37ec99c12..8257f9666 100644
--- a/packaging/macros.cmake
+++ b/packaging/macros.cmake
@@ -1,65 +1,25 @@
#
# Macros for cmake
#
+%_cmake_lib_suffix64 -DLIB_SUFFIX=64
+%_cmake_skip_rpath -DCMAKE_SKIP_RPATH:BOOL=ON
%__cmake %{_bindir}/cmake
-%__ctest %{_bindir}/ctest
-%__builddir build
-%__builder %__make
-%__sourcedir .
%cmake \
- find %__sourcedir -name CMakeLists.txt \\\
- -exec sed -i -re '/^[[:blank:]]*[sS][eE][tT][[:blank:]]*\\\([[:blank:]]*(CMAKE_BUILD_TYPE|CMAKE_COLOR_MAKEFILE|CMAKE_INSTALL_PREFIX|CMAKE_VERBOSE_MAKEFILE).*\\\)/{s/^/#IGNORE /}' {} + \
- mkdir -p %__builddir \
- cd %__builddir \
- %__cmake $OLDPWD/%__sourcedir \\\
-%if "%__builder" == "%__make" \
- -G"Unix Makefiles" \\\
-%else \
- -GNinja \\\
-%endif \
+ CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ; \
+ CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ; \
+ FFLAGS="${FFLAGS:-%optflags}" ; export FFLAGS ; \
+ %__cmake \\\
+ -DCMAKE_VERBOSE_MAKEFILE=ON \\\
-DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \\\
+ -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \\\
-DINCLUDE_INSTALL_DIR:PATH=%{_includedir} \\\
-DLIB_INSTALL_DIR:PATH=%{_libdir} \\\
-DSYSCONF_INSTALL_DIR:PATH=%{_sysconfdir} \\\
-DSHARE_INSTALL_PREFIX:PATH=%{_datadir} \\\
- -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \\\
- -DCMAKE_BUILD_TYPE=RelWithDebInfo \\\
- -DCMAKE_C_FLAGS="${CFLAGS:-%optflags} -DNDEBUG" \\\
- -DCMAKE_CXX_FLAGS="${CXXFLAGS:-%optflags} -DNDEBUG" \\\
- -DCMAKE_Fortran_FLAGS="${FFLAGS:-%optflags%{?_fmoddir: -I%_fmoddir}} -DNDEBUG" \\\
- -DCMAKE_EXE_LINKER_FLAGS="%{?build_ldflags} -Wl,--as-needed -Wl,--no-undefined -Wl,-z,now" \\\
- -DCMAKE_MODULE_LINKER_FLAGS="%{?build_ldflags} -Wl,--as-needed" \\\
- -DCMAKE_SHARED_LINKER_FLAGS="%{?build_ldflags} -Wl,--as-needed -Wl,--no-undefined -Wl,-z,now" \\\
%if "%{?_lib}" == "lib64" \
- -DLIB_SUFFIX=64 \\\
-%endif \
- -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \\\
- -DBUILD_SHARED_LIBS:BOOL=ON \\\
- -DBUILD_STATIC_LIBS:BOOL=OFF \\\
- -DCMAKE_COLOR_MAKEFILE:BOOL=OFF \\\
- -DCMAKE_INSTALL_DO_STRIP:BOOL=OFF \\\
- -DCMAKE_MODULES_INSTALL_DIR=%{_datadir}/cmake/Modules
-
-%__builder_verbose \
-%if "%__builder" == "%__make" \
- %{?_make_output_sync} VERBOSE=1 \\\
-%else \
- -v \\\
+ %{?_cmake_lib_suffix64} \\\
%endif \
-%{nil}
-
-%cmake_build %__builder \\%__builder_verbose %{?_smp_mflags}
-
-%make_jobs \
- echo "Deprecated %%make_jobs macro used, please use %%cmake_build" \
- %cmake_build
-
-%cmake_install \
- DESTDIR=%{buildroot} %__builder install -C %__builddir
-
-%ctest(:-:) \
- cd %__builddir \
- %__ctest --output-on-failure --force-new-ctest-process %{?_smp_mflags} %** \
- cd ..
+ %{?_cmake_skip_rpath} \\\
+ -DBUILD_SHARED_LIBS:BOOL=ON
diff --git a/packaging/macros.cmake_3164 b/packaging/macros.cmake_3164
new file mode 100644
index 000000000..37ec99c12
--- /dev/null
+++ b/packaging/macros.cmake_3164
@@ -0,0 +1,65 @@
+#
+# Macros for cmake
+#
+%__cmake %{_bindir}/cmake
+%__ctest %{_bindir}/ctest
+%__builddir build
+%__builder %__make
+%__sourcedir .
+
+%cmake \
+ find %__sourcedir -name CMakeLists.txt \\\
+ -exec sed -i -re '/^[[:blank:]]*[sS][eE][tT][[:blank:]]*\\\([[:blank:]]*(CMAKE_BUILD_TYPE|CMAKE_COLOR_MAKEFILE|CMAKE_INSTALL_PREFIX|CMAKE_VERBOSE_MAKEFILE).*\\\)/{s/^/#IGNORE /}' {} + \
+ mkdir -p %__builddir \
+ cd %__builddir \
+ %__cmake $OLDPWD/%__sourcedir \\\
+%if "%__builder" == "%__make" \
+ -G"Unix Makefiles" \\\
+%else \
+ -GNinja \\\
+%endif \
+ -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \\\
+ -DINCLUDE_INSTALL_DIR:PATH=%{_includedir} \\\
+ -DLIB_INSTALL_DIR:PATH=%{_libdir} \\\
+ -DSYSCONF_INSTALL_DIR:PATH=%{_sysconfdir} \\\
+ -DSHARE_INSTALL_PREFIX:PATH=%{_datadir} \\\
+ -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \\\
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \\\
+ -DCMAKE_C_FLAGS="${CFLAGS:-%optflags} -DNDEBUG" \\\
+ -DCMAKE_CXX_FLAGS="${CXXFLAGS:-%optflags} -DNDEBUG" \\\
+ -DCMAKE_Fortran_FLAGS="${FFLAGS:-%optflags%{?_fmoddir: -I%_fmoddir}} -DNDEBUG" \\\
+ -DCMAKE_EXE_LINKER_FLAGS="%{?build_ldflags} -Wl,--as-needed -Wl,--no-undefined -Wl,-z,now" \\\
+ -DCMAKE_MODULE_LINKER_FLAGS="%{?build_ldflags} -Wl,--as-needed" \\\
+ -DCMAKE_SHARED_LINKER_FLAGS="%{?build_ldflags} -Wl,--as-needed -Wl,--no-undefined -Wl,-z,now" \\\
+%if "%{?_lib}" == "lib64" \
+ -DLIB_SUFFIX=64 \\\
+%endif \
+ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \\\
+ -DBUILD_SHARED_LIBS:BOOL=ON \\\
+ -DBUILD_STATIC_LIBS:BOOL=OFF \\\
+ -DCMAKE_COLOR_MAKEFILE:BOOL=OFF \\\
+ -DCMAKE_INSTALL_DO_STRIP:BOOL=OFF \\\
+ -DCMAKE_MODULES_INSTALL_DIR=%{_datadir}/cmake/Modules
+
+%__builder_verbose \
+%if "%__builder" == "%__make" \
+ %{?_make_output_sync} VERBOSE=1 \\\
+%else \
+ -v \\\
+%endif \
+%{nil}
+
+%cmake_build %__builder \\%__builder_verbose %{?_smp_mflags}
+
+%make_jobs \
+ echo "Deprecated %%make_jobs macro used, please use %%cmake_build" \
+ %cmake_build
+
+%cmake_install \
+ DESTDIR=%{buildroot} %__builder install -C %__builddir
+
+%ctest(:-:) \
+ cd %__builddir \
+ %__ctest --output-on-failure --force-new-ctest-process %{?_smp_mflags} %** \
+ cd ..
+