# If TDE is built in a specific prefix (e.g. /opt/trinity), the release will be suffixed with ".opt". %if "%{?_prefix}" != "/usr" %define _variant .opt %define _docdir %{_datadir}/doc %endif # TDE 3.5.13 specific variables %define tde_appdir %{_datadir}/applications/kde %define tde_docdir %{_docdir}/kde %define tde_includedir %{_includedir}/kde %define tde_libdir %{_libdir}/trinity Name: trinity-kdevelop Summary: Integrated Development Environment for C++/C Version: 3.5.13 Release: 4%{?dist}%{?_variant} License: GPLv2 Group: Development/Tools Vendor: Trinity Project Packager: Francois Andriot URL: http://www.trinitydesktop.org/ Prefix: %{_prefix} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Source: kdevelop-%{version}.tar.gz Source1: ftp://129.187.206.68/pub/unix/ide/KDevelop/c_cpp_reference-2.0.2_for_KDE_3.0.tar.bz2 # [c_cpp_ref] Fix library directories detection Patch1: c_cpp_reference-2.0.2-config.patch # [kdevelop] fix FTBFS Patch2: kdevelop-3.5.13-kdevdesigner-ftbfs.patch # [kdevelop] Fix compilation with GCC 4.7 [Bug #958] Patch3: kdevelop-3.5.13-gcc47.patch # [c_cpp_ref] Fix installation of 'asm' files Patch4: c_cpp_reference-2.0.2-install.patch Requires: %{name}-libs = %{version}-%{release} Requires: make Requires: perl Requires: flex >= 2.5.4 Requires: qt3-designer Requires: gettext Requires: ctags BuildRequires: cmake >= 2.8 BuildRequires: tqtinterface-devel BuildRequires: trinity-arts-devel BuildRequires: trinity-tdelibs-devel BuildRequires: qt3-devel-docs BuildRequires: db4-devel BuildRequires: flex # FIXME: No CVS support in KDevelop? This is going to suck... # Requires kdesdk3. BuildRequires: trinity-kdesdk-devel BuildRequires: subversion-devel neon-devel # looks like this is dragged in by apr-devel (dep of subversion-devel), but not # a dependency BuildRequires: openldap-devel %description The KDevelop Integrated Development Environment provides many features that developers need as well as providing a unified interface to programs like gdb, the C/C++ compiler, and make. KDevelop manages or provides: All development tools needed for C++ programming like Compiler, Linker, automake and autoconf; KAppWizard, which generates complete, ready-to-go sample applications; Classgenerator, for creating new classes and integrating them into the current project; File management for sources, headers, documentation etc. to be included in the project; The creation of User-Handbooks written with SGML and the automatic generation of HTML-output with the KDE look and feel; Automatic HTML-based API-documentation for your project's classes with cross-references to the used libraries; Internationalization support for your application, allowing translators to easily add their target language to a project; KDevelop also includes WYSIWYG (What you see is what you get)-creation of user interfaces with a built-in dialog editor; Debugging your application by integrating KDbg; Editing of project-specific pixmaps with KIconEdit; The inclusion of any other program you need for development by adding it to the "Tools"-menu according to your individual needs. %package devel Summary: Development files for %{name} Group: Development/Libraries Requires: %{name}-libs = %{version}-%{release} %description devel %{summary}. %package libs Summary: %{name} runtime libraries Group: System Environment/Libraries Requires: trinity-kdelibs # include to be paranoid, installing libs-only is still mostly untested -- Rex Requires: %{name} = %{version}-%{release} %description libs %{summary}. %prep %setup -q -n kdevelop -a1 %patch1 -p0 -b .config %patch2 -p1 %patch3 -p1 -b .gcc47 %patch4 -p1 # Ugly hack to modify TQT include directory inside autoconf files. # If TQT detection fails, it fallbacks to TQT4 instead of TQT3 ! %__sed -i "admin/acinclude.m4.in" \ -e "s|/usr/include/tqt|%{_includedir}/tqt|g" \ -e "s|kde_htmldir='.*'|kde_htmldir='%{tde_docdir}/HTML'|g" %__cp -f "/usr/share/aclocal/libtool.m4" "admin/libtool.m4.in" %__cp -f "/usr/share/libtool/config/ltmain.sh" "admin/ltmain.sh" || %__cp -f "/usr/share/libtool/ltmain.sh" "admin/ltmain.sh" %__rm -rf c_cpp_reference-2.0.2_for_KDE_3.0/admin %__cp -ar admin c_cpp_reference-2.0.2_for_KDE_3.0/ %__make -C c_cpp_reference-2.0.2_for_KDE_3.0 -f admin/Makefile.common cvs %build unset QTDIR || : ; . /etc/profile.d/qt.sh export PATH="%{_bindir}:${PATH}" export PKG_CONFIG_PATH="%{_libdir}/pkgconfig" export CMAKE_INCLUDE_PATH="%{_includedir}:%{_includedir}/tqt" export LD_LIBRARY_PATH="%{_libdir}" # c references pushd c_cpp_reference-2.0.2_for_KDE_3.0 %configure \ --with-qt-libraries=${QTLIB} \ --with-qt-includes=${QTINC} \ --with-extra-libs=%{_libdir} popd %__mkdir build cd build %cmake \ -DWITH_BUILDTOOL_ALL=ON \ -DWITH_LANGUAGE_ALL=ON \ -DWITH_VCS_ALL=OFF \ -DBUILD_ALL=ON \ .. %__make %{?_smp_mflags} cd .. %__make %{?_smp_mflags} -C c_cpp_reference-2.0.2_for_KDE_3.0 %install %__rm -rf %{buildroot} cd build %__make install DESTDIR=%{buildroot} cd .. %__make install DESTDIR=%{buildroot} -C c_cpp_reference-2.0.2_for_KDE_3.0 # remove useless files %__rm -rf %{buildroot}%{_prefix}/kdevbdb %post for f in hicolor locolor ; do touch --no-create %{_datadir}/icons/$f 2> /dev/null ||: gtk-update-icon-cache -q %{_datadir}/icons/$f 2> /dev/null ||: done update-desktop-database %{_datadir}/applications > /dev/null 2>&1 || : %postun for f in hicolor locolor ; do touch --no-create %{_datadir}/icons/$f 2> /dev/null ||: gtk-update-icon-cache -q %{_datadir}/icons/$f 2> /dev/null ||: done update-desktop-database %{_datadir}/applications > /dev/null 2>&1 || : %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig %clean %__rm -rf %{buildroot} %files %defattr(-,root,root,-) %{tde_docdir}/HTML/en/* %{_bindir}/* %{tde_libdir}/* %{_libdir}/kconf_update_bin/* %{tde_appdir}/* %{_datadir}/apps/* %{_datadir}/config/* %{_datadir}/desktop-directories/* %{_datadir}/icons/hicolor/*/*/* %{_datadir}/icons/locolor/*/*/* %{_datadir}/mimelnk/*.desktop %{_datadir}/mimelnk/*/* %{_datadir}/services/* %{_datadir}/servicetypes/* %files libs %defattr(-,root,root,-) %{_libdir}/lib*.so.* %{_libdir}/lib*.la %files devel %defattr(-,root,root,-) %{_libdir}/lib*.so %{_includedir}/* %changelog * Sun Jul 08 2012 Francois Andriot - 3.5.13-4 - Removes runtime dependency to 'trinity-kdelibs' * Tue May 01 2012 Francois Andriot - 3.5.13-3 - Fix installation on Fedora 17 - Fix compilation on GCC 4.7 * Fri Nov 25 2011 Francois Andriot - 3.5.13-2 - Fix HTML directory location * Sun Oct 30 2011 Francois Andriot - 3.5.13-1 - Initial release for RHEL 6, RHEL 5 and Fedora 15 * Sat Oct 29 2011 Francois Andriot - 3.5.13-0 - Import to GIT - Based on SPEC file from Fedora: kdevelop 9:3.5.3-1