Commit Graph

361 Commits

Author SHA1 Message Date
Charlie Li cc8a1878e0
python.mk: introduce USE_PYTHON=pep517 for PEP-517 support
USE_PYTHON=pep517 takes no arguments. Operation is similar to
USE_PYTHON=distutils, although the build backend specified in
pyproject.toml is to be specified in BUILD_DEPENDS explicitly. A
usage guide and implementation primer is available at:
	https://wiki.freebsd.org/Python/PEP-517

With hat: python
Approved by: fluffy (mentor)
Co-authored by: yuri
PR: 255722
Differential Revision: https://reviews.freebsd.org/D36290
2023-01-11 00:22:16 -05:00
Tobias C. Berner 2b3e37f30c framework: Add new USES=llvm to more easily depend on one an llvm port
USES=llvm supports two kinds of arguments:

* mode
	<none>:		defaults to build
	build:		add a BUILD_DEPENDS on chosen llvm-port
	run:		add a RUN_DEPENDS on chosen llvm-port
	lib:		add a LIB_DEPENDS on chosen llvm-port

* version
	<none>:		defaults to ${LLVM_DEFAULT}
	number:		use explicitly the specified version
	min=number:	use specified min if ${LLVM_DEFAULT} is lower
	max=number:	use specified max if ${LLVM_DEFAULT} is higher

An example usage might be:
	USES=	llvm
  or
	USES=	llvm:13,build
  or
	USES=	llvm:min=14,lib

The following variables are exposed to be used in the ports tree at the moment:
	* LLVM_VERSION  version chosen from the arguments to llvm.mk
	* LLVM_PORT     chosen llvm port
	* LLVM_CONFIG   llvm-config of the chosen port
	* LLVM_LIBLLVM  libLLVM.so of the chosen port
	* LLVM_PREFIX   installation prefix of the chosen port

Reviewed by:		manu, bapt
Differential Revision:	https://reviews.freebsd.org/D37728
2022-12-17 21:20:28 +01:00
Baptiste Daroussin ee697f183b CHANGES: document the 3 new features 2022-10-26 10:34:03 +02:00
Adam Weinberger 537a051cf5 CHANGES: Add a note for USES=luajit 2022-10-14 11:16:22 -06:00
Felix Palmen ddae4e92d8 Mk/Uses: always use colon for build/run suffix
Most USES use a colon for build/run(/test) suffixes. Change kde.mk,
qt.mk and pyqt.mk to do the same, and update all ports using that.

Document in CHANGES.

PR:			266034
Exp-run by:		antoine
Approved by:		tcberner (mentor)
Differential Revision:	https://reviews.freebsd.org/D36349
2022-09-11 12:20:14 +02:00
Stefan Eßer 9f4ff63512 CHANGES: document move of WWW from pkg-descr files to Makefiles
Approved by:	portmgr (implicit)
2022-09-08 00:02:34 +02:00
Tobias C. Berner da71ecd25f CHANGES: document how to use vala.mk 2022-08-26 19:02:28 +02:00
Tobias C. Berner f53336cefc CHANGES: add some pointers on how-to use Qt 6 in the tree 2022-08-21 19:31:46 +02:00
Tobias C. Berner 2fc48fb6f7 CHANGES: document removal of 'Created by' lines.
Differential Revision:	https://reviews.freebsd.org/D35023
With hat:	portmgr
2022-07-20 15:09:23 +02:00
Tobias C. Berner ca3f925d6e framework: convert bsd.gstreamer.mk to Uses/gstreamer.mk
- convert bsd.gstreamer.mk to Uses/gstreamer.mk
- convert ports tree to make use of USES=gstreamer
- remove duplicate dependency lines from the tree

Differential Revision: https://reviews.freebsd.org/D35097
2022-04-30 10:03:20 +02:00
Dmitry Marakasov b731fff69c Mk/Uses: Add pytest.mk
Add USES=pytest, a standardized pytest entry point.

This knob adds dependency on pytest and defines do-test target which
calls it "the right way" (respecting TEST_ENV, with proper verbosity,
additional info on skipped tests, and resetting addopts which may
be set by upstream and introduce unwanted options). This allows to
remove duplicate (and in many cases not completely correct) do-test
targets from a lot of pytest consumer ports.

