libproxy-vl.spec 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335
  1. %bcond_with mozjs
  2. %define _unpackaged_files_terminate_build 1
  3. Summary: A library handling all the details of proxy configuration
  4. Name: libproxy
  5. Version: 0.4.15
  6. Release: 3%{?_dist_release}
  7. Group: system
  8. Vendor: Project Vine
  9. Distribution: Vine Linux
  10. License: LGPLv2+
  11. URL: http://libproxy.github.io/libproxy
  12. Source0: https://github.com/libproxy/libproxy/releases/download/%{version}/libproxy-%{version}.tar.xz
  13. Patch0: libproxy-0.4.15-python38.patch
  14. Patch1000: CVE-2020-25219.patch
  15. BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
  16. BuildRequires: python-devel
  17. BuildRequires: python3-devel
  18. #Virtual Provides - We need either mozjs or WebKit
  19. %if %{with mozjs}
  20. Requires: %{name}-pac >= %{version}
  21. %endif
  22. #
  23. Requires: libproxy-python = %{version}-%{release}
  24. Requires: libproxy-bin = %{version}-%{release}
  25. Obsoletes: %{name}-mozjs < 1.4.15
  26. Obsoletes: %{name}-webkitgtk3 < 1.4.15
  27. BuildRequires: cmake
  28. # gnome
  29. BuildRequires: GConf2-devel
  30. %if %{with mozjs}
  31. # mozjs
  32. BuildRequires: mozjs >= 38
  33. %endif
  34. # NetworkManager
  35. BuildRequires: NetworkManager-libnm-devel
  36. BuildRequires: dbus-devel
  37. BuildRequires: glib2
  38. # webkit (gtk)
  39. BuildRequires: webkitgtk4-devel
  40. # kde
  41. BuildRequires: libXmu-devel
  42. BuildRequires: libX11-devel
  43. BuildRequires: python-rpm-macros
  44. BuildRequires: python3-rpm-macros
  45. Provides: %{name}-webkit = %{version}-%{release}
  46. Obsoletes: %{name}-webkit < %{version}-%{release}
  47. %description
  48. libproxy offers the following features:
  49. * extremely small core footprint (< 35K)
  50. * no external dependencies within libproxy core
  51. (libproxy plugins may have dependencies)
  52. * only 3 functions in the stable external API
  53. * dynamic adjustment to changing network topology
  54. * a standard way of dealing with proxy settings across all scenarios
  55. * a sublime sense of joy and accomplishment
  56. Non-default rpmbuild options:
  57. --with webkit: Enable WebKit-gtk support
  58. %package bin
  59. Summary: Binary to test %{name}
  60. Group: network
  61. Requires: %{name} = %{version}-%{release}
  62. %description bin
  63. The %{name}-bin package contains the proxy binary for %{name}
  64. %package python
  65. Summary: Binding for %{name} and python
  66. Group: programming
  67. Requires: %{name} = %{version}-%{release}
  68. %description python
  69. The %{name}-python package contains the python binding for %{name}
  70. %package python3
  71. Summary: Binding for %{name} and python
  72. Group: programming
  73. Requires: %{name} = %{version}-%{release}
  74. %description python3
  75. The %{name}-python package contains the python binding for %{name}
  76. %package gnome
  77. Summary: Plugin for %{name} and gnome
  78. Group: system
  79. Requires: %{name} = %{version}-%{release}
  80. %description gnome
  81. The %{name}-gnome package contains the %{name} plugin for gnome.
  82. %package kde
  83. Summary: Plugin for %{name} and kde
  84. Group: system
  85. Requires: %{name} = %{version}-%{release}
  86. %description kde
  87. The %{name}-kde package contains the %{name} plugin for kde.
  88. %if %{with mozjs}
  89. %package mozjs
  90. Summary: Plugin for %{name} and mozjs
  91. Group: system
  92. Requires: %{name} = %{version}
  93. #Tweak this according to the current gecko-libs version
  94. Requires: js
  95. Provides: %{name}-pac = %{version}-%{release}
  96. %description mozjs
  97. The %{name}-mozjs package contains the %{name} plugin for mozjs.
  98. %package webkitgtk4
  99. Summary: Plugin for %{name} and webkitgtk4
  100. Group: system
  101. Requires: %{name} = %{version}
  102. Provides: %{name}-pac = %{version}-%{release}
  103. %description webkitgtk4
  104. The %{name}-webkitgtk3 package contains the %{name} plugin for
  105. webkitgtk3.
  106. %endif
  107. %package devel
  108. Summary: Development files for %{name}
  109. Group: programming
  110. Requires: %{name} = %{version}-%{release}
  111. Requires: pkgconfig
  112. %description devel
  113. The %{name}-devel package contains libraries and header files for
  114. developing applications that use %{name}.
  115. %debug_package
  116. %prep
  117. %setup -q
  118. %patch0 -p1
  119. %patch1000 -p1
  120. #sed -i "s|mozjs185>=1.8.5|mozjs185|" libproxy/cmake/modules/pacrunner_mozjs.cmk
  121. %build
  122. %cmake \
  123. -DLIBEXEC_INSTALL_DIR=%{_libexecdir} \
  124. -DMODULE_INSTALL_DIR=%{_libdir}/%{name}/%{version}/modules \
  125. -DWITH_PERL=OFF \
  126. -DWITH_WEBKIT3=ON \
  127. -DWITH_KDE=ON \
  128. .
  129. make VERBOSE=1 %{?_smp_mflags}
  130. %install
  131. rm -rf $RPM_BUILD_ROOT
  132. make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p"
  133. find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
  134. %clean
  135. rm -rf $RPM_BUILD_ROOT
  136. %post -p /sbin/ldconfig
  137. %postun -p /sbin/ldconfig
  138. %files
  139. %defattr(-,root,root,-)
  140. %license COPYING
  141. %doc AUTHORS README
  142. %{_libdir}/*.so.*
  143. %dir %{_libdir}/%{name}
  144. %dir %{_libdir}/%{name}/%{version}
  145. %dir %{_libdir}/%{name}/%{version}/modules
  146. %{_libdir}/%{name}/%{version}/modules/network_networkmanager.so
  147. %files bin
  148. %defattr(-,root,root,-)
  149. %{_bindir}/proxy
  150. %files python
  151. %defattr(-,root,root,-)
  152. %{python_sitelib}/libproxy.py
  153. %files python3
  154. %defattr(-,root,root,-)
  155. %{python3_sitelib}/libproxy.py
  156. %files gnome
  157. %defattr(-,root,root,-)
  158. %{_libdir}/%{name}/%{version}/modules/config_gnome3.so
  159. %{_libexecdir}/pxgsettings
  160. %files kde
  161. %defattr(-,root,root,-)
  162. %{_libdir}/%{name}/%{version}/modules/config_kde.so
  163. # Build the pacrunner into libproxy unless we are building for multiple engines
  164. %if %{with mozjs}
  165. %files mozjs
  166. %defattr(-,root,root,-)
  167. %{_libdir}/%{name}/%{version}/modules/pacrunner_mozjs.so
  168. %files webkitgtk4
  169. %defattr(-,root,root,-)
  170. %{_libdir}/%{name}/%{version}/modules/pacrunner_webkit.so
  171. %endif
  172. %files devel
  173. %defattr(-,root,root,-)
  174. %{_includedir}/proxy.h
  175. %{_libdir}/*.so
  176. %{_libdir}/pkgconfig/libproxy-1.0.pc
  177. %{_datadir}/cmake/Modules/Findlibproxy.cmake
  178. %changelog
  179. * Tue Sep 15 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4.15-3
  180. - imported Patch1000 to fix CVE-2020-25219 from debian.
  181. - imported Patch0 to support python-3.8 from upstream.
  182. * Sun Apr 12 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4.15-2
  183. - rebuilt with current environment.
  184. * Mon Jan 08 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4.15-1
  185. - updated to 0.4.15.
  186. - enabled python3 support.
  187. - disabled mozjs as default.
  188. - switched to webkitgtk4.
  189. * Thu Jul 07 2016 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.4.11-2
  190. - rebuild with gcc-5.4.0
  191. * Tue Dec 31 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.4.11-1
  192. - update to 0.4.11
  193. - remove Patch0 (libproxy-0.4.7-cmake-modules.patch)
  194. * Thu Feb 16 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.4.7-2
  195. - rebuild with python-2.7.2
  196. * Sun Aug 14 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.4.7-1
  197. - new upstream release
  198. - change BuildRequires: WebKit3-gtk-devel instead of WebKit-gtk-devel
  199. - change BuildRequires: js-devel instead of gecko-devel
  200. - replace Patch0 (libproxy-0.4.7-cmake-modules.patch)
  201. - detele -webkit sub package
  202. - create -webkitgtk3 sub package
  203. * Sun Oct 03 2010 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.4.6-1
  204. - new upstream release
  205. - drop Patch0
  206. - add BuildRequires: cmake, kdelibs-devel
  207. - fix %files (from %{_libdir}/%{name}/%{version}/plugins to %{_libdir}/%{name}/%{version}/modules)
  208. * Sun Sep 26 2010 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.2.3-5
  209. - rebuild with rpm-4.8.1 for pkg-config file
  210. * Tue Feb 02 2010 Shu KONNO <owa@bg.wakwak.com> 0.2.3-4
  211. - rebuild with python-2.6
  212. * Tue Jun 30 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 0.2.3-3
  213. - rebuild with gecko-1.9.1
  214. * Thu Mar 26 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 0.2.3-2
  215. - rebuild with WebKit-gtk-1.0.0-8.svn41944
  216. * Sat Mar 21 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 0.2.3-1
  217. - initial build for Vine Linux
  218. * Mon Mar 9 2009 kwizart < kwizart at gmail.com > - 0.2.3-10
  219. - Rebuild for webkit
  220. - Raise requirement for xulrunner to 1.9.1
  221. * Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.3-9
  222. - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
  223. * Thu Jan 22 2009 kwizart < kwizart at gmail.com > - 0.2.3-8
  224. - Merge NetworkManager module into the main libproxy package
  225. - Main Requires the -python and -bin subpackage
  226. (splitted for multilibs compliance).
  227. * Fri Oct 24 2008 kwizart < kwizart at gmail.com > - 0.2.3-7
  228. - Disable Gnome/KDE default support via builtin modules.
  229. (it needs to be integrated via Gconf2/neon instead).
  230. * Tue Oct 21 2008 kwizart < kwizart at gmail.com > - 0.2.3-6
  231. - Disable Obsoletes.
  232. - Requires ev instead of evr for optionnals sub-packages.
  233. * Tue Oct 21 2008 kwizart < kwizart at gmail.com > - 0.2.3-5
  234. - Use conditionals build.
  235. * Mon Sep 15 2008 kwizart < kwizart at gmail.com > - 0.2.3-4
  236. - Remove plugin- in the name of the packages
  237. * Mon Aug 4 2008 kwizart < kwizart at gmail.com > - 0.2.3-3
  238. - Move proxy.h to libproxy/proxy.h
  239. This will prevent it to be included in the default include path
  240. - Split main to libs and util and use libproxy to install all
  241. * Mon Aug 4 2008 kwizart < kwizart at gmail.com > - 0.2.3-2
  242. - Rename binding-python to python
  243. - Add Requires: gecko-libs >= %%{gecko_version}
  244. - Fix some descriptions
  245. - Add plugin-webkit package
  246. * Fri Jul 11 2008 kwizart < kwizart at gmail.com > - 0.2.3-1
  247. - Convert to Fedora spec
  248. * Fri Jun 6 2008 - dominique-rpm@leuenberger.net
  249. - Updated to version 0.2.3
  250. * Wed Jun 4 2008 - dominique-rpm@leuenberger.net
  251. - Extended spec file to build all available plugins
  252. * Tue Jun 3 2008 - dominique-rpm@leuenberger.net
  253. - Initial spec file for Version 0.2.2