41f3d7e
%define		rev	3500
41f3d7e
%define		date	20070117
a53cad6
a53cad6
Name:		codeblocks
a53cad6
Version:	1.0
41f3d7e
Release:	0.19.%{date}svn%{rev}%{?dist}
a53cad6
Summary:	An open source, cross platform, free C++ IDE
a53cad6
Group:		Development/Tools
a53cad6
License:	GPL
a53cad6
URL:		http://www.codeblocks.org/
a53cad6
Source:		%{name}-svn%{rev}.tar.bz2
a53cad6
BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
a53cad6
BuildRequires:	wxGTK-devel >= 2.6.0
a53cad6
BuildRequires:	zip
a53cad6
BuildRequires:	dos2unix
a53cad6
BuildRequires:	autoconf, automake, libtool
a53cad6
BuildRequires:	desktop-file-utils
a53cad6
Requires:	shared-mime-info
a53cad6
Patch1:		codeblocks-plugins.patch
a53cad6
Patch2:		codeblocks-desktop.patch
a53cad6
Patch3:		codeblocks-autorev.patch
41f3d7e
Patch100:	codeblocks-wx28-listbook.patch
a53cad6
Source100:	codeblocks-getsvn
a53cad6
a53cad6
%description
a53cad6
Code::Blocks is a free C++ IDE built specifically to meet the most demanding
a53cad6
needs of its users. It was designed, right from the start, to be extensible
a53cad6
and configurable. Built around a plugin framework, Code::Blocks can be
a53cad6
extended with plugin DLLs. It includes a plugin wizard, so you can compile
a53cad6
your own plugins.
a53cad6
a53cad6
%package devel
a53cad6
Summary:	Files needed to build Code::Blocks plugins
a53cad6
Group:		Development/Libraries
a53cad6
Requires:	%{name} = %{version}-%{release}
a53cad6
Requires:	pkgconfig
a53cad6
a53cad6
%description devel
a53cad6
Development files needed to build Code::Blocks plugins.
a53cad6
a53cad6
%package contrib
a53cad6
Summary:	Additional Code::Blocks plugins
a53cad6
Group:		Development/Tools
a53cad6
Requires:	%{name} = %{version}-%{release}
a53cad6
a53cad6
%description contrib
a53cad6
Additional Code::Blocks plugins.
a53cad6
a53cad6
a53cad6
%define		pkgdatadir	%{_datadir}/%{name}
a53cad6
%define		pkglibdir	%{_libdir}/%{name}
a53cad6
%define		plugindir	%{pkglibdir}/plugins
a53cad6
a53cad6
%prep
a53cad6
a53cad6
%setup -q -n codeblocks
8afd302
%patch1
a53cad6
%patch2 -p1
a53cad6
%patch3
41f3d7e
%patch100
a53cad6
a53cad6
%build
a53cad6
find . -type f -and -not -name "*.cpp" -and -not -name "*.h" -and -not -name "*.png" -and -not -name "*.bmp" -and -not -name "*.c" -and -not -name "*.cxx" -and -not -name "*.ico" | sed "s/.*/\"\\0\"/" | xargs dos2unix &> /dev/null
a53cad6
chmod a+x bootstrap src/update
a53cad6
65ab042
# fix the dir, where plugins are installed
65ab042
for p in astyle autosave classwizard codecompletion compilergcc debuggergdb defaultmimehandler scriptedwizard todo xpmanifest
65ab042
do
65ab042
	sed -i 's|$(pkgdatadir)|@libdir@/@PACKAGE@|' src/plugins/$p/Makefile.am
65ab042
done
65ab042
c253288
for p in byogames cb_koders codesnippets codestat dragscroll envvars help_plugin keybinder lib_finder profiler regex_testbed source_exporter symtab wxSmith
65ab042
do
65ab042
	sed -i 's|$(pkgdatadir)|@libdir@/@PACKAGE@|' src/plugins/contrib/$p/Makefile.am