Additionally, it adds PYTEST_IGNORED_TESTS (to list tests which
fail and are expected to fail) and PYTEST_BROKEN_TESTS (to list
tests which fail and needs to be fixed). Both knobs lead to
listed tests being skipped, which is believed to be better than
always failing `test` target, allowing to monitor status of other
tests and better document known failures.

Possible room for improvement:
- Support for pytest plugins (add dependencies and disallow pytest
  from using unlisted plugins which often cause breakages)
- Treat PYTEST_BROKEN_TESTS as xfail to catch the cases when tests
  are fixed.

  Both items seem to require support on pytest side though.

Reviewed by:		tcberner
Differential Revision:	https://reviews.freebsd.org/D34693
2022-04-18 13:32:16 +03:00
Joseph Mingrone 2f029030fe
CHANGES: Document USES=elfctl
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D34125
2022-02-18 15:06:53 -04:00
Loïc Bartoletti 4f0a5e1540 PyQt: Update sip to 6.5.0, reintroduce sip4 and simplify PyQt framework.
SIP:
As mentioned in the update from sip to sip5, this is a transitional version
to remove what is deprecated in sip4.
Sip6 completely removes the deprecated parts.
Unfortunately, some ports — mostly cura things — can not use sip6, so we
reintroduce sip4.

PyQt:
At the same time, we took the opportunity to simplify PyQT and propose only one
package as for devel/pyside2. */py-qt5-* have been merged — excepted chart,
networkauth and webengine — into devel/py-qt5-pyqt.

This allows us to be in adequacy with the packages that the author of these
libraries proposes, namely:

PyQt - devel/py-qt5-pyqt
PyQt-Charts - x11-toolkits/py-qt5-chart
PyQt-NetworkAuth – net/py-qt5-networkauth
PyQt-WebEngine – www/py-qt5-webengine
SIP – devel/py-sip
py-sip - devel/py-qt5-sip
PyQt-builder - devel/py-qtbuilder
Qscintilla - devel/py-qt5-qscintilla2

Reviewed by:	diizzy, kde
Tested by:	kai, rhurlin, arrowd, madpilot
Approved by:	makc, tcberner, kde
Differential Revision:	https://reviews.freebsd.org/D33237
Exp-run by:	antoine
2022-01-27 07:12:26 +01:00
Tobias Kortkamp cca7576243
CHANGES: Catch up to fca135644f 2022-01-17 14:20:25 +01:00
Stefan Eßer 35a26791f4 CHANGES: CPU_AND, CPU_OR, CPU_XOR parameters changed
The CPU_AND, CPU_ANDNOT, CPU_OR, and CPU_XOR macros have been modified
to support programs that have been written for GLIBC.

Describe the changes required to have ports support both the previous
FreeBSD conventions and the new GLIBC compatible parameter list.

MFH:		2022Q1
2022-01-14 20:47:11 +01:00
Tobias C. Berner 45526ecbee framework: Add new USES 'magick' for graphics/ImageMagick*
A new USES has been added to depend on ImageMagick.

	USES=magick

adds a LIB_DEPENDS on graphics/ImageMagick${IMAGEMAGICK_DEFAULT}.

If a specific version is required, use for example

	USES=magick:6        resp.     USES=magick:7

If only a build, run or test is required, use for example

	USES=magick:build    resp.     USES=magick:6,build,test

If a dependency on the nox11 flavor is required, use for example

	USES=magick:nox11    resp.     USES=magick:7,nox11,run,test

See magick.mk for more details on the available flags.

The tree has been completely converted to make use of this.

Approved by:	bapt
Differential Revision: https://reviews.freebsd.org/D32754
2021-12-11 14:50:53 +01:00
Ruslan Makhmatkhanov 625b44fe25 CHANGES: Fix typo 2021-11-22 11:50:20 +03:00
Baptiste Daroussin bcb098e384 fetchindex: make compression format configurable
Add INDEX_COMPRESSION_FORMAT as a variable a user can overwrite via
/etc/make.conf to allow the compression format used for INDEX to be
changed. Available compression formats are: bz2, xz and zst for now.

