net/libproxy: fix symbol versionning on FreeBSD 14
latest update of libproxy added a check on the toolchain to verify if
symbols versionning is supported, but this test fails on FreeBSD 14.
net/libproxy: pull in two upstream commits addressing non-GNU linkers
- Support -M <mapfile> option for Solaris/illumos ld
- Fix symbol versioning with LLD
net/libproxy: temporarily mark LLD_UNSAFE for symbol versioning
LLD being stricter than BFD results in a failed configure check for
version script support, which means no symbol versions linked into
the shared library:
Command line: `cc /wrkdirs/usr/ports/net/libproxy/work/libproxy-0.5.9/_build/meson-private/tmps6kwi6ne/testfile.c -o /wrkdirs/usr/ports/net/libproxy/work/libproxy-0
.5.9/_build/meson-private/tmps6kwi6ne/output.exe -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -D_FILE_OFFSET_BITS=64 -O0 -Werror=implicit-function-declar
ation -Wl,--fatal-warnings -Wl,--version-script,/wrkdirs/usr/ports/net/libproxy/work/libproxy-0.5.9/src/libproxy/libproxy.map` -> 1
stderr:
ld: error: version script assignment of 'LIBPROXY_0.4.16' to symbol 'px_proxy_factory_new' failed: symbol not defined
ld: error: version script assignment of 'LIBPROXY_0.4.16' to symbol 'px_proxy_factory_get_proxies' failed: symbol not defined
ld: error: version script assignment of 'LIBPROXY_0.4.16' to symbol 'px_proxy_factory_free_proxies' failed: symbol not defined
ld: error: version script assignment of 'LIBPROXY_0.4.16' to symbol 'px_proxy_factory_free' failed: symbol not defined
ld: error: version script assignment of 'LIBPROXY_0.5.5' to symbol 'px_proxy_factory_get_type' failed: symbol not defined
ld: error: version script assignment of 'LIBPROXY_0.5.5' to symbol 'px_proxy_factory_copy' failed: symbol not defined
cc: error: linker command failed with exit code 1 (use -v to see invocation)
-----------
Compiler for C supports link arguments -Wl,--version-script,/wrkdirs/usr/ports/net/libproxy/work/libproxy-0.5.9/src/libproxy/libproxy.map: NO
Upstream issue opened: https://github.com/libproxy/libproxy/issues/320
Reported by: tijl
net/libproxy: update to 0.5.9
Completely rewritten since 0.5.0. Plugin ports are gone, they are
now built directly into the library.
PR: 284088
Reviewed by: arrowd
exp-run by: antoine
Differential Revision: https://reviews.freebsd.org/D48469
all: drop support for expired FreeBSD 14.0
Simplify expressions for FreeBSD 13.X
Reviewed by: many
Differential Revision: https://reviews.freebsd.org/D46601
*/*: llvm15 build fixes
llvm15 was also merged into 13.2-STABLE effective from OSVERSION
1302505. Fix the ports that failed to build with llvm15.
Approved by: portmgr (blanket)
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
This commit implements such a proposal and moves one of the WWW: entries
of each pkg-descr file into the respective port's Makefile. A heuristic
attempts to identify the most relevant URL in case there is more than
one WWW: entry in some pkg-descr file. URLs that are not moved into the
Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr
files in order to preserve them.
There are 1256 ports that had no WWW: entries in pkg-descr files. These
ports will not be touched in this commit.
The portlint port has been adjusted to expect a WWW entry in each port
Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as
deprecated.
Approved by: portmgr (tcberner)
net/libproxy: update to 0.4.17
- mark libproxy-mozjs borken
- add new port for pacrunner
- drop support for python2
Changelog:
- 0.4.16:
* Port to, and require, SpiderMonkey 68
* Use closesocket() instead of close() on Windows
* Add symbol versions - be ready to introduce new APIs as needed
* Add public px_proxy_factory_free_proxies function
* Add PacRunner config backend (largely untested; feedback welcome!)
* Small performance improvements
* pxgsettings: use the correct syntax to connect to the changed signal (silences annoying output on console)
* Support python3 up to version 3.9
* Fix buffer overflow when PAC is enabled (CVE-2020-26154)
* Rewrite url::recvline to be nonrecursive (CVE-2020-25219)
* Remove nonfunctional and crashy pacrunner caching
* Never use system libmodman (no other consumers, not maintained)
- 0.4.17:
* python bindings: fix "TypeError: argtypes must be a sequence of types" (#125)
Create desktop@ as maintainer of some shared desktop ports
This idea has been around for quite some time. Time to make it happen.
In order to share the load on the ports required by multiple desktop
environments start to share the responsibility of maintainership.
This is the initial list that came to mind, but we can probably extend it, to
include another handful of ports.
WWW: https://wiki.freebsd.org/DesktopTeam
Mailing List: https://lists.freebsd.org/mailman/listinfo/freebsd-desktop
Approved by: swills, kwm (gnome), madpilot (xfce)
Differential Revision: https://reviews.freebsd.org/D22389
Remove expired webkit-gtk2 and webkit-gtk3 ports.
Bump graphics/variety deprecation date, there is a patch for a update which
uses webkit2-gtk3 in ports/236180 but I had issues that I could't fix.
Change cmake default behaviour to outsource.
Ports that build out of source now simply can use "USES=cmake"
instead of "USES=cmake:outsource". Ports that fail to build
out of source now need to specify "USES=cmake:insource".
I tried to only set insource where explictely needed.
PR: 232038
Exp-run by: antoine
Update net/libproxy to 0.4.15
* this release switched the build system to cmake
* move libproxy-gnome to libproxy-gnome2 for consistency
* add new slave libproxy-webkit3
* try to simplify the whole thing
* bump revisions in the dependencies
Reviewed by: gnome (kwm), mat
Differential Revision: https://reviews.freebsd.org/D15655
net/libproxy: unbreak build with Clang 6 (C++14 by default)
libproxy/test/get-pac-test.cpp:48:10: error: assigning to 'int' from incompatible type '__bind<int &, sockaddr *, unsigned long>'
ret = bind(m_sock, (sockaddr*)&addr, sizeof (struct sockaddr_in));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Reported by: antoine (via bug 224669)
Update libproxy and its slave ports to 0.4.12.
After being dormant since 2013, libproxy development picked up some steam at
the end of last year, and the project moved from Google Code to GitHub,
where its releases are also being hosted. A summary of changes between 0.4.6
and 0.4.12 can be found here:
https://github.com/libproxy/libproxy/blob/0.4.12/NEWS
The libproxy ports themselves have undergone several changes too:
* net/libproxy
- Drop a lot of patches that are no longer necessary.
- Add a few patches that I have sent upstream, and add some context to the
0.4.6 patches that are still required.
- Explicitly disable a few build options (.NET bindings, for example).
- Switch to an out-of-source CMake build (also applies to the slave
ports).
- Drop the unnecessary post-install target, likely added before pkg and
our ports system got smart enough to remove directories when needed.
* net/libproxy-gnome
- Explicitly add dependency on devel/glib20 as the code links against
GObject.
- Make it clear that this plug-in targets GNOME2 desktops and uses GConf
to read proxy settings.
* net/libproxy-gnome3
- New port. Similar to libproxy-gnome, but targets GNOME3/Mate and reads
proxy settings via GSettings instead. libproxy-gnome retained its name
to avoid confusing users and requiring instructions in UPDATING.
* net/libproxy-kde
- The KDE configuration plug-in has been rewritten upstream and no longer
links against Qt or any KDE libraries. Instead, it just has a run-time
dependency on either kreadconfig (from KDE4) or kreadconfig5 (from KDE
Frameworks 5).
* net/libproxy-mozjs
- Resurrect the port; the plug-in has been rewritten and now uses
lang/spidermonkey185 to parse the JavaScript in .pac files.
* net/libproxy-webkit
- Switch to depending www/webkit-gtk3 instead of www/webkit-gtk2. In
practice, there is no huge difference since libproxy only uses the
JavaScriptCore layer (which is toolkit-independent) to parse .pac files.
Finally, thanks to mat@ for answering some questions about libproxy-perl and
which Perl patches still needed to be retained or rewritten.
Approved by: gnome (kwm)
Modernize net/libproxy-python and fix dependencies.
In preparation for updating the libproxy ports to 0.4.12, first land some
changes that also apply to 0.4.6 and can be MFH'ed.
- Make net/libproxy a run-time dependency: we only install .py files in this
port, and they only load libproxy.so when being run. Consequently, also set
NO_ARCH=yes.
- Set NO_BUILD=yes and modernize the installation. Instead of having an empty
do-build target and invoking Python's compileall.py in post-build, do it like
most other ports and call it in post-install (this requires guarding the
post-install target in net/libproxy's Makefile).
We also pass -d to compileall.py to avoid having ${STAGEDIR} in the .pyc and
.pyo files (and shown in exception tracebacks).
- Let the port handle installation instead of defining do-install. We just need
to set INSTALL_WRKSRC appropriately to avoid installing more files than we
want.
Approved by: gnome (kwm)
* Add PORTSCOUT macros to only show stable gnome versions. * Fix the PORTSCOUT macro in devel/glib20-reference/bsd.gnome-reference.mk so that all -reference ports get ignored. * Add some PORTSCOUT=ignore:1 here and there for software that won't get any updates anymore. Or are slave ports, so only the master port will get checked.
MASTER_SITES cleanup.
- Replace ${MASTER_SITE_FOO} with FOO.
- Merge MASTER_SITE_SUBDIR into MASTER_SITES when possible. (This means 99.9%
of the time.)
- Remove occurrences of MASTER_SITE_LOCAL when no subdirectory was present and
no hint of what it should be was present.
- Fix some logic.
- And generally, make things more simple and easy to understand.
While there, add magic values to the FESTIVAL, GENTOO, GIMP, GNUPG, QT and
SAMBA macros.
Also, replace some EXTRACT_SUFX occurences with USES=tar:*.
Checked by: make fetch-urlall-list
With hat: portmgr
Sponsored by: Absolight
Add libproxy, a library that provides automatic proxy configuration management. Plug-ins are available for GNOME, KDE, Mozilla, and WebKit.
WWW: http://code.google.com/p/libproxy/