ktigcc.spec 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  1. %define tigccdir /usr/local/tigcc
  2. Name: ktigcc
  3. Version: 1.80
  4. Release: 1
  5. Vendor: TIGCC Team (http://tigcc.ticalc.org)
  6. Packager: Kevin Kofler <Kevin@tigcc.ticalc.org>
  7. Source: %{name}-%{version}.tar.bz2
  8. Group: Development/Tools
  9. License: GPL
  10. BuildRequires: qt4-devel >= 4.2.0 kdelibs4-devel = 3.90.1 glib2-devel >= 2.10.0 libticonv-devel >= 20060723 libticables2-devel >= 20060723 libtifiles2-devel >= 20060723 libticalcs2-devel >= 20060723 desktop-file-utils >= 0.10
  11. Requires: kdelibs4 = 3.90.1 kdebase4 = 3.90.1 tigcc >= 1:0.96b07r1 ktigcc-completion-data >= 0.96b07r1 qt4-doc ctags
  12. BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
  13. Summary: KTIGCC is an IDE for TIGCC using KDE
  14. %description
  15. KTIGCC is an IDE for the TIGCC cross-toolchain on *nix/X11 platforms, using the KDE 4 libraries.
  16. %prep
  17. %setup
  18. %build
  19. CXXFLAGS="$RPM_OPT_FLAGS" qmake-qt4
  20. make
  21. %install
  22. if [ -d $RPM_BUILD_ROOT ]; then rm -rf $RPM_BUILD_ROOT; fi
  23. # Install KTIGCC
  24. mkdir -p $RPM_BUILD_ROOT
  25. make install INSTALL_ROOT=$RPM_BUILD_ROOT
  26. # KTIGCC icon
  27. mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/icons/hicolor/16x16/apps
  28. cp -pf images/ktigcc.png ${RPM_BUILD_ROOT}%{_datadir}/icons/hicolor/16x16/apps/ktigcc.png
  29. mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/icons/hicolor/32x32/apps
  30. cp -pf images/icon.png ${RPM_BUILD_ROOT}%{_datadir}/icons/hicolor/32x32/apps/ktigcc.png
  31. mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/icons/hicolor/16x16/mimetypes
  32. pushd ${RPM_BUILD_ROOT}%{_datadir}/icons/hicolor/16x16/mimetypes
  33. ln -s ../apps/ktigcc.png application-x-tigcc-project.png
  34. ln -s application-x-tigcc-project.png gnome-mime-application-x-tigcc-project.png
  35. popd
  36. mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/icons/hicolor/32x32/mimetypes
  37. pushd ${RPM_BUILD_ROOT}%{_datadir}/icons/hicolor/32x32/mimetypes
  38. ln -s ../apps/ktigcc.png application-x-tigcc-project.png
  39. ln -s application-x-tigcc-project.png gnome-mime-application-x-tigcc-project.png
  40. popd
  41. # Menu entry
  42. mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/applications
  43. cat >${RPM_BUILD_ROOT}%{_datadir}/applications/ktigcc.desktop <<EOF1
  44. [Desktop Entry]
  45. Name=KTIGCC
  46. Comment=TIGCC IDE for KDE
  47. GenericName=TIGCC IDE for KDE
  48. Encoding=UTF-8
  49. Version=1.0
  50. Type=Application
  51. Exec=%{tigccdir}/bin/ktigcc
  52. Icon=ktigcc
  53. Terminal=false
  54. Categories=Development;
  55. MimeType=application/x-tigcc-project
  56. EOF1
  57. desktop-file-install --delete-original --vendor tigcc \
  58. --dir ${RPM_BUILD_ROOT}%{_datadir}/applications \
  59. ${RPM_BUILD_ROOT}%{_datadir}/applications/ktigcc.desktop
  60. # GNOME (shared-mime-info) MIME type registration
  61. mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/mime/packages
  62. cat >${RPM_BUILD_ROOT}%{_datadir}/mime/packages/ktigcc.xml <<EOF2
  63. <?xml version="1.0" encoding="UTF-8"?>
  64. <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
  65. <mime-type type="application/x-tigcc-project">
  66. <sub-class-of type="text/plain" />
  67. <comment>TIGCC Project</comment>
  68. <glob pattern="*.[tT][pP][rR]" />
  69. </mime-type>
  70. </mime-info>
  71. EOF2
  72. # KDE (legacy) MIME type registration
  73. mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/mimelnk/application
  74. cat >${RPM_BUILD_ROOT}%{_datadir}/mimelnk/application/x-tigcc-project.desktop <<EOF3
  75. [Desktop Entry]
  76. Encoding=UTF-8
  77. Type=MimeType
  78. MimeType=application/x-tigcc-project
  79. Icon=application-x-tigcc-project
  80. Patterns=*.tpr;*.TPR;
  81. Comment=TIGCC Project
  82. [Property::X-KDE-text]
  83. Type=bool
  84. Value=true
  85. EOF3
  86. %post
  87. touch --no-create %{_datadir}/icons/hicolor || :
  88. %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
  89. update-mime-database %{_datadir}/mime > /dev/null 2>&1 || :
  90. update-desktop-database %{_datadir}/applications > /dev/null 2>&1 || :
  91. %postun
  92. touch --no-create %{_datadir}/icons/hicolor || :
  93. %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
  94. update-mime-database %{_datadir}/mime > /dev/null 2>&1 || :
  95. update-desktop-database %{_datadir}/applications > /dev/null 2>&1 || :
  96. %clean
  97. rm -rf $RPM_BUILD_ROOT
  98. %files
  99. %defattr(-, root, root)
  100. %{tigccdir}/bin/ktigcc
  101. %{_datadir}/icons/hicolor/16x16/apps/ktigcc.png
  102. %{_datadir}/icons/hicolor/16x16/mimetypes/application-x-tigcc-project.png
  103. %{_datadir}/icons/hicolor/16x16/mimetypes/gnome-mime-application-x-tigcc-project.png
  104. %{_datadir}/icons/hicolor/32x32/apps/ktigcc.png
  105. %{_datadir}/icons/hicolor/32x32/mimetypes/application-x-tigcc-project.png
  106. %{_datadir}/icons/hicolor/32x32/mimetypes/gnome-mime-application-x-tigcc-project.png
  107. %{_datadir}/applications/tigcc-ktigcc.desktop
  108. %{_datadir}/mime/packages/ktigcc.xml
  109. %{_datadir}/mimelnk/application/x-tigcc-project.desktop
  110. %doc %{tigccdir}/doc/ktigcc
  111. %changelog
  112. * Mon Apr 30 2007 Kevin Kofler <Kevin@tigcc.ticalc.org>
  113. Use standard icon name for the mimetype icon symlink.
  114. Add compatibility symlink with the legacy name with the gnome-mime- prefix.
  115. * Thu Mar 8 2007 Kevin Kofler <Kevin@tigcc.ticalc.org>
  116. Bump version to 1.80.
  117. Update BuildRequires and Requires.
  118. Use versioned tarball and source directory names.
  119. Run qmake-qt4 instead of qmake.
  120. * Mon Jan 29 2007 Kevin Kofler <Kevin@tigcc.ticalc.org>
  121. Bump version to 1.07.
  122. * Sat Nov 25 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  123. Bump version to 1.06.
  124. * Tue Oct 24 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  125. Bump version to 1.05.
  126. Require qt-devel instead of /usr/bin/assistant to fix installation on FC6.
  127. * Mon Sep 25 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  128. Bump version to 1.04.
  129. * Sun Sep 17 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  130. Bump version to 1.03.
  131. * Mon Sep 4 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  132. Bump version to 1.02.
  133. * Mon Aug 21 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  134. Bump version to 1.01.
  135. * Sun Aug 20 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  136. Drop date from version and bump to 1.00.
  137. Don't use macros to define nvr.
  138. * Fri Aug 18 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  139. Install both 16x16 and 32x32 versions of the icon.
  140. Associate *.tpr with KTIGCC (in both KDE and GNOME).
  141. Don't require desktop-file-utils for post and postun (not needed in FC5+).
  142. * Sun Aug 13 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  143. Require ktigcc-completion-data.
  144. * Mon Aug 7 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  145. Bump version from 0.0.date (alpha) to 0.80.date (beta).
  146. * Fri Aug 4 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  147. Remove no longer needed Kate ASM syntax descriptions.
  148. * Sun Jul 30 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  149. Bump TIGCC requirement.
  150. * Wed Jul 26 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  151. Require kdebase (needed at least for proxy settings).
  152. Install icon and use it in the .desktop file.
  153. * Sun Jul 23 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  154. Use libti*-devel instead of libti* in BuildRequires.
  155. BuildRequire libti* 20060723.
  156. * Tue Jul 18 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  157. Require ctags.
  158. * Mon Jul 17 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  159. BuildRequire all the version 2 tilibs.
  160. * Sat Jul 15 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  161. Require at least kdelibs 3.5.2 (needed for KProcess::MergedStderr).
  162. * Fri Jun 16 2006 Kevin Kofler <Kevin@tigcc.ticalc.org>
  163. First Fedora RPM.