Always build pacrunners as separate modules, not libproxy builtins
---- libproxy-0.4.8/libproxy/cmake/modules.cmk.orig 2012-10-05 17:15:58.655470278 +0200
-+++ libproxy-0.4.8/libproxy/cmake/modules.cmk 2012-10-05 17:47:10.435431265 +0200
-@@ -19,10 +19,7 @@
- include(cmake/modules/pacrunner_webkit.cmk)
+--- libproxy-0.4.18/libproxy/cmake/modules.cmk.orig 2023-02-26 19:37:25.969337262 +0100
++++ libproxy-0.4.18/libproxy/cmake/modules.cmk 2023-02-26 19:51:16.691503520 +0100
+@@ -21,12 +21,7 @@ include(cmake/modules/pacrunner_webkit.c
+ include(cmake/modules/pacrunner_duktape.cmk)
# Build the pacrunner into libproxy unless we are building for multiple engines
-set(BIPR 1 CACHE BOOL "Build internal pacrunner? (Always false when building more than one PR")
--if((MOZJS_FOUND AND WEBKIT_FOUND) OR (MOZJS_FOUND AND NATUS_FOUND) OR (WEBKIT_FOUND AND NATUS_FOUND))
+-
+-math(EXPR NUM_PACRUNNER "${MOZJS_FOUND}+${NATUS_FOUND}+${WEBKIT_FOUND}+${DUKTAPE_FOUND}")
+-if(NUM_PACRUNNER GREATER 1)
- set(BIPR 0)
-endif()
+set(BIPR 0)
#
## Module definition
-@@ -41,7 +41,7 @@
- set(NM_BUILD 1)
- endif(NM_FOUND OR NMold_FOUND)
- px_module(network_networkmanager "${NM_BUILD}" 0 ${NM_LIBRARIES}${NMold_LIBRARIES})
--px_module(pacrunner_mozjs 0 ${BIPR} ${MOZJS_LIBRARIES})
-+px_module(pacrunner_mozjs "${MOZJS_FOUND}" ${BIPR} ${MOZJS_LIBRARIES})
- px_module(pacrunner_natus "${NATUS_FOUND}" ${BIPR} ${NATUS_LIBRARIES})
- px_module(pacrunner_webkit "${WEBKIT_FOUND}" ${BIPR} ${WEBKIT_LIBRARIES})
- px_module(wpad_dns_alias 1 1)
#
# Conditional build:
%bcond_without kde # KDE 4/5 config plugin
+%bcond_without duktape # Duktape pacrunner plugin
%bcond_without mozjs # MozJS pacrunner plugin
%bcond_with natus # Natus pacrunner plugin [doesn't build with natus 0.2.1]
%bcond_without webkit # WebKit pacrunner plugin
Summary: Library for automatic proxy configuration management
Summary(pl.UTF-8): Biblioteka do automatycznego zarządzania konfiguracją proxy
Name: libproxy
-Version: 0.4.17
-Release: 7
+Version: 0.4.18
+Release: 1
License: LGPL v2.1+
Group: Libraries
#Source0Download: https://github.com/libproxy/libproxy/releases
Source0: https://github.com/libproxy/libproxy/archive/%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: 74af4aa1e7920f3b6117203d55a9c524
+# Source0-md5: 21d13e5d699c3c21ab5eb2260ed9247a
Patch0: %{name}-pac-modules.patch
URL: https://libproxy.github.io/libproxy/
BuildRequires: NetworkManager-devel
BuildRequires: cmake >= 2.6
BuildRequires: dbus-devel
+%{?with_duktape:BuildRequires: duktape-devel}
BuildRequires: glib2-devel >= 1:2.26
%{?with_webkit:BuildRequires: gtk-webkit4-devel >= 2.6}
BuildRequires: libstdc++-devel >= 6:7
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
Requires: libstdc++-devel
-Obsoletes: libproxy-static
+Obsoletes: libproxy-static < 0.4
%description devel
Header files for libproxy library.
Wtyczka konfiguracji pacrunner dla libproxy, do odczytu ustawień proxy
z pacrunnera.
+%package duktape
+Summary: Duktape pacrunner plugin for libproxy
+Summary(pl.UTF-8): Wtyczka pacrunner Duktape dla libproxy
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description duktape
+Duktape pacrunner plugin for libproxy, to get proxy from WPAD/PAC
+script using Duktype engine.
+
+%description duktape -l pl.UTF-8
+Wtyczka pacrunner Duktape dla libproxy, do pobierania proxy ze skryptu
+WPAD/PAC przy użyciu silnika Duktype.
+
%package mozjs
Summary: MozJS pacrunner plugin for libproxy
Summary(pl.UTF-8): Wtyczka pacrunner MozJS dla libproxy
-DPYTHON2_SITEPKG_DIR=%{py_sitescriptdir} \
-DPYTHON3_SITEPKG_DIR=%{py3_sitescriptdir} \
%{?with_mono:-DWITH_DOTNET=ON -DGMCS_EXECUTABLE=/usr/bin/mcs} \
+ %{!?with_duktape:-DWITH_DUKTAPE=OFF} \
%{!?with_kde:-DWITH_KDE=OFF} \
- %{!?with_mozjs:-DWITH_MOZJS=OFF} \
+ %{?with_mozjs:-DWITH_MOZJS=ON} \
-DWITH_VALA=ON \
%{!?with_webkit:-DWITH_WEBKIT=OFF} \
%{?with_webkit:-DWITH_WEBKIT3=ON}
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/%{name}/%{version}/modules/config_pacrunner.so
+%if %{with duktape}
+%files duktape
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/%{name}/%{version}/modules/pacrunner_duktape.so
+%endif
+
%if %{with mozjs}
%files mozjs
%defattr(644,root,root,755)