- up to 2.6.2
[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.6.2
15 Release:        1
16 License:        BSD
17 Group:          Development/Building
18 Source0:        http://www.cmake.org/files/v2.6/%{name}-%{version}.tar.gz
19 # Source0-md5:  9e82aa3beb991aa8e5797cf330618d42
20 Patch0:         %{name}-lib64.patch
21 Patch1:         %{name}-ar.patch
22 URL:            http://www.cmake.org/
23 %{?with_gui:BuildRequires:      QtGui-devel}
24 BuildRequires:  libstdc++-devel
25 BuildRequires:  ncurses-devel
26 %{?with_gui:BuildRequires:      qt4-build}
27 %{?with_gui:BuildRequires:      qt4-qmake}
28 BuildRequires:  rpmbuild(macros) >= 1.167
29 %{!?with_bootstrap:BuildRequires:       xmlrpc-c-devel >= 1.4.12-2}
30 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
31
32 %description
33 CMake is used to control the software compilation process using simple
34 platform and compiler independent configuration files. CMake generates
35 native makefiles and workspaces that can be used in the compiler
36 environment of your choice. CMake is quite sophisticated: it is
37 possible to support complex environments requiring system
38 configuration, pre-processor generation, code generation, and template
39 instantiation.
40
41 %description -l pl.UTF-8
42 CMake służy do sterowania procesem kompilacji oprogramowania przy
43 użyciu prostych plików konfiguracyjnych niezależnych od platformy
44 i kompilatora. CMake generuje natywne pliki makefile i workspace,
45 których można używać w wybranym środowisku kompilatora. CMake jest
46 dość przemyślany: może obsłużyć złożone środowiska wymagające
47 konfiguracji systemu, generowanie preprocesora, generowanie kodu
48 i dziedziczenie szablonów.
49
50 %package gui
51 Summary:        Qt GUI for CMake
52 Summary(pl.UTF-8):      Graficzny interfejs użytkownika Qt dla CMake
53 Group:          Development/Tools
54 Requires:       %{name} = %{version}-%{release}
55
56 %description gui
57 This package contains the Qt based GUI for CMake.
58
59 %description gui -l pl.UTF-8
60 Ten pakiet zawiera oparty na Qt graficzny interfejs użytkownika dla
61 CMake.
62
63 %prep
64 %setup -q
65 %if "%{_lib}" == "lib64"
66 %patch0 -p1
67 %endif
68 %patch1 -p0
69
70 cat > "init.cmake" <<EOF
71 SET (CURSES_INCLUDE_PATH "/usr/include/ncurses" CACHE PATH " " FORCE)
72 EOF
73
74 %build
75 export CC="%{__cc}"
76 export CXX="%{__cxx}"
77 export CFLAGS="%{rpmcflags}"
78 export CXXFLAGS="%{rpmcxxflags}"
79 export LDFLAGS="%{rpmldflags}"
80 ./bootstrap \
81         --prefix=%{_prefix} \
82         --mandir=/share/man \
83         --datadir=/share/cmake \
84         --init=init.cmake \
85         %{!?with_bootstrap:--system-libs} \
86         %{?with_gui:--qt-gui} \
87         --verbose
88
89 %{__make}
90
91 %install
92 rm -rf $RPM_BUILD_ROOT
93
94 %{__make} install \
95         DESTDIR=$RPM_BUILD_ROOT
96
97 rm -rf $RPM_BUILD_ROOT%{_prefix}/doc
98
99 %clean
100 rm -rf $RPM_BUILD_ROOT
101
102 %files
103 %defattr(644,root,root,755)
104 %doc ChangeLog.* Copyright.txt *.gif Docs/{cmake,ctest}.{txt,html}
105 %attr(755,root,root) %{_bindir}/ccmake
106 %attr(755,root,root) %{_bindir}/cmake
107 %attr(755,root,root) %{_bindir}/cpack
108 %attr(755,root,root) %{_bindir}/ctest
109 %{_mandir}/man1/*.1*
110 %{_datadir}/cmake
111
112 %files gui
113 %defattr(644,root,root,755)
114 %attr(755,root,root) %{_bindir}/cmake-gui
115 %{_datadir}/mime/packages/cmakecache.xml
116 %{_desktopdir}/CMake.desktop
117 %{_pixmapsdir}/CMakeSetup.png
This page took 0.040753 seconds and 3 git commands to generate.