65ab042
done
65ab042
8afd302
sed -i 's|@libdir@|%{_libdir}|' src/sdk/configmanager.cpp
8afd302
8afd302
# generate revision.m4
a53cad6
echo "m4_define([SVN_REVISION], trunk-r%{rev})" > revision.m4
a53cad6
a53cad6
./bootstrap
a53cad6
a53cad6
# generate autorevision.h
a53cad6
cat > src/sdk/autorevision.h << EOF
a53cad6
/*%{rev}*/
a53cad6
#ifndef AUTOREVISION_H
a53cad6
#define AUTOREVISION_H
a53cad6
a53cad6
a53cad6
#include <wx/string.h>
a53cad6
a53cad6
#define SVN_REVISION "%{rev}"
a53cad6
a53cad6
#define SVN_DATE     "%{date}"
a53cad6
a53cad6
namespace autorevision
a53cad6
{
a53cad6
	const unsigned int svn_revision = %{rev};
a53cad6
	const wxString svnRevision(_T("%{rev}"));
a53cad6
}
a53cad6
a53cad6
a53cad6
a53cad6
#endif
a53cad6
a53cad6
EOF
a53cad6
a53cad6
%configure --enable-contrib
a53cad6
5a89724
# Don't use rpath!
5a89724
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
5a89724
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
5a89724
a53cad6
make %{?_smp_mflags}
a53cad6
a53cad6
%install
a53cad6
rm -rf $RPM_BUILD_ROOT
a53cad6
a53cad6
make DESTDIR=$RPM_BUILD_ROOT install
a53cad6
  