While here change the default compression format to be .xz (the
smallest), for environement where performance of unxz matters it can
switched to zst.

bz2 format is kept for compatibility with existing tooling.

In order to simplify the code, bsdcat(1) is now used for uncompressing
instead detecting the compression format manually and switch the
decompression tool manually

Note the bzip2 compression format is now considered as deprecated
2021-11-22 09:18:15 +01:00
Baptiste Daroussin bf0d51503b CHANGES: Add missing empty line 2021-10-10 21:45:09 +02:00
Baptiste Daroussin 00e6acceae CHANGES: document recent changes
USES=triggers and the removal INSTALLS_ICONS changes are now documented
2021-10-10 21:45:09 +02:00
Xin LI 974e13b501 net/openldap24-server: Make SASL permanent for OpenLDAP port.
PR:		ports/257374
Reviewed by:	obrien
Approved by:	portmgr (exp-run by antoine)
Differential Revision: https://reviews.freebsd.org/D31301
2021-08-01 01:32:35 -07:00
Tobias C. Berner 5c8adda949 multimedia/{py-,}mlt{-qt5,}: rename to multimedia/{py-,}mlt6{-qt5,}:
- To make it possible to easily import mlt-7 move the current port to
  a versioned directory.

- Add Mk/Uses/mlt.mk to make it easily possible to depend on a given mlt
  version:

  	USES=mlt:6

  will get you a dependency on multimedia/mlt6, while

	USES=mlt:7

  will get you a dependency on the soon to be added multimedia/mlt7

- Switch the port to use cmake as a build system
- While here, provide some more options to make it possible to have
  a leaner package if required

- Bump consumers after rename of the dependency
2021-07-30 20:14:36 +02:00
Mathieu Arnold 5e7bdbf4c1
CHANGES: Document the prepare-commit-msg hook.
(Side note, this commit message was created with it, and the "CHANGES:"
 was already available.)
2021-06-09 12:47:55 +02:00
Dmitry Marakasov 0729af4255 Mk: switch PYTHON_REL to 5 digits to support python 3.10.x
PR:		255013
Differential Revision:	https://reviews.freebsd.org/D29418
Exp-run by:	antoine
Approved by:	wen@, no objection from python@ or portmgr@
2021-05-25 16:55:43 +03:00
Matthias Andree 0e15b5e947 CHANGES: fix typo
fix trailing semicolon to colon on 20210327 date tag
2021-05-22 09:49:06 +02:00
Mathieu Arnold 5d33e04596
framework: Remove $FreeBSD$
Where appropriate fiddle with a few other things.
2021-04-06 16:27:10 +02:00
Baptiste Daroussin 0c5383c3b0 Add a new @touch keyword
it takes 1 pr N arguments, it creates each of the said files
if they do not exist yet

As it is using lua, it means it has the bonus of being cross installable,
rootdir friendly and sandboxed.

Reviewed by:	mat, manu
Differential Revision:	https://reviews.freebsd.org/D29426
2021-03-27 22:18:28 +00:00
Dmitry Marakasov 9d7d7e2ffc Fix indentation 2020-12-02 13:10:47 +00:00
Tobias C. Berner 9578fbc72f Add new default-version variant for librsvg2
New default version for librsvg2.

  Current versions of graphics/librsvg2 are using parts written in rust.
  For architectures that do not have support for rust, and for people
  who prefer not to have, or are not able to compile rust software due
  to hardware limitations, the version can be chosen via this new flag.

  The default on almost all architectures is rust.

  If you prefer no to use rust, add the following to your make.conf:

        DEFAULT_VERSIONS+=librsvg2=legacy

This makes the change committed in r554733 a bit more flexible for people
who are opposed to oxidation.

PR:		251014
Exp-run by:	antoine
2020-11-20 19:02:42 +00:00
Adam Weinberger db15051ca5 Add education virtual category
PR:		248402
Submitted by:	PauAmma
2020-11-20 07:16:06 +00:00
Baptiste Daroussin 6356d8c7e8 Patents are a complicated topic, and their regulation varies depending on
jurisdiction. Patents  are not necessarily related to the license and so
should not be connected to the license framework.

