- cmake/Modules top dirs moved to filesystem (>= 3.0-46), so that packages like libmo...
[packages/cmake.git] / cmake.spec
1 # TODO:
2 # - any valid CMAKE_BUILD_TYPE causes overriding of our optflags
3 #   (and default non-verbose makefiles are hiding it!)
4 # - rpmldflags/rpmcppflags are not passed through %%cmake macro at all
5 #   (is there any standard way???)
6 #
7 # Conditional build:
8 %bcond_with     bootstrap       # use internal versions of some libraries
9 %bcond_without  gui             # don't build gui package
10
11 Summary:        Cross-platform, open-source make system
12 Summary(pl.UTF-8):      Wieloplatformowy system make o otwartych źródłach
13 Name:           cmake
14 Version:        2.8.4
15 Release:        2
16 License:        BSD
17 Group:          Development/Building
18 Source0:        http://www.cmake.org/files/v2.8/%{name}-%{version}.tar.gz
19 # Source0-md5:  209b7d1d04b2e00986538d74ba764fcf
20 Patch0:         %{name}-lib64.patch
21 Patch1:         %{name}-tinfo.patch
22 URL:            http://www.cmake.org/
23 %{?with_gui:BuildRequires:      QtGui-devel}
24 BuildRequires:  libarchive-devel
25 BuildRequires:  libstdc++-devel
26 BuildRequires:  ncurses-devel
27 %{?with_gui:BuildRequires:      qt4-build}
28 %{?with_gui:BuildRequires:      qt4-qmake}
29 BuildRequires:  rpmbuild(macros) >= 1.167
30 %{!?with_bootstrap:BuildRequires:       xmlrpc-c-devel >= 1.4.12-2}
31 Requires:       filesystem >= 3.0-46
32 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
33
34 %description
35 CMake is used to control the software compilation process using simple
36 platform and compiler independent configuration files. CMake generates
37 native makefiles and workspaces that can be used in the compiler
38 environment of your choice. CMake is quite sophisticated: it is
39 possible to support complex environments requiring system
40 configuration, pre-processor generation, code generation, and template
41 instantiation.
42
43 %description -l pl.UTF-8
44 CMake służy do sterowania procesem kompilacji oprogramowania przy
45 użyciu prostych plików konfiguracyjnych niezależnych od platformy i
46 kompilatora. CMake generuje natywne pliki makefile i workspace,
47 których można używać w wybranym środowisku kompilatora. CMake jest
48 dość wyrafinowany: może obsłużyć złożone środowiska wymagające
49 konfiguracji systemu, generowanie preprocesora, generowanie kodu i
50 dziedziczenie szablonów.
51
52 %package gui
53 Summary:        Qt GUI for CMake
54 Summary(pl.UTF-8):      Graficzny interfejs użytkownika Qt dla CMake
55 Group:          Development/Tools
56 Requires:       %{name} = %{version}-%{release}
57
58 %description gui
59 This package contains the Qt based GUI for CMake.
60
61 %description gui -l pl.UTF-8
62 Ten pakiet zawiera oparty na Qt graficzny interfejs użytkownika dla
63 CMake.
64
65 %prep
66 %setup -q
67 %if "%{_lib}" == "lib64"
68 %patch0 -p1
69 %endif
70 %patch1 -p0
71
72 cat > "init.cmake" <<EOF
73 SET (CURSES_INCLUDE_PATH "/usr/include/ncurses" CACHE PATH " " FORCE)
74 EOF
75
76 %build
77 export CC="%{__cc}"
78 export CXX="%{__cxx}"
79 export CFLAGS="%{rpmcflags}"
80 export CXXFLAGS="%{rpmcxxflags}"
81 export LDFLAGS="%{rpmldflags}"
82 ./bootstrap \
83         --prefix=%{_prefix} \
84         --mandir=/share/man \
85         --datadir=/share/cmake \
86         --init=init.cmake \
87         %{!?with_bootstrap:--system-libs} \
88         %{?with_gui:--qt-gui} \
89         --qt-qmake=/usr/bin/qmake-qt4 \
90         --verbose
91
92 %{__make} VERBOSE=1
93
94 %install
95 rm -rf $RPM_BUILD_ROOT
96 install -d $RPM_BUILD_ROOT%{_libdir}/cmake
97 %{__make} install \
98         DESTDIR=$RPM_BUILD_ROOT
99
100 rm -r $RPM_BUILD_ROOT%{_prefix}/doc
101
102 %clean
103 rm -rf $RPM_BUILD_ROOT
104
105 %files
106 %defattr(644,root,root,755)
107 %doc ChangeLog.* Copyright.txt *.gif Docs/{cmake,ctest}.{txt,html}
108 %attr(755,root,root) %{_bindir}/ccmake
109 %attr(755,root,root) %{_bindir}/cmake
110 %attr(755,root,root) %{_bindir}/cpack
111 %attr(755,root,root) %{_bindir}/ctest
112 %{_mandir}/man1/ccmake.1*
113 %{_mandir}/man1/cmake.1*
114 %{_mandir}/man1/cmakecommands.1*
115 %{_mandir}/man1/cmakecompat.1*
116 %{_mandir}/man1/cmakemodules.1*
117 %{_mandir}/man1/cmakepolicies.1*
118 %{_mandir}/man1/cmakeprops.1*
119 %{_mandir}/man1/cmakevars.1*
120 %{_mandir}/man1/cpack.1*
121 %{_mandir}/man1/ctest.1*
122 # top cmake/Modules dirs belong to filesystem
123 %{_datadir}/cmake/Modules/.NoDartCoverage
124 %{_datadir}/cmake/Modules/*
125 %{_datadir}/cmake/Templates
126 %{_datadir}/cmake/include
127 %dir %{_libdir}/cmake
128
129 %if %{with gui}
130 %files gui
131 %defattr(644,root,root,755)
132 %attr(755,root,root) %{_bindir}/cmake-gui
133 %{_datadir}/mime/packages/cmakecache.xml
134 %{_desktopdir}/CMake.desktop
135 %{_pixmapsdir}/CMakeSetup32.png
136 %{_mandir}/man1/cmake-gui.1*
137 %endif
This page took 0.042436 seconds and 3 git commands to generate.