a53cad6
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
a53cad6
rm -f $RPM_BUILD_ROOT%{plugindir}/*.la
a53cad6
a53cad6
rm -f $RPM_BUILD_ROOT%{_datadir}/applications/codeblocks.desktop
a53cad6
desktop-file-install --vendor fedora \
a53cad6
	--dir $RPM_BUILD_ROOT%{_datadir}/applications \
a53cad6
	--add-category X-Fedora \
a53cad6
	src/setup/mime/codeblocks.desktop
a53cad6
a53cad6
%clean
a53cad6
rm -rf $RPM_BUILD_ROOT
a53cad6
a53cad6
%post
a53cad6
/sbin/ldconfig
a53cad6
update-mime-database /usr/share/mime &> /dev/null || :
a53cad6
a53cad6
%postun
a53cad6
/sbin/ldconfig
a53cad6
update-mime-database /usr/share/mime &> /dev/null || :
a53cad6
a53cad6
%files
a53cad6
%defattr(-,root,root)
a53cad6
%doc README COPYING AUTHORS BUGS COMPILERS NEWS ChangeLog
a53cad6
a53cad6
%{_bindir}/*
a53cad6
%{_libdir}/*.so.*
a53cad6
%{_mandir}/man1/*.gz
a53cad6
a53cad6
%dir %{pkglibdir}
a53cad6
%dir %{plugindir}
a53cad6
%{plugindir}/libastyle.so
a53cad6
%{plugindir}/libautosave.so
a53cad6
%{plugindir}/libclasswizard.so
a53cad6
%{plugindir}/libcodecompletion.so
a53cad6
%{plugindir}/libcompiler.so
65ab042
%{plugindir}/libdebugger.so
a53cad6
%{plugindir}/libdefaultmimehandler.so
a53cad6
%{plugindir}/libscriptedwizard.so
a53cad6
%{plugindir}/libtodo.so
a53cad6
a53cad6
%{_datadir}/application-registry/%{name}.applications
a53cad6
%{_datadir}/applications/fedora-%{name}.desktop
a53cad6
%{_datadir}/icons/gnome/48x48/mimetypes/*.png
a53cad6
%{_datadir}/mime-info/*
a53cad6
%{_datadir}/mime/packages/codeblocks.xml
a53cad6
%{_datadir}/pixmaps/codeblocks.png
a53cad6
a53cad6
%dir %{pkgdatadir}
5a89724
%{pkgdatadir}/icons
5a89724
%dir %{pkgdatadir}/images
a53cad6
%{pkgdatadir}/images/*.png
5a89724
%{pkgdatadir}/images/16x16
5a89724
%{pkgdatadir}/images/codecompletion
5a89724
%{pkgdatadir}/images/settings
5a89724
%{pkgdatadir}/lexers
5a89724
%{pkgdatadir}/scripts
5a89724
%{pkgdatadir}/templates
a53cad6
%{pkgdatadir}/astyle.zip
a53cad6
%{pkgdatadir}/autosave.zip
65ab042
%{pkgdatadir}/classwizard.zip
65ab042
%{pkgdatadir}/codecompletion.zip
65ab042
%{pkgdatadir}/compiler.zip
65ab042
%{pkgdatadir}/debugger.zip
a53cad6
%{pkgdatadir}/defaultmimehandler.zip
a53cad6
%{pkgdatadir}/manager_resources.zip
a53cad6
%{pkgdatadir}/resources.zip
65ab042
%{pkgdatadir}/scriptedwizard.zip
a53cad6
%{pkgdatadir}/start_here.zip
a53cad6
%{pkgdatadir}/todo.zip
a53cad6
%{pkgdatadir}/tips.txt
a53cad6
a53cad6
%files devel
a53cad6
%defattr(-,root,root)
a53cad6
%{_includedir}/%{name}
a53cad6
%{_libdir}/*.so
a53cad6
%{_libdir}/pkgconfig/%{name}.pc
a53cad6
a53cad6
%files contrib
a53cad6
%defattr(-,root,root)
65ab042
%{pkgdatadir}/byogames.zip
65ab042
%{pkgdatadir}/cb_koders.zip
65ab042
%{pkgdatadir}/codesnippets.zip
a53cad6
%{pkgdatadir}/codestat.zip
65ab042
%{pkgdatadir}/dragscroll.zip
a53cad6
%{pkgdatadir}/envvars.zip
65ab042
%{pkgdatadir}/exporter.zip
a53cad6
%{pkgdatadir}/help_plugin.zip
65ab042
%{pkgdatadir}/keybinder.zip
5a89724
%{pkgdatadir}/lib_finder.zip
5a89724
%{pkgdatadir}/Profiler.zip
c253288
%{pkgdatadir}/RegExTestbed.zip
5a89724
%{pkgdatadir}/SymTab.zip
a53cad6
%{pkgdatadir}/wxsmith.zip
a53cad6
%{pkgdatadir}/images/codesnippets
a53cad6
%{pkgdatadir}/images/wxsmith
a53cad6
a53cad6
%{plugindir}/libbyogames.so
a53cad6
%{plugindir}/libcb_koders.so
a53cad6
%{plugindir}/libcodesnippets.so
a53cad6
%{plugindir}/libcodestat.so
a53cad6
%{plugindir}/libdragscroll.so
a53cad6
%{plugindir}/libenvvars.so
a53cad6
%{plugindir}/libexporter.so
a53cad6
%{plugindir}/libhelp_plugin.so
a53cad6
%{plugindir}/libkeybinder.so
5a89724
%{plugindir}/liblib_finder.so
5a89724
%{plugindir}/libProfiler.so
c253288
%{plugindir}/libRegExTestbed.so
5a89724
%{plugindir}/libSymTab.so
a53cad6
%{plugindir}/libwxsmith.so
a53cad6
a53cad6
a53cad6
%changelog
41f3d7e
* Thu Jan 18 2007 Dan Horak <dan[at]danny.cz> 1.0-0.19.20070117svn3500
41f3d7e
- update to revision 3500
41f3d7e
- added patch for compiling with wxGTK 2.8
41f3d7e
41f3d7e
* Fri Dec  8 2006 Dan Horak <dan[at]danny.cz> 1.0-0.18.20061207svn3357
d91657b
- update to revision 3357
d91657b
c253288
* Thu Nov 30 2006 Dan Horak <dan[at]danny.cz> 1.0-0.17.20061130svn3315
c253288
- update to revision 3315
c253288
9600f0e
* Tue Nov 28 2006 Dan Horak <dan[at]danny.cz> 1.0-0.16.20061128svn3295
9600f0e
- update to revision 3295
9600f0e
16469c2
* Sat Nov 25 2006 Dan Horak <dan[at]danny.cz> 1.0-0.15.20061125svn3268
16469c2
- update to revision 3268
16469c2
- fixes #217081
16469c2
1d4edb2
* Tue Nov 21 2006 Dan Horak <dan[at]danny.cz> 1.0-0.14.20061121svn3253
1d4edb2
- update to revision 3253
1d4edb2
8afd302
* Fri Nov 10 2006 Dan Horak <dan[at]danny.cz> 1.0-0.13.20061110svn3202
8afd302
- update to revision 3202
8afd302
- fixed plugin loading on 64-bit platforms
8afd302
8afd302
* Fri Nov  3 2006 Dan Horak <dan[at]danny.cz> 1.0-0.12.20061102svn3170
aea8489
- update to revision 3170
aea8489
5a89724
* Mon Oct 30 2006 Dan Horak <dan[at]danny.cz> 1.0-0.11.20061029svn3157
5a89724
- update to revision 3157
5a89724
- kill rpath in the spec file using sed
5a89724
- fix directory ownership
5a89724
65ab042
* Sun Oct  8 2006 Dan Horak <dan[at]danny.cz> 1.0-0.10.20061007svn3030
65ab042
- update to revision 3030
65ab042
- change the install paths for plugins in the spec file
65ab042
a53cad6
* Wed Sep 13 2006 Dan Horak <dan[at]danny.cz> 1.0-0.9.20060909svn2965
a53cad6
- do not require .svn directories for building
a53cad6
a53cad6
* Sun Sep 10 2006 Dan Horak <dan[at]danny.cz> 1.0-0.8.20060909svn2965
a53cad6
- update to revision 2965
a53cad6
- use %%configure macro
a53cad6
- properly install the desktop file
a53cad6
- update the mime database after install and uninstall
a53cad6
- do not own only %%{_libdir}/codeblock/plugins, but also %%{_libdir}/codeblock
a53cad6
- added a script for retrieving and packing a revision from the SVN repo
a53cad6
a53cad6
* Sun Sep  3 2006 Dan Horak <dan[at]danny.cz> 1.0-0.7.20060902svn2944
a53cad6
- update to revision 2944
a53cad6
a53cad6
* Sun Aug 20 2006 Dan Horak <dan[at]danny.cz> 1.0-0.6.20060820svn2882
a53cad6
- update to revision 2882
a53cad6
- added missing Requires for devel subpackage
a53cad6
a53cad6
* Wed Aug 16 2006 Dan Horak <dan[at]danny.cz> 1.0-0.5.20060815svn2854
a53cad6
- update to revision 2854
a53cad6
a53cad6
* Wed Aug 16 2006 Dan Horak <dan[at]danny.cz> 1.0-0.4.20060812svn2840
a53cad6
- make setup section quiet
a53cad6
- use only tabs for indentation
a53cad6
a53cad6
* Tue Aug 15 2006 Dan Horak <dan[at]danny.cz> 1.0-0.3.20060812svn2840
a53cad6
- define libdir in configure
a53cad6
a53cad6
* Sun Aug 13 2006 Dan Horak <dan[at]danny.cz> 1.0-0.2.20060812svn2840
a53cad6
- update to revision 2840
a53cad6
- added BR for autotools
a53cad6
a53cad6
* Tue Aug 08 2006 Dan Horak <dan[at]danny.cz> 1.0-0.1.2824svn
a53cad6
- initial spec file based on upstream