As a project we will officially remove all patent limitations within the
ports tree and leave it to the user or consumer to deal with their local
legislation to determine if they can use the software without legal
restrictions.

Approved by:	core
2020-11-12 16:11:37 +00:00
Mateusz Piotrowski 7036023b2a Do some wordsmithing on the 20201022 entry about Lua @shell. 2020-11-09 14:23:29 +00:00
Mateusz Piotrowski d1682723a1 Fix a typo in the 20150926 entry about @*exec keywords 2020-11-09 13:43:03 +00:00
Baptiste Daroussin 445c660582 Document the addition of @rmempty 2020-10-22 08:22:21 +00:00
Baptiste Daroussin da00cfe67e Fix typos and formatting 2020-10-22 08:09:05 +00:00
Baptiste Daroussin 945a9231f4 Document the @shell rewrite in lua 2020-10-22 08:08:17 +00:00
Danilo G. Baio dd3c7e0af3 Typo 2020-10-02 00:01:07 +00:00
Emmanuel Vadot ebad8741c0 Document the @sample keyword switch to lua. 2020-10-01 20:15:33 +00:00
Baptiste Daroussin 3c15b27041 Document the lua scripts changes with recent pkg addition 2020-10-01 19:58:18 +00:00
Tobias C. Berner 04a80fcecb Add support for test-only dependencies in pyqt.mk
Allow ports to only depend on a component of PyQt for testing.

USES=pyqt:5
USE_PYQT=webengine_test

will add a TEST_DEPENDS on www/py-qt5-webengine

Approved by:	portmgr (mat)
Differential Revision:	https://reviews.freebsd.org/D23241
2020-05-31 09:00:47 +00:00
Mathieu Arnold c671212915 Add PATCH_CONTINUE_ON_FAIL to allow patching to go through all the
patches even if one fail.

This helps when upgrading ports with a large number of patches, like
www/chromium where having to fix one patch, re-do the patching, fix the
fallout, 800 times, is really painful.

This fixes the first attempt at this which would make ports with
multiple patches patching one file somewhat explode.
2020-05-14 14:33:34 +00:00
Baptiste Daroussin 86dce8416e Allow lua scripts in the framworks.
Bump the minimum required pkg version to a version that accepts
properly lua scripts

Lua script offers the advantages over shell scripts that they are
running in a capsicum sandbox and they are natively rootdir friendly

Reviewed by:		portmgr (mat)
Differential Revision:	https://reviews.freebsd.org/D21433
2020-04-29 14:01:05 +00:00
Mathieu Arnold beb1c1fe19 USES=lua gained flavors.
Ports using USES=lua:module or lua:flavors will be flavored.  A range of
supported lua versions can be set using XX-YY (or XX-, or -YY, or simply ZZ)
for ports not supporting all lua versions.

USES=lua sets LUA_FLAVOR that needs to be used on all dependencies of
flavored lua ports, in a similar way as PHP or Python flavors.

PR:		245038
Submitted by:	andrew tao11 riddles org uk
Reviewed by:	mat, kevans, russ haley gmail com
Approved by:	mat (portmgr)
Differential Revision:	https://reviews.freebsd.org/D16494
2020-04-14 15:49:36 +00:00
Baptiste Daroussin a2ac717048 Document the changes regarding the manpage location 2020-01-15 12:08:21 +00:00
Baptiste Daroussin 0ed98fafae Remove the ipv6 virtual category
in 2019 the norm is for applications to support both v4 and v6 version of the ip
stack. Furthermore, the ipv6 category was clearly not consistently spread over
the ports tree defeating the goal of the category.
2019-10-09 12:28:26 +00:00
Baptiste Daroussin f6fd84cfb5 BINARY_WRAPPERS allow to push in front of the PATH wrappers for binaries.
This is useful when 2 tools do provide the same feature, but the configure
scripts do test for some variables which are not in one of the tool.

For example m4 in base is mostly compatible with GNU m4 when called with the -g
arguement. This wrapper allows to use it with build systems that do check for it
calling --version and expecting GNU in the arguments.

