]> git.pld-linux.org Git - packages/codeblocks.git/blob - codeblocks.spec
- updated to latest SVN snapshot
[packages/codeblocks.git] / codeblocks.spec
1 #
2 # Conditional build:
3 %bcond_with     gtk2    # GTK+ 2.x instead of 3.x
4
5 Summary:        An open source, cross platform, free C++ IDE
6 Summary(pl.UTF-8):      Wieloplatformowe, darmowe IDE do C++ o otwartych źródłach
7 Name:           codeblocks
8 %define snap    svn13361
9 Version:        20.03
10 Release:        1.%{snap}.1
11 License:        GPL v3
12 Group:          X11/Development/Tools
13 #Source0:       http://download.sourceforge.net/codeblocks/%{name}-%{version}%{snap}.tar.xz
14 Source0:        %{name}-%{version}%{snap}.tar.xz
15 # Source0-md5:  4f856967ec38135cebc09adc8db93294
16 Patch0:         %{name}-FHS-plugins.patch
17 Patch1:         no-parallel.patch
18 Patch2:         %{name}-ac.patch
19 URL:            http://www.codeblocks.org/
20 BuildRequires:  astyle-devel >= 3.0
21 BuildRequires:  autoconf >= 2.50
22 BuildRequires:  automake
23 BuildRequires:  boost-devel
24 BuildRequires:  bzip2-devel
25 BuildRequires:  fontconfig-devel
26 BuildRequires:  gamin-devel
27 BuildRequires:  glib2-devel >= 2.0
28 %{?with_gtk2:BuildRequires:     gtk+2-devel >= 1:2.0.0}
29 %{!?with_gtk2:BuildRequires:    gtk+3-devel >= 3.0.0}
30 BuildRequires:  libstdc++-devel >= 6:4.7
31 BuildRequires:  libtool >= 2:2
32 BuildRequires:  pkgconfig
33 BuildRequires:  sed >= 4.0
34 # pkgconfig(squirrel)
35 BuildRequires:  squirrel-devel >= 2.2.5
36 BuildRequires:  hunspell-devel
37 BuildRequires:  unixODBC-devel
38 BuildRequires:  tar >= 1:1.22
39 # pkgconfig(tinyxml)
40 BuildRequires:  tinyxml-devel >= 2.6.2-8
41 %{?with_gtk2:BuildRequires:     wxGTK2-unicode-devel >= 2.8.12}
42 %{!?with_gtk2:BuildRequires:    wxGTK3-unicode-devel >= 2.8.12}
43 BuildRequires:  xorg-lib-libX11-devel
44 BuildRequires:  xz
45 BuildRequires:  zip
46 BuildRequires:  zlib-devel
47 Requires(post,postun):  desktop-file-utils
48 Requires(post,postun):  gtk-update-icon-cache
49 Requires(post,postun):  shared-mime-info
50 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
51
52 %description
53 Code::Blocks is a free C++ IDE built specifically to meet the most
54 demanding needs of its users. It was designed, right from the start,
55 to be extensible and configurable. Built around a plugin framework,
56 Code::Blocks can be extended with plugin DLLs. It includes a plugin
57 wizard so you can compile your own plugins!
58
59 Highlights:
60  - Open Source! GPL 3, no hidden costs
61  - Cross-platform; runs on Linux or Windows (uses wxWidgets)
62  - Made in GNU C++; no interpreted languages or proprietary libs needed
63  - Extensible thru plugins
64
65 Compiler-related features:
66  - Multiple compiler support: GCC (MingW / Linux), MSVC++, Digital
67    Mars, Borland C++ 5.5, Open Watcom
68  - Compiles directly or with makefiles
69  - Predefined project templates
70  - Custom template support
71  - Uses XML format for project files
72  - Multi-target projects
73  - Workspaces support
74  - Imports MSVC projects and workspaces (NOTE: assembly code and
75    inter-project dependencies not supported yet)
76  - Imports Dev-C++ projects
77  - Integrates with GDB for debugging
78
79 Interface Features:
80  - Syntax highlighting, customizable and extensible
81  - Code folding for C++ and XML files
82  - Tabbed interface
83  - Code completion plugin
84  - Class Browser
85  - Smart indent
86  - One-key swap between .h and .c/.cpp files
87  - Open files list for quick switching between files (optional)
88  - External customizable "Tools"
89  - To-do list management with different users
90
91 %description -l pl.UTF-8
92 Code::Blocks to darmowe IDE dla C++ tworzone specjalnie w celu
93 zaspokojenia największych potrzeb swoich użytkowników. Zostało
94 zaprojektowane od początku aby było rozszerzalne i konfigurowalne.
95 Code::Blocks, jako zbudowane w oparciu o szkielet wtyczek, można
96 rozszerzać. Zawiera czarodzieja dla wtyczek, więc można kompilować
97 własne.
98
99 Główne cechy:
100  - otwarte źródła na licencji GPL 3, bez ukrytych kosztów
101  - wieloplatformowość - działa na Linuksie i Windows (przy użyciu
102    wxWidgets)
103  - stworzone w GNU C++, nie wymaga języków interpretowanych ani
104    własnościowych bibliotek
105  - rozszerzalne poprzez wtyczki
106
107 Cechy związane z kompilatorami:
108  - obsługa wielu kompilatorów: GCC (MingW / Linux), MSVC++, Digital
109    Mars, Borland C++ 5.5, Open Watcom
110  - kompiluje bezpośrednio lub z użyciem plików Makefile
111  - predefiniowane szablony projektów
112  - obsługa własnych szablonów
113  - używa formatu XML dla plików projektów
114  - projekty z wieloma celami
115  - obsługa przestrzeni zadań (workspace)
116  - import projektów i przestrzeni zadań MSVC (uwaga: kdo w asemblerze i
117    zależności między projektami nie są jeszcze obsługiwane)
118  - import projektów Dev-C++
119  - integracja z GDB do odpluskwiania
120
121 Cechy interfejsu:
122  - podświetlanie składni - konfigurowalne i rozszerzalne
123  - zwijanie kodu w plikach C++ i XML
124  - interfejs z zakładkami
125  - wtyczka dopełniania kodu
126  - przeglądarka klas
127  - inteligentne wcięcia
128  - przełączanie jednym klawiszem między plikami .h i .c/.cpp
129  - lista otwartych plików do szybkiego przełączania między nimi (opcja)
130  - zewnętrzne, konfigurowalne "narzędzia"
131  - zarządzanie listą rzeczy do zrobienia ("To-do") przez różnych
132    użytkowników
133
134 %package devel
135 Summary:        Development files for Code::Blocks
136 Summary(pl.UTF-8):      Pliki nagłówkowe Code::Blocks
137 Group:          X11/Development/Libraries
138 Requires:       %{name} = %{version}-%{release}
139
140 %description devel
141 This package provides development files for Code::Blocks. Install this
142 package only if you plan to write plugins for Code::Blocks.
143
144 %description devel -l pl.UTF-8
145 Ten pakiet dostarcza plików nagłówkowych Code::Blocks. Należy
146 instalować ten pakiet tylko w celu pisania wtyczek do Code::Blocks.
147
148 %prep
149 %setup -q -n %{name}-%{version}%{snap}
150 %patch0 -p1
151 %patch1 -p1
152 %patch2 -p1
153
154 # hardcode libdir, continue of patch0
155 sed -i 's|@libdir@|%{_libdir}|' src/sdk/configmanager.cpp
156
157 # fix version inside the configure script
158 sed -i 's/svn[0-9]\+//g' revision.m4
159
160 %build
161 %{__libtoolize}
162 %{__aclocal} -I m4
163 %{__autoconf}
164 %{__autoheader}
165 %{__automake}
166 #CXXFLAGS="%{rpmcxxflags} -std=c++11"
167 %configure \
168         --with-boost-system=boost_system \
169         --with-contrib-plugins=all \
170 %if %{with gtk2}
171         --with-wx-config=wx-gtk2-unicode-config \
172 %else
173         --with-wx-config=wx-gtk3-unicode-config
174 %endif
175
176 %{__make}
177
178 %install
179 rm -rf $RPM_BUILD_ROOT
180
181 %{__make} install \
182         DESTDIR=$RPM_BUILD_ROOT \
183         mimeicondir=%{_iconsdir}/hicolor/48x48/mimetypes
184
185 # loadable plugins
186 %{__rm} $RPM_BUILD_ROOT%{_libdir}/codeblocks/plugins/*.la
187 # private libraries
188 %{__rm} $RPM_BUILD_ROOT%{_libdir}/codeblocks/wxContribItems/*.la
189 # obsoleted by pkg-config
190 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
191
192 %clean
193 rm -rf $RPM_BUILD_ROOT
194
195 %post
196 /sbin/ldconfig
197 %update_icon_cache hicolor
198 %update_desktop_database_post
199 %update_mime_database
200
201 %postun
202 /sbin/ldconfig
203 %update_icon_cache hicolor
204 %update_desktop_database_postun
205 %update_mime_database
206
207 %files
208 %defattr(644,root,root,755)
209 %doc AUTHORS BUGS COMPILERS README TODO ChangeLog
210 %attr(755,root,root) %{_bindir}/cb_share_config
211 %attr(755,root,root) %{_bindir}/cb_console_runner
212 %attr(755,root,root) %{_bindir}/codeblocks
213 %attr(755,root,root) %{_libdir}/libwxsmithlib.so.*.*.*
214 %attr(755,root,root) %ghost %{_libdir}/libwxsmithlib.so.0
215 %attr(755,root,root) %{_libdir}/libcodeblocks.so.*.*.*
216 %attr(755,root,root) %ghost %{_libdir}/libcodeblocks.so.0
217 %{_desktopdir}/codeblocks.desktop
218 %{_pixmapsdir}/codeblocks.png
219 %{_iconsdir}/hicolor/48x48/mimetypes/application-x-codeblocks*.png
220 %{_metainfodir}/codeblocks.appdata.xml
221 %{_metainfodir}/codeblocks-contrib.metainfo.xml
222 %{_datadir}/mime/packages/codeblocks.xml
223 %dir %{_datadir}/%{name}
224 %dir %{_datadir}/%{name}/scripts
225 %{_datadir}/%{name}/scripts/*
226 %{_datadir}/%{name}/*.zip
227 %{_datadir}/%{name}/*.txt
228 %{_datadir}/%{name}/SpellChecker
229 %{_datadir}/%{name}/compilers
230 %{_datadir}/%{name}/icons
231 %{_datadir}/%{name}/images
232 %{_datadir}/%{name}/lexers
233 %{_datadir}/%{name}/lib_finder
234 %{_datadir}/%{name}/templates
235 %dir %{_libdir}/%{name}
236 %dir %{_libdir}/%{name}/plugins
237 %attr(755,root,root) %{_libdir}/%{name}/plugins/*.so
238 %dir %{_libdir}/%{name}/wxContribItems
239 %attr(755,root,root) %{_libdir}/%{name}/wxContribItems/libwx*.so.*
240 %{_mandir}/man1/cb_console_runner.1*
241 %{_mandir}/man1/cb_share_config.1*
242 %{_mandir}/man1/codeblocks.1*
243 %{_mandir}/man1/codesnippets.1*
244
245 %files devel
246 %defattr(644,root,root,755)
247 %attr(755,root,root) %{_libdir}/libcodeblocks.so
248 %attr(755,root,root) %{_libdir}/libwxsmithlib.so
249 %attr(755,root,root) %{_libdir}/%{name}/wxContribItems/libwx*.so
250 %{_pkgconfigdir}/cb_wx*.pc
251 %{_pkgconfigdir}/codeblocks.pc
252 %{_pkgconfigdir}/wxsmith*.pc
253 %{_includedir}/codeblocks
254 %{_includedir}/wxsmith
This page took 0.084816 seconds and 4 git commands to generate.