# Use --define 'noxlc 1' on the command line to use gcc %{!?noxlc:%define XLC 1} %{?noxlc:%define XLC 0} %define kde_release 3.0 %define qt_release 3.0.3 Name: kdevelop Summary: Integrated Development Environment for C++/C Prefix: %{_prefix}/kde Version: 2.1 Release: 1 Source: ftp://ftp.kde.org/pub/kde/stable/%{version}/src/%{name}-%{version}_for_KDE_%{kde_release}.tar.bz2 Patch0: %{name}-%{version}-kde-common.patch Patch1: %{name}-%{version}-aix.patch Patch2: %{name}-%{version}-xlc.patch Group: Development/Tools BuildRoot: %{_tmppath}/%{name}-buildroot License: GPL Requires: kdelibs >= %{kde_release}, kdelibs-devel >= %{kde_release}, make, autoconf >= 2.13 Requires: automake >= 1.5, autoconf >= 2.5, flex >= 2.5.4 BuildPrereq: automake = 1.5, autoconf >= 2.5, kdelibs-devel >= %{kde_release} %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. %prep rm -rf $RPM_BUILD_ROOT %setup -q -n %{name}-%{version}_for_KDE_%{kde_release} # Common patches. %patch0 -p0 -b .aix %patch1 -p0 -b .aix # Per-compiler patches. These will break (or are untested) on the other. %if %{XLC} == 1 %patch2 -p0 -b .xlc %endif %if %{XLC} == 0 # Deoptimize. Temporary until compiler is in better shape. for file in `find . ! -name "*.sgml" -print | xargs grep -l '\-O2'`; do cp $file $file.withO2 sed -e 's/\-O2/-O0/g' < $file.withO2 > $file done %endif %build %{!?noxlc: export CC=xlc CXX=xlC} export KDEDIR=%{prefix} export QTDIR=%{_prefix}/qt export CXXFLAGS="%{!?noxlc: -qrtti=all}" CFLAGS="%{!?noxlc: -Dinline=_Inline}" ./configure \ --prefix=%{prefix} --disable-debug \ --with-qtdoc-dir=%{_docdir}/qt-%{qt_release} %{?noxlc: --enable-final} \ --with-kdelibsdoc-dir=%{_docdir}/kdelibs-devel-%{kde_release} make %install [ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != / ] && rm -rf $RPM_BUILD_ROOT export DESTDIR=$RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install # extractrc is provided by kdesdk rm -f $RPM_BUILD_ROOT%{prefix}/bin/extractrc # Stripping decreases size a lot! %if %{XLC} == 0 /usr/bin/strip $RPM_BUILD_ROOT%{prefix}/bin/* || : %endif mkdir -p $RPM_BUILD_ROOT/usr ln -sf ..%{prefix} $RPM_BUILD_ROOT/usr cd $RPM_BUILD_ROOT find .%{prefix} -type d | sed '1,2d;s,^\.,\%attr(-\,root\,root) \%dir ,' > \ $RPM_BUILD_DIR/file.list.%{name} find . -type f | sed -e 's,^\.,\%attr(-\,root\,root) ,' \ -e '/\/config\//s|^|%config |' >> \ $RPM_BUILD_DIR/file.list.%{name} find . -type l | sed 's,^\.,\%attr(-\,root\,root) ,' >> \ $RPM_BUILD_DIR/file.list.%{name} echo "%docdir %{prefix}/share/doc" >> $RPM_BUILD_DIR/file.list.%{name} %clean rm -rf $RPM_BUILD_ROOT $RPM_BUILD_DIR/file.list.%{name} %files -f ../file.list.%{name} %changelog * Tue Apr 2 2002 Reza Arbab - kdevelop 2.1 for KDE 3.0 - build with xlC * Mon Sep 17 2001 Reza Arbab - 2.2.1 * Mon Aug 13 2001 Reza Arbab - 2.2 * Tue Mar 13 2001 Marc Stephenson - Filter /usr from directory listings - Rebuild against new shared objects - Clean install directory * Tue Mar 6 2001 pkgmgr - Modify for AIX freeware distribution. * Sun Aug 13 2000 Than Ngo - fix kdelibsdoc-dir to show kdelibs-1.1.2 html docu correct * Tue Aug 01 2000 Than Ngo - add missing ldconfig in %post and %postun section (Bug #14924) - add missing C references stuff to kdevelop * Sun Jul 30 2000 Than Ngo - rebuilt against compat-egcs-c++, put KDE1 under /usr - cleanup specfile * Tue Jul 25 2000 Than Ngo - fix dependency problem * Wed Jul 19 2000 Than Ngo - rebuilt against compat-libstdc++ * Mon Jul 17 2000 Than Ngo - install under /usr/share instead /usr/lib/kde1-compat/share, fix dependency problem * Sat Jul 15 2000 Than Ngo - rebuilt with egcs-c++-1.1.2 * Thu Jul 13 2000 Prospector - automatic rebuild * Mon Jul 03 2000 Than Ngo - fix docdir - add requires kdebase * Sun Jul 02 2000 Than Ngo - rebuilt with kde1-compat * Sun Jun 18 2000 Than Ngo - rebuilt in the new build environment, fix docdir - FHS packaging * Thu Jun 08 2000 Than Ngo - update to 1.2 - move from powertools to main CD - use %%configure * Mon Apr 3 2000 Ngo Than - fix up reference (Bug #10368) * Tue Feb 15 2000 Bernhard Rosenkränzer - Fix up documentation path (Bug #7291) - Update to current stable branch - this should fix up the debugger problem - clean up spec file * Fri Jan 6 2000 Bernhard Rosenkränzer - Update to current stable branch - Adapt to 6.2 Qt libraries - Use BuildPrereq * Wed Jan 05 2000 Ngo Than - added patch for alpha * Tue Dec 21 1999 Ngo Than - updated kdevelop-1.0 release * Tue Nov 16 1999 Preston Brown - kdevelop 1.0beta4.1, docdir added, using DESTDIR env. variable. * Thu Sep 09 1999 Preston Brown - initial packaging for 6.1.