Reviewed by:	mat (final discussions on irc)
Differential Revision:	https://reviews.freebsd.org/D21835
2019-10-01 14:33:24 +00:00
Baptiste Daroussin 37203c22d9 Document the support of overlays in CHANGES
Reported by:	many
2019-10-01 14:26:03 +00:00
Guido Falsi e69e6941cc Welcome XFCE 4.14 to the FreeBSD ports tree
- This XFCE release uses almost exclusively gtk3, so the USES=xfce
  now defaults to gtk3
- Make x11-themes/gtk-xfce-engine an optional dependency(disabled
  by default), it only supports gtk2, so would leave miost of this
  XFCE version unthemed.
- Add Greybird as an optional and enabled dependency as a modern
  theme supporting both GTK versions and all other XFCE parts
- The xfce4-vala port is deprecated and removed. The VALA bindings
  are available in the library ports using the GIR and VAPI options
  (on by default)
- Fixed various missing library and portlint warnings (portmgr fixit
  blanket)
- Default Display Manager changed to lightdm (Thanks to woodsb02
  for help)
- Add x11/xfce4-screensaver as an optional dependency to the
  xfce4-goodies (enabled by default)
- Remove dependency on x11-fm/thunar-vfs and deprecate the port.
  It is EOL upstream and the functionality is included in thunar
  itself

Update:
- Added back sysutils/xfce4-places-plugin, updated to 1.8.1
- archivers/thunar-archive-plugin to 0.4.0
- audio/thunar-media-tags-plugin to 0.3.0
- audio/xfce4-mpc-plugin to 0.5.2
- audio/xfce4-pulseaudio-plugin to 0.4.2
- deskutils/xfce4-tumbler to 0.2.7
- devel/thunar-vcs-plugin to 0.2.0 [1]
- devel/xfce4-dev-tools to 4.14.0
- misc/xfce4-appfinder to 4.14.0
- misc/xfce4-weather-plugin to 0.10.0
- multimedia/xfce4-parole to 1.0.4
- sysutils/gigolo to 0.5.0
- sysutils/xfce4-battery-plugin to 1.1.3
- sysutils/xfce4-fsguard-plugin to 1.1.1
- sysutils/xfce4-netload-plugin to 1.3.2
- sysutils/xfce4-power-manage to 1.6.5
- sysutils/xfce4-settings 4.14.1
- sysutils/xfce4-systemload-plugin to 1.2.3
- sysutils/xfce4-wavelan-plugin to 0.6.1
- www/xfce4-smartbookmark-plugin to 0.5.1
- x11-clocks/xfce4-datetime-plugin to 0.8.0
- Added new xfce4-stopwatch-plugin, version 0.3.1
- x11-clocks/xfce4-timer-out-plugin to 1.0.3
- x11-fm/thunar to 1.8.9
- x11-wm/xfce4-desktop to 4.14.1
- x11-wm/xfce4-panel to 4.14.0
- x11-wm/xfce4-session to 4.14.0
- x11-wm/xfce4-wm to 4.14.0
- x11/libexo to 0.12.8
- x11/libxfce4menu to 4.14.1
- x11/libxfce4util to 4.14.0
- x11/xfce4-conf to 4.14.1
- x11/xfce4-dashboard to 0.7.5
- x11/xfce4-screensaver to 0.1.8
- x11/xfce4-screenshooter-plugin to 1.9.6
- x11/xfce4-verve-plugin to 2.0.0

Thanks to: Olivier Duchateau <duchateau.olivier@gmail.com>

PR:		240236
Exp-run by:	antoine
Tested by:	sbruno
Approved by:    sergey.dyatko@gmail.com (maintainer timeout via
		email), portmgr (fixit blanket, port breaks with
		new Thunar if not updated) [1]
Differential Revision:	https://reviews.freebsd.org/D21278
2019-09-19 23:46:33 +00:00
Alexey Dokuchaev a5785566ae Remove superfluous linefeeds and spell Qt properly while here. 2019-03-01 05:11:10 +00:00
Rene Ladan cee43db102 Happy 2019 2019-01-01 00:47:10 +00:00