diff --git a/accessibility/rubygem-atk/Makefile b/accessibility/rubygem-atk/Makefile index 990d1d5276c..b3aab9715b7 100644 --- a/accessibility/rubygem-atk/Makefile +++ b/accessibility/rubygem-atk/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= atk -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= accessibility rubygems MASTER_SITES= RG diff --git a/accessibility/rubygem-atk/distinfo b/accessibility/rubygem-atk/distinfo index 44dfdd68752..42bb4eff973 100644 --- a/accessibility/rubygem-atk/distinfo +++ b/accessibility/rubygem-atk/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209293 -SHA256 (rubygem/atk-3.3.3.gem) = aad395ea1491b2b65e748fa239253c75891a33a11835438b2000f50c3c445ea9 -SIZE (rubygem/atk-3.3.3.gem) = 15872 +TIMESTAMP = 1552410007 +SHA256 (rubygem/atk-3.3.4.gem) = 38c7a57461f48f3cc8544ad90cbe52ed05914bee324f1c71aefb5dfb3a59f17f +SIZE (rubygem/atk-3.3.4.gem) = 15872 diff --git a/astro/josm/Makefile b/astro/josm/Makefile index 44e5ecc2550..8052f4cf54b 100644 --- a/astro/josm/Makefile +++ b/astro/josm/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= josm -PORTVERSION= 14760 +PORTVERSION= 14824 CATEGORIES= astro java MASTER_SITES= http://josm.openstreetmap.de/download/ \ http://mirror.amdmi3.ru/distfiles/ diff --git a/astro/josm/distinfo b/astro/josm/distinfo index 0a1fdc49539..ebc548f7106 100644 --- a/astro/josm/distinfo +++ b/astro/josm/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1549729059 -SHA256 (josm-snapshot-14760.jar) = 51774d689a221f5a9217faaef5f8c1035cb5668e2ca59ab1bad69f11c72f40f9 -SIZE (josm-snapshot-14760.jar) = 13552119 +TIMESTAMP = 1552397877 +SHA256 (josm-snapshot-14824.jar) = 9a6264ed07e9114c4ccdaf4aaf661d9f62a45dbbbcb58b1d2fc2fe9fce2bfb9f +SIZE (josm-snapshot-14824.jar) = 13565003 diff --git a/astro/mkgmap/Makefile b/astro/mkgmap/Makefile index e38743ede52..b762ac734ec 100644 --- a/astro/mkgmap/Makefile +++ b/astro/mkgmap/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= mkgmap -PORTVERSION= r4278 +PORTVERSION= r4283 CATEGORIES= astro converters java MASTER_SITES= http://www.mkgmap.org.uk/download/ \ http://mirror.amdmi3.ru/distfiles/ @@ -14,7 +14,7 @@ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/LICENCE USE_JAVA= yes -JAVA_VERSION= 1.6+ +JAVA_VERSION= 1.8+ NO_BUILD= yes NO_ARCH= yes diff --git a/astro/mkgmap/distinfo b/astro/mkgmap/distinfo index 47c44da075b..cd375920dff 100644 --- a/astro/mkgmap/distinfo +++ b/astro/mkgmap/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1550501924 -SHA256 (mkgmap-r4278.tar.gz) = 2b024b31fc6df3a162c56a1e1b873bc4b78d1f0561fed9a1d0bc76b94af2b95e -SIZE (mkgmap-r4278.tar.gz) = 3397001 +TIMESTAMP = 1552399600 +SHA256 (mkgmap-r4283.tar.gz) = d4b5637377028e92df13c1a69f05a54df19cee7253100df9f6672d757d289245 +SIZE (mkgmap-r4283.tar.gz) = 3397503 diff --git a/astro/py-spacetrack/Makefile b/astro/py-spacetrack/Makefile index 85c3bd49ce0..ecbe627b50f 100644 --- a/astro/py-spacetrack/Makefile +++ b/astro/py-spacetrack/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= spacetrack -PORTVERSION= 0.13.2 +PORTVERSION= 0.13.3 CATEGORIES= astro python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/astro/py-spacetrack/distinfo b/astro/py-spacetrack/distinfo index 1d871b1b349..b5cff2b54b6 100644 --- a/astro/py-spacetrack/distinfo +++ b/astro/py-spacetrack/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1546276704 -SHA256 (spacetrack-0.13.2.tar.gz) = 5d6cf8098be94e35d5aae12d54a42af78bd14320a49e040eab1e9ade8f28012d -SIZE (spacetrack-0.13.2.tar.gz) = 28258 +TIMESTAMP = 1552404238 +SHA256 (spacetrack-0.13.3.tar.gz) = bf47414d45a03f239271a2cfc0092d1c01d9e199107e6e186ff3cecade8d57fd +SIZE (spacetrack-0.13.3.tar.gz) = 29354 diff --git a/audio/libsndfile/Makefile b/audio/libsndfile/Makefile index c440bffdfc4..07f38dc2c76 100644 --- a/audio/libsndfile/Makefile +++ b/audio/libsndfile/Makefile @@ -3,7 +3,7 @@ PORTNAME= libsndfile PORTVERSION= 1.0.28 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= audio MASTER_SITES= http://www.mega-nerd.com/libsndfile/files/ diff --git a/audio/libsndfile/files/patch-CVE-2017-17456_2017-17457_2018-19661_2018-19662 b/audio/libsndfile/files/patch-CVE-2017-17456_2017-17457_2018-19661_2018-19662 new file mode 100644 index 00000000000..a7755b8335e --- /dev/null +++ b/audio/libsndfile/files/patch-CVE-2017-17456_2017-17457_2018-19661_2018-19662 @@ -0,0 +1,90 @@ +From: Hugo Lefeuvre +Date: Mon, 24 Dec 2018 06:43:48 +0100 +Subject: a/ulaw: fix multiple buffer overflows (#432) + +i2ulaw_array() and i2alaw_array() fail to handle ptr [count] = INT_MIN +properly, leading to buffer underflow. INT_MIN is a special value +since - INT_MIN cannot be represented as int. + +In this case round - INT_MIN to INT_MAX and proceed as usual. + +f2ulaw_array() and f2alaw_array() fail to handle ptr [count] = NaN +properly, leading to null pointer dereference. + +In this case, arbitrarily set the buffer value to 0. + +This commit fixes #429 (CVE-2018-19661 and CVE-2018-19662) and +fixes #344 (CVE-2017-17456 and CVE-2017-17457). +--- + src/alaw.c | 9 +++++++-- + src/ulaw.c | 9 +++++++-- + 2 files changed, 14 insertions(+), 4 deletions(-) + +diff --git a/src/alaw.c b/src/alaw.c +index 063fd1a..4220224 100644 +--- src/alaw.c ++++ src/alaw.c +@@ -19,6 +19,7 @@ + #include "sfconfig.h" + + #include ++#include + + #include "sndfile.h" + #include "common.h" +@@ -326,7 +327,9 @@ s2alaw_array (const short *ptr, int count, unsigned char *buffer) + static inline void + i2alaw_array (const int *ptr, int count, unsigned char *buffer) + { while (--count >= 0) +- { if (ptr [count] >= 0) ++ { if (ptr [count] == INT_MIN) ++ buffer [count] = alaw_encode [INT_MAX >> (16 + 4)] ; ++ else if (ptr [count] >= 0) + buffer [count] = alaw_encode [ptr [count] >> (16 + 4)] ; + else + buffer [count] = 0x7F & alaw_encode [- ptr [count] >> (16 + 4)] ; +@@ -346,7 +349,9 @@ f2alaw_array (const float *ptr, int count, unsigned char *buffer, float normfact + static inline void + d2alaw_array (const double *ptr, int count, unsigned char *buffer, double normfact) + { while (--count >= 0) +- { if (ptr [count] >= 0) ++ { if (!isfinite (ptr [count])) ++ buffer [count] = 0 ; ++ else if (ptr [count] >= 0) + buffer [count] = alaw_encode [lrint (normfact * ptr [count])] ; + else + buffer [count] = 0x7F & alaw_encode [- lrint (normfact * ptr [count])] ; +diff --git a/src/ulaw.c b/src/ulaw.c +index e50b4cb..b6070ad 100644 +--- src/ulaw.c ++++ src/ulaw.c +@@ -19,6 +19,7 @@ + #include "sfconfig.h" + + #include ++#include + + #include "sndfile.h" + #include "common.h" +@@ -827,7 +828,9 @@ s2ulaw_array (const short *ptr, int count, unsigned char *buffer) + static inline void + i2ulaw_array (const int *ptr, int count, unsigned char *buffer) + { while (--count >= 0) +- { if (ptr [count] >= 0) ++ { if (ptr [count] == INT_MIN) ++ buffer [count] = ulaw_encode [INT_MAX >> (16 + 2)] ; ++ else if (ptr [count] >= 0) + buffer [count] = ulaw_encode [ptr [count] >> (16 + 2)] ; + else + buffer [count] = 0x7F & ulaw_encode [-ptr [count] >> (16 + 2)] ; +@@ -847,7 +850,9 @@ f2ulaw_array (const float *ptr, int count, unsigned char *buffer, float normfact + static inline void + d2ulaw_array (const double *ptr, int count, unsigned char *buffer, double normfact) + { while (--count >= 0) +- { if (ptr [count] >= 0) ++ { if (!isfinite (ptr [count])) ++ buffer [count] = 0 ; ++ else if (ptr [count] >= 0) + buffer [count] = ulaw_encode [lrint (normfact * ptr [count])] ; + else + buffer [count] = 0x7F & ulaw_encode [- lrint (normfact * ptr [count])] ; diff --git a/audio/libsndfile/files/patch-CVE-2018-19758 b/audio/libsndfile/files/patch-CVE-2018-19758 new file mode 100644 index 00000000000..22fb7cffe2e --- /dev/null +++ b/audio/libsndfile/files/patch-CVE-2018-19758 @@ -0,0 +1,31 @@ +From: Erik de Castro Lopo +Date: Tue, 1 Jan 2019 20:11:46 +1100 +Subject: src/wav.c: Fix heap read overflow + +This is CVE-2018-19758. + +Closes: https://github.com/erikd/libsndfile/issues/435 +--- + src/wav.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/wav.c b/src/wav.c +index 4b943dc..59015a1 100644 +--- src/wav.c ++++ src/wav.c +@@ -1,5 +1,5 @@ + /* +-** Copyright (C) 1999-2016 Erik de Castro Lopo ++** Copyright (C) 1999-2019 Erik de Castro Lopo + ** Copyright (C) 2004-2005 David Viens + ** + ** This program is free software; you can redistribute it and/or modify +@@ -1094,6 +1094,8 @@ wav_write_header (SF_PRIVATE *psf, int calc_length) + psf_binheader_writef (psf, "44", 0, 0) ; /* SMTPE format */ + psf_binheader_writef (psf, "44", psf->instrument->loop_count, 0) ; + ++ /* Loop count is signed 16 bit number so we limit it range to something sensible. */ ++ psf->instrument->loop_count &= 0x7fff ; + for (tmp = 0 ; tmp < psf->instrument->loop_count ; tmp++) + { int type ; + diff --git a/audio/libsndfile/files/patch-Check-MAX_CHANNELS-in-sndfile-deinterleave b/audio/libsndfile/files/patch-Check-MAX_CHANNELS-in-sndfile-deinterleave new file mode 100644 index 00000000000..8636f4a92e2 --- /dev/null +++ b/audio/libsndfile/files/patch-Check-MAX_CHANNELS-in-sndfile-deinterleave @@ -0,0 +1,30 @@ +From: "Brett T. Warden" +Date: Tue, 28 Aug 2018 12:01:17 -0700 +Subject: Check MAX_CHANNELS in sndfile-deinterleave + +Allocated buffer has space for only 16 channels. Verify that input file +meets this limit. + +Fixes #397 +--- + programs/sndfile-deinterleave.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/programs/sndfile-deinterleave.c b/programs/sndfile-deinterleave.c +index e27593e..cb497e1 100644 +--- programs/sndfile-deinterleave.c ++++ programs/sndfile-deinterleave.c +@@ -89,6 +89,13 @@ main (int argc, char **argv) + exit (1) ; + } ; + ++ if (sfinfo.channels > MAX_CHANNELS) ++ { printf ("\nError : Input file '%s' has too many (%d) channels. Limit is %d.\n", ++ argv [1], sfinfo.channels, MAX_CHANNELS) ; ++ exit (1) ; ++ } ; ++ ++ + state.channels = sfinfo.channels ; + sfinfo.channels = 1 ; + diff --git a/audio/libsndfile/files/patch-rf64_arm b/audio/libsndfile/files/patch-rf64_arm new file mode 100644 index 00000000000..17ea45eb0e6 --- /dev/null +++ b/audio/libsndfile/files/patch-rf64_arm @@ -0,0 +1,49 @@ +From: Erik de Castro Lopez +Date: Tue, 20 Jun 2017 00:00:00 +0200 +Subject: fix RF64 on armel/armhf archs + +Origin: upstream +Applied-Upstream: 9d470ee5577d3ccedb1c28c7e0a7295ba17feaf5 +Last-Update: 2017-06-20 +--- + src/rf64.c | 11 +++++++++-- + 1 file changed, 9 insertions(+), 2 deletions(-) + +diff --git a/src/rf64.c b/src/rf64.c +index c373bb0..60a3309 100644 +--- src/rf64.c ++++ src/rf64.c +@@ -339,6 +339,12 @@ rf64_read_header (SF_PRIVATE *psf, int *blockalign, int *framesperblock) + } ; + break ; + ++ case JUNK_MARKER : ++ case PAD_MARKER : ++ psf_log_printf (psf, "%M : %d\n", marker, chunk_size) ; ++ psf_binheader_readf (psf, "j", chunk_size) ; ++ break ; ++ + default : + if (chunk_size >= 0xffff0000) + { psf_log_printf (psf, "*** Unknown chunk marker (%X) at position %D with length %u. Exiting parser.\n", marker, psf_ftell (psf) - 8, chunk_size) ; +@@ -659,7 +665,7 @@ rf64_write_header (SF_PRIVATE *psf, int calc_length) + + if (wpriv->rf64_downgrade && psf->filelength < RIFF_DOWNGRADE_BYTES) + { psf_binheader_writef (psf, "etm8m", RIFF_MARKER, (psf->filelength < 8) ? 8 : psf->filelength - 8, WAVE_MARKER) ; +- psf_binheader_writef (psf, "m4884", JUNK_MARKER, 20, 0, 0, 0, 0) ; ++ psf_binheader_writef (psf, "m4z", JUNK_MARKER, 24, 24) ; + add_fact_chunk = 1 ; + } + else +@@ -735,9 +741,10 @@ rf64_write_header (SF_PRIVATE *psf, int calc_length) + + #endif + ++ /* Padding may be needed if string data sizes change. */ + pad_size = psf->dataoffset - 16 - psf->header.indx ; + if (pad_size >= 0) +- psf_binheader_writef (psf, "m4z", PAD_MARKER, pad_size, make_size_t (pad_size)) ; ++ psf_binheader_writef (psf, "m4z", PAD_MARKER, (unsigned int) pad_size, make_size_t (pad_size)) ; + + if (wpriv->rf64_downgrade && (psf->filelength < RIFF_DOWNGRADE_BYTES)) + psf_binheader_writef (psf, "tm8", data_MARKER, psf->datalength) ; diff --git a/audio/libsndfile/files/patch-typos b/audio/libsndfile/files/patch-typos new file mode 100644 index 00000000000..244fe27a9ce --- /dev/null +++ b/audio/libsndfile/files/patch-typos @@ -0,0 +1,67 @@ +From: IOhannes m zmoelnig +Date: Wed, 5 Oct 2016 00:00:00 +0200 +Subject: fixed spelling errors + +Forwarded: yes +Last-Update: 2016-10-05 + +discovered by lintian +--- + doc/bugs.html | 2 +- + programs/sndfile-convert.c | 2 +- + src/ogg.c | 2 +- + src/wavlike.c | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/doc/bugs.html b/doc/bugs.html +index 3a441fe..addedb8 100644 +--- doc/bugs.html ++++ doc/bugs.html +@@ -31,7 +31,7 @@ +
    +
  • Compilation problems on new platforms. +
  • Errors being detected during the `make check' process. +-
  • Segmentation faults occuring inside libsndfile. ++
  • Segmentation faults occurring inside libsndfile. +
  • libsndfile hanging when opening a file. +
  • Supported sound file types being incorrectly read or written. +
  • Omissions, errors or spelling mistakes in the documentation. +diff --git a/programs/sndfile-convert.c b/programs/sndfile-convert.c +index dff7f79..896838f 100644 +--- programs/sndfile-convert.c ++++ programs/sndfile-convert.c +@@ -317,7 +317,7 @@ main (int argc, char * argv []) + if ((sfinfo.format & SF_FORMAT_SUBMASK) == SF_FORMAT_GSM610 && sfinfo.samplerate != 8000) + { printf ( + "WARNING: GSM 6.10 data format only supports 8kHz sample rate. The converted\n" +- "ouput file will contain the input data converted to the GSM 6.10 data format\n" ++ "output file will contain the input data converted to the GSM 6.10 data format\n" + "but not re-sampled.\n" + ) ; + } ; +diff --git a/src/ogg.c b/src/ogg.c +index 0856f77..e01ebe1 100644 +--- src/ogg.c ++++ src/ogg.c +@@ -193,7 +193,7 @@ ogg_stream_classify (SF_PRIVATE *psf, OGG_PRIVATE* odata) + break ; + } ; + +- psf_log_printf (psf, "This Ogg bitstream contains some uknown data type.\n") ; ++ psf_log_printf (psf, "This Ogg bitstream contains some unknown data type.\n") ; + return SFE_UNIMPLEMENTED ; + } /* ogg_stream_classify */ + +diff --git a/src/wavlike.c b/src/wavlike.c +index 86ebf01..c053da3 100644 +--- src/wavlike.c ++++ src/wavlike.c +@@ -161,7 +161,7 @@ wavlike_read_fmt_chunk (SF_PRIVATE *psf, int fmtsize) + { psf_log_printf (psf, " Bit Width : 24\n") ; + + psf_log_printf (psf, "\n" +- " Ambiguous information in 'fmt ' chunk. Possibile file types:\n" ++ " Ambiguous information in 'fmt ' chunk. Possible file types:\n" + " 0) Invalid IEEE float file generated by Syntrillium's Cooledit!\n" + " 1) File generated by ALSA's arecord containing 24 bit samples in 32 bit containers.\n" + " 2) 24 bit file with incorrect Block Align value.\n" diff --git a/audio/oss/Makefile b/audio/oss/Makefile index d8c52890748..0662b0b8ae5 100644 --- a/audio/oss/Makefile +++ b/audio/oss/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= oss -DISTVERSION= 4.2-build2017 +DISTVERSION= 4.2-build2019 CATEGORIES= audio MASTER_SITES= http://www.opensound.com/developer/sources/stable/bsd/ DISTNAME= ${PORTNAME}-v${DISTVERSION}-src-bsd diff --git a/audio/oss/distinfo b/audio/oss/distinfo index 0663abaa930..e1bfb4e7837 100644 --- a/audio/oss/distinfo +++ b/audio/oss/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1486110185 -SHA256 (oss-v4.2-build2017-src-bsd.tar.bz2) = 8ef2b1b964719b4c356de234d4b28832302027dc23bf636820be1afe1b099972 -SIZE (oss-v4.2-build2017-src-bsd.tar.bz2) = 1714709 +TIMESTAMP = 1552427700 +SHA256 (oss-v4.2-build2019-src-bsd.tar.bz2) = 3eaa2f66cc5f9cc66843eae9ae4601cf7206d00e7229d1f3144a122adea4e7c9 +SIZE (oss-v4.2-build2019-src-bsd.tar.bz2) = 1723557 diff --git a/audio/oss/files/patch-kernel_OS_FreeBSD_os__freebsd.c b/audio/oss/files/patch-kernel_OS_FreeBSD_os__freebsd.c new file mode 100644 index 00000000000..271092de6e5 --- /dev/null +++ b/audio/oss/files/patch-kernel_OS_FreeBSD_os__freebsd.c @@ -0,0 +1,18 @@ +--- kernel/OS/FreeBSD/os_freebsd.c.orig 2019-03-06 07:52:21 UTC ++++ kernel/OS/FreeBSD/os_freebsd.c +@@ -920,15 +920,9 @@ oss_poll (struct cdev *bsd_dev, int events, struct thr + return ev.revents; + } + +-#if defined(D_VERSION_03) && (D_VERSION == D_VERSION_03) + static int + oss_mmap (struct cdev *bsd_dev, vm_ooffset_t offset, vm_paddr_t * paddr, + int nprot, vm_memattr_t *memattr) +-#else +-static int +-oss_mmap (struct cdev *bsd_dev, vm_offset_t offset, vm_paddr_t * paddr, +- int nprot) +-#endif + { + int retval; + int dev; diff --git a/audio/oss/files/patch-kernel_OS_FreeBSD_wrapper_bsddefs.h b/audio/oss/files/patch-kernel_OS_FreeBSD_wrapper_bsddefs.h index 5d54af4237a..9dfb8ff183f 100644 --- a/audio/oss/files/patch-kernel_OS_FreeBSD_wrapper_bsddefs.h +++ b/audio/oss/files/patch-kernel_OS_FreeBSD_wrapper_bsddefs.h @@ -1,12 +1,12 @@ ---- kernel/OS/FreeBSD/wrapper/bsddefs.h.orig 2019-01-12 19:57:42 UTC +--- kernel/OS/FreeBSD/wrapper/bsddefs.h.orig 2019-03-06 07:52:21 UTC +++ kernel/OS/FreeBSD/wrapper/bsddefs.h -@@ -91,6 +91,9 @@ typedef int ddi_iblock_cookie_t; - extern void oss_udelay (unsigned long t); - +@@ -93,8 +93,8 @@ extern void oss_udelay (unsigned long t); #ifdef _KERNEL -+#ifdef memset -+#undef memset -+#endif - #define memset oss_memset + #ifdef memset + #undef memset +-#define memset oss_memset + #endif ++#define memset oss_memset extern void *oss_memset (void *t, int val, int l); #endif + diff --git a/audio/oss/files/patch-setup_srcconf__freebsd.inc b/audio/oss/files/patch-setup_srcconf__freebsd.inc deleted file mode 100644 index 0e72423536d..00000000000 --- a/audio/oss/files/patch-setup_srcconf__freebsd.inc +++ /dev/null @@ -1,14 +0,0 @@ ---- setup/srcconf_freebsd.inc.orig 2014-02-14 22:59:55 UTC -+++ setup/srcconf_freebsd.inc -@@ -10,8 +10,10 @@ check_sysdep (conf_t * conf, struct utsname *un) - static void - add_kernel_flags (FILE * f) - { -+ fprintf (f, "CFLAGS += -DKLD_MODULE "); - # if defined(__x86_64__) - fprintf (f, -- "CFLAGS += -O3 -fno-common -mcmodel=kernel -mno-red-zone -fno-asynchronous-unwind-tables -ffreestanding\n"); -+ "-O3 -fno-common -mcmodel=kernel -mno-red-zone -fno-asynchronous-unwind-tables -ffreestanding -mno-sse"); - # endif -+ fprintf(f, "\n"); - } diff --git a/audio/qjackctl/Makefile b/audio/qjackctl/Makefile index 281e30b0e78..3fdac068121 100644 --- a/audio/qjackctl/Makefile +++ b/audio/qjackctl/Makefile @@ -3,8 +3,7 @@ PORTNAME= qjackctl DISTVERSIONPREFIX= qjackctl_ -DISTVERSION= 0_5_5 -PORTREVISION= 2 +DISTVERSION= 0_5_6 CATEGORIES= audio MAINTAINER= yuri@FreeBSD.org @@ -19,7 +18,7 @@ USES= autoreconf compiler:c++11-lib gl gmake localbase pkgconfig qt:5 GNU_CONFIGURE= yes USE_GITHUB= yes GH_ACCOUNT= rncbc -USE_QT= core gui widgets x11extras xml buildtools_build linguisttools_build qmake_build +USE_QT= core gui network widgets x11extras xml buildtools_build linguisttools_build qmake_build USE_GL= gl USE_CXXSTD= c++11 diff --git a/audio/qjackctl/distinfo b/audio/qjackctl/distinfo index 5273f4272a0..dc9176c2d85 100644 --- a/audio/qjackctl/distinfo +++ b/audio/qjackctl/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1542993820 -SHA256 (rncbc-qjackctl-qjackctl_0_5_5_GH0.tar.gz) = 8e0f7101979a9c38d439883860d54fba5493e0b2437f656332588d6a4ba20e78 -SIZE (rncbc-qjackctl-qjackctl_0_5_5_GH0.tar.gz) = 850499 +TIMESTAMP = 1552445443 +SHA256 (rncbc-qjackctl-qjackctl_0_5_6_GH0.tar.gz) = 03f9a95066378518becbc57d41e10f54c288ca4b217237a7e543bf40c6a339bf +SIZE (rncbc-qjackctl-qjackctl_0_5_6_GH0.tar.gz) = 852026 diff --git a/audio/qsynth/Makefile b/audio/qsynth/Makefile index c511693fad0..063daedd207 100644 --- a/audio/qsynth/Makefile +++ b/audio/qsynth/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= qsynth -PORTVERSION= 0.5.4 -PORTREVISION= 3 +PORTVERSION= 0.5.5 CATEGORIES= audio MASTER_SITES= SF @@ -17,30 +16,32 @@ LIB_DEPENDS= libfluidsynth.so:audio/fluidsynth USES= compiler:c++11-lang gmake pkgconfig qt:5 USE_CXXSTD= c++11 -USE_QT= core gui widgets x11extras buildtools_build linguisttools_build qmake_build +USE_QT= core gui network widgets x11extras buildtools_build \ + linguisttools_build qmake_build GNU_CONFIGURE= yes CONFIGURE_ENV= ac_cv_path_ac_cv_qmake=${QMAKE} \ - ac_cv_path_ac_moc=${MOC} \ - ac_cv_path_ac_uic=${UIC} \ + ac_cv_path_ac_lrelease=${LRELEASE} \ ac_cv_path_ac_lupdate=${LUPDATE} \ - ac_cv_path_ac_lrelease=${LRELEASE} + ac_cv_path_ac_moc=${MOC} \ + ac_cv_path_ac_uic=${UIC} CONFIGURE_ARGS= --localedir=${DATADIR} \ --with-fluidsynth=${LOCALBASE} -LDFLAGS+= -Wl,--as-needed # cf. PR 224488 +# cf. PR 224488 +LDFLAGS+= -Wl,--as-needed -OPTIONS_DEFINE= GRADIENT SYSTEM_TRAY XUNIQUE +OPTIONS_DEFINE= GRADIENT SYSTEM_TRAY XUNIQUE OPTIONS_DEFAULT= GRADIENT SYSTEM_TRAY XUNIQUE -GRADIENT_DESC= Gradient eye-candy +GRADIENT_DESC= Gradient eye-candy SYSTEM_TRAY_DESC= System-tray icon support -XUNIQUE_DESC= X11 unique/single instance +XUNIQUE_DESC= X11 unique/single instance GRADIENT_CONFIGURE_ENABLE= gradient SYSTEM_TRAY_CONFIGURE_ENABLE= system-tray XUNIQUE_CONFIGURE_ENABLE= xunique -XUNIQUE_USE= XORG=x11 +XUNIQUE_USE= XORG=x11 post-patch: @${REINPLACE_CMD} -e ' \ diff --git a/audio/qsynth/distinfo b/audio/qsynth/distinfo index fa63d400ec6..a6e534a24f8 100644 --- a/audio/qsynth/distinfo +++ b/audio/qsynth/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1544100637 -SHA256 (qsynth-0.5.4.tar.gz) = 2d6befb4023f8a64f35d802991d0d413e11d0307e87485428c969b94bb2bf84e -SIZE (qsynth-0.5.4.tar.gz) = 268106 +TIMESTAMP = 1552366772 +SHA256 (qsynth-0.5.5.tar.gz) = 858f52b95642a25f570342d5cf7fafd2a2addb89d567c5b68a3545beb6fda723 +SIZE (qsynth-0.5.5.tar.gz) = 269061 diff --git a/comms/java-simple-serial-connector/Makefile b/comms/java-simple-serial-connector/Makefile index 213d7fb0e8b..4914b2b4477 100644 --- a/comms/java-simple-serial-connector/Makefile +++ b/comms/java-simple-serial-connector/Makefile @@ -2,6 +2,7 @@ PORTNAME= java-simple-serial-connector PORTVERSION= 2.8.0 +PORTREVISION= 1 DISTVERSIONPREFIX= v CATEGORIES= comms java diff --git a/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialPortList.java b/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialPortList.java index 8e43754c1f6..34c8af586e0 100644 --- a/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialPortList.java +++ b/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialPortList.java @@ -4,11 +4,11 @@ PORTNAMES_PATH = "/dev/"; break; } -+ case SerialNativeInterface.OS_FREEBSD: { -+ PORTNAMES_REGEXP = Pattern.compile("cuaU[0-9]{1,3}"); -+ PORTNAMES_PATH = "/dev/"; -+ break; -+ } ++ case SerialNativeInterface.OS_FREEBSD: { ++ PORTNAMES_REGEXP = Pattern.compile("cuaU[0-9]{1,3}$"); ++ PORTNAMES_PATH = "/dev/"; ++ break; ++ } case SerialNativeInterface.OS_WINDOWS: { PORTNAMES_REGEXP = Pattern.compile(""); PORTNAMES_PATH = ""; diff --git a/comms/qtel/Makefile b/comms/qtel/Makefile index 44f8230a327..c9ec27277cb 100644 --- a/comms/qtel/Makefile +++ b/comms/qtel/Makefile @@ -2,7 +2,6 @@ # $FreeBSD$ PORTNAME= qtel -PORTREVISION= 1 MAINTAINER= hamradio@FreeBSD.org COMMENT= Qtel Echolink client @@ -10,18 +9,15 @@ COMMENT= Qtel Echolink client LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYRIGHT -DEPRECATED= Qt4 has been EOL since december 2015 -EXPIRATION_DATE= 2019-03-15 - LIB_DEPENDS= libecholib.so:comms/svxlink \ libgsm.so:audio/gsm MASTERDIR= ${.CURDIR}/../svxlink -USES= qt:4 -USE_QT= corelib gui network qmake_build linguist_build moc_build rcc_build uic_build +USES= qt:5 gnome +USE_QT= buildtools core gui linguisttools network qmake widgets +USE_GNOME= libsigc++20 PKGDIR= ${.CURDIR} CMAKE_ARGS+= -DUSE_QT:BOOL=YES \ -DQT_ONLY:BOOL=YES -USE_GNOME= libsigc++20 .include "${MASTERDIR}/Makefile" diff --git a/comms/qtel/pkg-plist b/comms/qtel/pkg-plist index 359d43d3c35..d06c0ff474c 100644 --- a/comms/qtel/pkg-plist +++ b/comms/qtel/pkg-plist @@ -1,8 +1,8 @@ bin/qtel include/svxlink/AsyncQtApplication.h %%STATIC%%lib/libasyncqt.a -lib/libasyncqt.so.1.4.0 -lib/libasyncqt.so.1.4 +lib/libasyncqt.so.1.5.0 +lib/libasyncqt.so.1.5 lib/libasyncqt.so share/applications/qtel.desktop share/qtel/translations/qtel_sv.qm diff --git a/comms/svxlink/Makefile b/comms/svxlink/Makefile index 5d0b124f10a..42737eff4a8 100644 --- a/comms/svxlink/Makefile +++ b/comms/svxlink/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME?= svxlink -PORTVERSION= 15.11 -PORTREVISION= 6 +PORTVERSION= 17.12.2 CATEGORIES= comms hamradio MAINTAINER= hamradio@FreeBSD.org @@ -79,16 +78,22 @@ post-patch-OSS-on: post-install: ${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/.procmailrc \ ${STAGEDIR}${PREFIX}/etc/svxlink/.procmailrc.sample + ${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/gpio.conf \ + ${STAGEDIR}${PREFIX}/etc/svxlink/gpio.conf.sample ${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/TclVoiceMail.conf \ ${STAGEDIR}${PREFIX}/etc/svxlink/TclVoiceMail.conf.sample ${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/remotetrx.conf \ ${STAGEDIR}${PREFIX}/etc/svxlink/remotetrx.conf.sample ${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.conf \ ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.conf.sample + ${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxreflector.conf \ + ${STAGEDIR}${PREFIX}/etc/svxlink/svxreflector.conf.sample ${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleDtmfRepeater.conf \ ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleDtmfRepeater.conf.sample ${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleEchoLink.conf \ ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleEchoLink.conf.sample + ${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleFrn.conf \ + ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleFrn.conf.sample ${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleHelp.conf \ ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleHelp.conf.sample ${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleMetarInfo.conf \ @@ -102,5 +107,10 @@ post-install: ${MV} ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleTclVoiceMail.conf \ ${STAGEDIR}${PREFIX}/etc/svxlink/svxlink.d/ModuleTclVoiceMail.conf.sample .endif - +.if ${PORTNAME}==qtel +post-install: + ${RM} ${STAGEDIR}${PREFIX}/include/svxlink/CppStdCompat.h + ${RM} ${STAGEDIR}${PREFIX}/include/svxlink/common.h + ${RM} ${STAGEDIR}${PREFIX}/lib/libsvxmisc.a +.endif .include diff --git a/comms/svxlink/distinfo b/comms/svxlink/distinfo index 85df62983d0..bd0b6363634 100644 --- a/comms/svxlink/distinfo +++ b/comms/svxlink/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1509574513 -SHA256 (sm0svx-svxlink-15.11_GH0.tar.gz) = 17bd8a1174c70e990b676210e6edb373732d284aed55c5a82bc378a1d69cecf2 -SIZE (sm0svx-svxlink-15.11_GH0.tar.gz) = 1528034 +TIMESTAMP = 1552153691 +SHA256 (sm0svx-svxlink-17.12.2_GH0.tar.gz) = 0e21b172858d54d642cd9c8a7e33e87bb50b1548f0291074271e08ab5f1e060c +SIZE (sm0svx-svxlink-17.12.2_GH0.tar.gz) = 1622039 diff --git a/comms/svxlink/files/patch-src_CMakeLists.txt b/comms/svxlink/files/patch-src_CMakeLists.txt index 98d33b40ba5..bb0c3cce51f 100644 --- a/comms/svxlink/files/patch-src_CMakeLists.txt +++ b/comms/svxlink/files/patch-src_CMakeLists.txt @@ -1,6 +1,6 @@ ---- src/CMakeLists.txt.orig 2015-11-22 16:03:59 UTC +--- src/CMakeLists.txt.orig 2018-03-04 18:59:29 UTC +++ src/CMakeLists.txt -@@ -37,6 +37,7 @@ set(RUNTIME_OUTPUT_DIRECTORY ${PROJECT_B +@@ -37,6 +37,7 @@ set(RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/Modules/") # Optional parts @@ -21,7 +21,15 @@ # Warnings should be enabled for GCC. Also turning off the NDEBUG flag # since that remove asserts. if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX) -@@ -87,6 +82,15 @@ if(NOT DEFINED INCLUDE_INSTALL_DIR) +@@ -73,7 +68,6 @@ if(NOT CMAKE_BUILD_TYPE) + FORCE) + endif(NOT CMAKE_BUILD_TYPE) + +- + ############################################################################## + # Install targets properties setup + ############################################################################## +@@ -87,6 +81,18 @@ if(NOT DEFINED INCLUDE_INSTALL_DIR) set(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_FULL_INCLUDEDIR}) endif(NOT DEFINED INCLUDE_INSTALL_DIR) @@ -30,19 +38,29 @@ + ${PROJECT_INCLUDE_DIR} + ${CMAKE_BINARY_DIR} +if(QT_ONLY) -+ ${INCLUDE_INSTALL_DIR}/svxlink ++ ${CMAKE_SOURCE_DIR}/echolib ++ ${CMAKE_SOURCE_DIR}/async/audio ++ ${CMAKE_SOURCE_DIR}/async/core ++ ${INCLUDE_INSTALL_DIR}/svxlink/svxlink +endif(QT_ONLY) +) + # Where to install libraries if(NOT DEFINED LIB_INSTALL_DIR) #set(LIB_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}) -@@ -324,10 +328,12 @@ include(FindCHOWN) +@@ -327,21 +333,24 @@ set(LIBS ${LIBS} ${SIGC2_LIBRARIES}) + # Find the chown utility + include(FindCHOWN) +-set(SVXLINK_USER "svxlink" CACHE STRING "Set SvxLink system user") +-set(SVXLINK_GROUP "daemon" CACHE STRING "Set SvxLink system group") +-message(STATUS "SvxLink user = ${SVXLINK_USER}") +-message(STATUS "SvxLink group = ${SVXLINK_GROUP}") +- # Add directories to build add_subdirectory(async) -+if(NOT QT_ONLY) add_subdirectory(misc) ++if(NOT QT_ONLY) add_subdirectory(echolib) add_subdirectory(locationinfo) add_subdirectory(svxlink) @@ -50,3 +68,13 @@ if(USE_QT) add_subdirectory(qtel) endif(USE_QT) + add_subdirectory(doc) ++ ++set(SVXLINK_USER "svxlink" CACHE STRING "Set SvxLink system user") ++set(SVXLINK_GROUP "daemon" CACHE STRING "Set SvxLink system group") ++message(STATUS "SvxLink user = ${SVXLINK_USER}") ++message(STATUS "SvxLink group = ${SVXLINK_GROUP}") ++ + + # Experimental CPack package building + set(CPACK_SET_DESTDIR "ON") diff --git a/comms/svxlink/files/patch-src_async_CMakeLists.txt b/comms/svxlink/files/patch-src_async_CMakeLists.txt index 098495bce05..dcc2cd0587a 100644 --- a/comms/svxlink/files/patch-src_async_CMakeLists.txt +++ b/comms/svxlink/files/patch-src_async_CMakeLists.txt @@ -1,10 +1,11 @@ ---- src/async/CMakeLists.txt.orig 2015-11-22 16:03:59 UTC +--- src/async/CMakeLists.txt.orig 2018-03-04 18:59:29 UTC +++ src/async/CMakeLists.txt @@ -1,7 +1,9 @@ +if(NOT QT_ONLY) add_subdirectory(core) - add_subdirectory(cpp) +-add_subdirectory(cpp) add_subdirectory(audio) ++add_subdirectory(cpp) +add_subdirectory(demo) +endif(NOT QT_ONLY) if(USE_QT) diff --git a/comms/svxlink/files/patch-src_async_audio_AsyncAudioDeviceAlsa.cpp b/comms/svxlink/files/patch-src_async_audio_AsyncAudioDeviceAlsa.cpp deleted file mode 100644 index aa4928d39d3..00000000000 --- a/comms/svxlink/files/patch-src_async_audio_AsyncAudioDeviceAlsa.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- src/async/audio/AsyncAudioDeviceAlsa.cpp.orig 2015-11-22 16:03:59 UTC -+++ src/async/audio/AsyncAudioDeviceAlsa.cpp -@@ -548,7 +548,7 @@ bool AudioDeviceAlsa::initParams(snd_pcm - return false; - } - -- if (::abs(real_rate - sample_rate) > 100) -+ if (::abs((int)real_rate - sample_rate) > 100) - { - cerr << "*** ERROR: The sample rate could not be set to " - << sample_rate << "Hz for ALSA device \"" << dev_name << "\". " diff --git a/comms/svxlink/files/patch-src_async_core_AsyncMsg.h b/comms/svxlink/files/patch-src_async_core_AsyncMsg.h new file mode 100644 index 00000000000..9cdf30366cd --- /dev/null +++ b/comms/svxlink/files/patch-src_async_core_AsyncMsg.h @@ -0,0 +1,11 @@ +--- src/async/core/AsyncMsg.h.orig 2019-03-10 00:47:36 UTC ++++ src/async/core/AsyncMsg.h +@@ -129,7 +129,7 @@ An example of how to use the AsyncMsg class + #include + #include + #include +-#include ++#include + #include + + diff --git a/comms/svxlink/files/patch-src_async_core_AsyncTcpServer.cpp b/comms/svxlink/files/patch-src_async_core_AsyncTcpServer.cpp deleted file mode 100644 index cbadd777870..00000000000 --- a/comms/svxlink/files/patch-src_async_core_AsyncTcpServer.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- src/async/core/AsyncTcpServer.cpp.orig 2015-11-22 16:03:59 UTC -+++ src/async/core/AsyncTcpServer.cpp -@@ -198,7 +198,7 @@ TcpServer::TcpServer(const string& port_str, const Asy - { - addr.sin_addr = bind_ip.ip4Addr(); - } -- if (bind(sock, (struct sockaddr *)&addr, sizeof(struct sockaddr_in)) != 0) -+ if (::bind(sock, (struct sockaddr *)&addr, sizeof(struct sockaddr_in)) != 0) - { - perror("bind"); - cleanup(); diff --git a/comms/svxlink/files/patch-src_async_core_AsyncUdpSocket.cpp b/comms/svxlink/files/patch-src_async_core_AsyncUdpSocket.cpp deleted file mode 100644 index 71ed6a58356..00000000000 --- a/comms/svxlink/files/patch-src_async_core_AsyncUdpSocket.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- src/async/core/AsyncUdpSocket.cpp.orig 2015-11-22 16:03:59 UTC -+++ src/async/core/AsyncUdpSocket.cpp -@@ -189,7 +189,7 @@ UdpSocket::UdpSocket(uint16_t local_port, const IpAddr - { - addr.sin_addr = bind_ip.ip4Addr(); - } -- if(bind(sock, reinterpret_cast(&addr), sizeof(addr)) -+ if(::bind(sock, reinterpret_cast(&addr), sizeof(addr)) - == -1) - { - perror("bind"); diff --git a/comms/svxlink/files/patch-src_async_qt_CMakeLists.txt b/comms/svxlink/files/patch-src_async_qt_CMakeLists.txt index d51311df202..1dae1a93849 100644 --- a/comms/svxlink/files/patch-src_async_qt_CMakeLists.txt +++ b/comms/svxlink/files/patch-src_async_qt_CMakeLists.txt @@ -1,14 +1,15 @@ ---- src/async/qt/CMakeLists.txt.orig 2015-11-22 16:03:59 UTC +--- src/async/qt/CMakeLists.txt.orig 2019-03-12 00:30:56 UTC +++ src/async/qt/CMakeLists.txt -@@ -6,7 +6,12 @@ set(LIBSRC AsyncQtApplication.cpp AsyncQ +@@ -6,7 +6,12 @@ set(LIBSRC AsyncQtApplication.cpp AsyncQtDnsLookupWork set(QTHEADERS AsyncQtApplication.h AsyncQtTimer.h AsyncQtDnsLookupWorker.h) +-set(LIBS ${LIBS} asynccore) +if(QT_ONLY) +find_library(ASYNCCORE_LIB asynccore ${LIB_INSTALL_DIR}) +set(LIBS ${LIBS} ${ASYNCCORE_LIB}) +else(QT_ONLY) - set(LIBS ${LIBS} asynccore) ++ set(LIBS ${LIBS} asynccore) +endif(QT_ONLY) # Copy exported include files to the global include directory diff --git a/comms/svxlink/files/patch-src_doc_man_CMakeLists.txt b/comms/svxlink/files/patch-src_doc_man_CMakeLists.txt index 8263f3c71e1..e4451cf1ebe 100644 --- a/comms/svxlink/files/patch-src_doc_man_CMakeLists.txt +++ b/comms/svxlink/files/patch-src_doc_man_CMakeLists.txt @@ -1,16 +1,19 @@ ---- src/doc/man/CMakeLists.txt.orig 2015-11-22 16:03:59 UTC +--- src/doc/man/CMakeLists.txt.orig 2018-03-04 18:59:29 UTC +++ src/doc/man/CMakeLists.txt -@@ -1,9 +1,16 @@ +@@ -1,11 +1,18 @@ # Set up which man pages to build and install +if(QT_ONLY) + set(MAN_PAGES qtel.1) +else(QT_ONLY) - set(MAN_PAGES svxlink.1 remotetrx.1 siglevdetcal.1 svxlink.conf.5 - ModuleHelp.conf.5 remotetrx.conf.5 ModuleParrot.conf.5 ModuleEchoLink.conf.5 + set(MAN_PAGES svxlink.1 svxlink.conf.5 remotetrx.1 remotetrx.conf.5 +- siglevdetcal.1 devcal.1 svxreflector.1 svxreflector.conf.5 qtel.1 ++ siglevdetcal.1 devcal.1 svxreflector.1 svxreflector.conf.5 + ModuleHelp.conf.5 ModuleParrot.conf.5 ModuleEchoLink.conf.5 ModuleTclVoiceMail.conf.5 ModuleDtmfRepeater.conf.5 -- ModulePropagationMonitor.conf.5 ModuleSelCallEnc.conf.5 qtel.1 devcal.1 -+ ModulePropagationMonitor.conf.5 ModuleSelCallEnc.conf.5 devcal.1 - ) + ModulePropagationMonitor.conf.5 ModuleSelCallEnc.conf.5 + ModuleFrn.conf.5 +-) ++ ) +if(USE_QT) + set(MAN_PAGES ${MAN_PAGES} qtel.1) +endif(USE_QT) @@ -18,7 +21,7 @@ # Search for the gzip and groff programs. Error out if not found. include(FindGZIP) -@@ -29,11 +36,11 @@ if(GROFF_TOOL AND GZIP_TOOL) +@@ -31,11 +38,11 @@ if(GROFF_TOOL AND GZIP_TOOL) DESTINATION ${MAN_INSTALL_DIR}/man${sec} OPTIONAL ) diff --git a/comms/svxlink/files/patch-src_qtel_CMakeLists.txt b/comms/svxlink/files/patch-src_qtel_CMakeLists.txt index b9651779214..defac889ecd 100644 --- a/comms/svxlink/files/patch-src_qtel_CMakeLists.txt +++ b/comms/svxlink/files/patch-src_qtel_CMakeLists.txt @@ -1,6 +1,6 @@ ---- src/qtel/CMakeLists.txt.orig 2015-11-22 16:03:59 UTC +--- src/qtel/CMakeLists.txt.orig 2018-03-04 18:59:29 UTC +++ src/qtel/CMakeLists.txt -@@ -16,7 +16,14 @@ set(FORMS MainWindowBase.ui ComDialogBas +@@ -16,7 +16,14 @@ set(FORMS MainWindowBase.ui ComDialogBase.ui SettingsD set(RESOURCES qtel.qrc) # Libraries @@ -8,9 +8,9 @@ +find_library(ASYNCCORE_LIB asynccore ${LIB_INSTALL_DIR}) +find_library(ASYNCAUDIO_LIB asyncaudio ${LIB_INSTALL_DIR}) +find_library(ECHOLIB_LIB echolib ${LIB_INSTALL_DIR}) -+set(LIBS ${LIBS} ${ECHOLIB_LIB} asyncqt ${ASYNCAUDIO_LIB} ${ASYNCCORE_LIB}) ++set(LIBS ${LIBS} ${ECHOLIB_LIB} asyncqt ${ASYNCAUDIO_LIB} ${ASYNCCORE_LIB} svxmisc) +else(QT_ONLY) - set(LIBS ${LIBS} echolib asyncqt asyncaudio asynccore) + set(LIBS ${LIBS} echolib asyncqt asyncaudio asynccore svxmisc) +endif(QT_ONLY) # Find the GSM codec library and include directory diff --git a/comms/svxlink/files/patch-src_svxlink_devcal_CMakeLists.txt b/comms/svxlink/files/patch-src_svxlink_devcal_CMakeLists.txt index c77fce2aa7a..769f0957c3c 100644 --- a/comms/svxlink/files/patch-src_svxlink_devcal_CMakeLists.txt +++ b/comms/svxlink/files/patch-src_svxlink_devcal_CMakeLists.txt @@ -1,9 +1,9 @@ ---- src/svxlink/devcal/CMakeLists.txt.orig 2015-11-22 16:03:59 UTC +--- src/svxlink/devcal/CMakeLists.txt.orig 2018-03-04 18:59:29 UTC +++ src/svxlink/devcal/CMakeLists.txt -@@ -18,3 +18,6 @@ set_target_properties(devcal PROPERTIES - #set_target_properties(noisegen PROPERTIES - # RUNTIME_OUTPUT_DIRECTORY ${RUNTIME_OUTPUT_DIRECTORY} - #) +@@ -21,3 +21,6 @@ set_target_properties(devcal PROPERTIES + + # Install targets + install(TARGETS devcal DESTINATION ${BIN_INSTALL_DIR}) + +# Install targets +install(TARGETS devcal DESTINATION ${BIN_INSTALL_DIR}) diff --git a/comms/svxlink/files/patch-src_svxlink_svxlink_CMakeLists.txt b/comms/svxlink/files/patch-src_svxlink_svxlink_CMakeLists.txt deleted file mode 100644 index 8249d3dec15..00000000000 --- a/comms/svxlink/files/patch-src_svxlink_svxlink_CMakeLists.txt +++ /dev/null @@ -1,15 +0,0 @@ ---- src/svxlink/svxlink/CMakeLists.txt.orig 2015-11-22 16:03:59 UTC -+++ src/svxlink/svxlink/CMakeLists.txt -@@ -31,9 +31,9 @@ include_directories(${GCRYPT_INCLUDE_DIR - add_definitions(${GCRYPT_DEFINITIONS}) - - # Find the dl library --find_package(DL REQUIRED) --set(LIBS ${LIBS} ${DL_LIBRARIES}) --include_directories(${DL_INCLUDES}) -+#find_package(DL REQUIRED) -+#set(LIBS ${LIBS} ${DL_LIBRARIES}) -+#include_directories(${DL_INCLUDES}) - - # Add project libraries - set(LIBS ${LIBS} trx locationinfo asynccpp asyncaudio asynccore) diff --git a/comms/svxlink/pkg-plist b/comms/svxlink/pkg-plist index 37494b4c675..c2dfe284673 100644 --- a/comms/svxlink/pkg-plist +++ b/comms/svxlink/pkg-plist @@ -1,92 +1,102 @@ bin/devcal -bin/svxlink bin/remotetrx bin/siglevdetcal -@sample etc/svxlink/svxlink.d/ModuleHelp.conf.sample -@sample etc/svxlink/svxlink.d/ModuleParrot.conf.sample -@sample etc/svxlink/svxlink.d/ModuleEchoLink.conf.sample -@sample etc/svxlink/svxlink.d/ModuleTclVoiceMail.conf.sample -@sample etc/svxlink/svxlink.d/ModuleDtmfRepeater.conf.sample -@sample etc/svxlink/svxlink.d/ModuleMetarInfo.conf.sample -@sample etc/svxlink/svxlink.d/ModulePropagationMonitor.conf.sample -@sample etc/svxlink/svxlink.d/ModuleSelCallEnc.conf.sample -@sample etc/svxlink/svxlink.conf.sample -@sample etc/svxlink/TclVoiceMail.conf.sample -@sample etc/svxlink/.procmailrc.sample -@sample etc/svxlink/remotetrx.conf.sample +bin/svxlink +bin/svxreflector +@sample %%ETCDIR%%/.procmailrc.sample +@sample %%ETCDIR%%/TclVoiceMail.conf.sample +@sample %%ETCDIR%%/gpio.conf.sample +@sample %%ETCDIR%%/remotetrx.conf.sample +@sample %%ETCDIR%%/svxlink.conf.sample +@sample %%ETCDIR%%/svxlink.d/ModuleDtmfRepeater.conf.sample +@sample %%ETCDIR%%/svxlink.d/ModuleEchoLink.conf.sample +@sample %%ETCDIR%%/svxlink.d/ModuleFrn.conf.sample +@sample %%ETCDIR%%/svxlink.d/ModuleHelp.conf.sample +@sample %%ETCDIR%%/svxlink.d/ModuleMetarInfo.conf.sample +@sample %%ETCDIR%%/svxlink.d/ModuleParrot.conf.sample +@sample %%ETCDIR%%/svxlink.d/ModulePropagationMonitor.conf.sample +@sample %%ETCDIR%%/svxlink.d/ModuleSelCallEnc.conf.sample +@sample %%ETCDIR%%/svxlink.d/ModuleTclVoiceMail.conf.sample +@sample %%ETCDIR%%/svxreflector.conf.sample include/svxlink/AsyncApplication.h -include/svxlink/AsyncFdWatch.h -include/svxlink/AsyncTimer.h -include/svxlink/AsyncIpAddress.h -include/svxlink/AsyncTcpClient.h -include/svxlink/AsyncDnsLookup.h -include/svxlink/AsyncUdpSocket.h -include/svxlink/AsyncTcpServer.h -include/svxlink/AsyncTcpConnection.h -include/svxlink/AsyncConfig.h -include/svxlink/AsyncSerial.h -include/svxlink/AsyncFileReader.h include/svxlink/AsyncAtTimer.h -include/svxlink/AsyncExec.h -include/svxlink/AsyncCppApplication.h -include/svxlink/AsyncAudioSource.h -include/svxlink/AsyncAudioSink.h -include/svxlink/AsyncAudioProcessor.h +include/svxlink/AsyncAudioAmp.h include/svxlink/AsyncAudioClipper.h include/svxlink/AsyncAudioCompressor.h -include/svxlink/AsyncAudioFilter.h -include/svxlink/AsyncSigCAudioSink.h -include/svxlink/AsyncSigCAudioSource.h -include/svxlink/AsyncAudioIO.h -include/svxlink/AsyncAudioSplitter.h -include/svxlink/AsyncAudioDelayLine.h -include/svxlink/AsyncAudioValve.h -include/svxlink/AsyncAudioAmp.h -include/svxlink/AsyncAudioSelector.h -include/svxlink/AsyncAudioPassthrough.h -include/svxlink/AsyncAudioMixer.h -include/svxlink/AsyncAudioFifo.h include/svxlink/AsyncAudioDebugger.h -include/svxlink/AsyncAudioPacer.h -include/svxlink/AsyncAudioReader.h include/svxlink/AsyncAudioDecimator.h -include/svxlink/AsyncAudioInterpolator.h -include/svxlink/AsyncAudioStreamStateDetector.h -include/svxlink/AsyncAudioEncoder.h include/svxlink/AsyncAudioDecoder.h -include/svxlink/AsyncAudioRecorder.h -include/svxlink/AsyncAudioJitterFifo.h -include/svxlink/AsyncAudioDeviceFactory.h +include/svxlink/AsyncAudioDelayLine.h include/svxlink/AsyncAudioDevice.h -include/svxlink/CppStdCompat.h -include/svxlink/common.h -include/svxlink/EchoLinkDirectory.h -include/svxlink/EchoLinkDispatcher.h -include/svxlink/EchoLinkQso.h -include/svxlink/EchoLinkStationData.h -include/svxlink/EchoLinkProxy.h +include/svxlink/AsyncAudioDeviceFactory.h +include/svxlink/AsyncAudioEncoder.h +include/svxlink/AsyncAudioFifo.h +include/svxlink/AsyncAudioFilter.h include/svxlink/AsyncAudioGenerator.h +include/svxlink/AsyncAudioIO.h +include/svxlink/AsyncAudioInterpolator.h +include/svxlink/AsyncAudioJitterFifo.h +include/svxlink/AsyncAudioMixer.h include/svxlink/AsyncAudioNoiseAdder.h +include/svxlink/AsyncAudioPacer.h +include/svxlink/AsyncAudioPassthrough.h +include/svxlink/AsyncAudioProcessor.h +include/svxlink/AsyncAudioReader.h +include/svxlink/AsyncAudioRecorder.h +include/svxlink/AsyncAudioSelector.h +include/svxlink/AsyncAudioSink.h +include/svxlink/AsyncAudioSource.h +include/svxlink/AsyncAudioSplitter.h +include/svxlink/AsyncAudioStreamStateDetector.h +include/svxlink/AsyncAudioValve.h +include/svxlink/AsyncConfig.h +include/svxlink/AsyncCppApplication.h +include/svxlink/AsyncDnsLookup.h +include/svxlink/AsyncExec.h +include/svxlink/AsyncFdWatch.h +include/svxlink/AsyncFileReader.h +include/svxlink/AsyncFramedTcpConnection.h +include/svxlink/AsyncIpAddress.h +include/svxlink/AsyncMsg.h include/svxlink/AsyncPty.h include/svxlink/AsyncPtyStreamBuf.h -lib/libasynccore.so.1.4.0 -lib/libasynccore.so.1.4 -lib/libasynccore.so -lib/libasynccpp.so.1.4.0 -lib/libasynccpp.so.1.4 -lib/libasynccpp.so -lib/libasyncaudio.so.1.4.0 -lib/libasyncaudio.so.1.4 +include/svxlink/AsyncSerial.h +include/svxlink/AsyncSigCAudioSink.h +include/svxlink/AsyncSigCAudioSource.h +include/svxlink/AsyncTcpClient.h +include/svxlink/AsyncTcpClientBase.h +include/svxlink/AsyncTcpConnection.h +include/svxlink/AsyncTcpServer.h +include/svxlink/AsyncTcpServerBase.h +include/svxlink/AsyncTimer.h +include/svxlink/AsyncUdpSocket.h +include/svxlink/CppStdCompat.h +include/svxlink/EchoLinkDirectory.h +include/svxlink/EchoLinkDispatcher.h +include/svxlink/EchoLinkProxy.h +include/svxlink/EchoLinkQso.h +include/svxlink/EchoLinkStationData.h +include/svxlink/common.h lib/libasyncaudio.so -lib/svxlink/ModuleHelp.so -lib/svxlink/ModuleParrot.so -lib/svxlink/ModuleEchoLink.so -lib/svxlink/ModuleTcl.so -lib/svxlink/ModuleDtmfRepeater.so -lib/svxlink/ModuleMetarInfo.so -lib/libecholib.so.1.3.2 -lib/libecholib.so.1.3 +lib/libasyncaudio.so.1.5 +lib/libasyncaudio.so.1.5.0 +lib/libasynccore.so +lib/libasynccore.so.1.5 +lib/libasynccore.so.1.5.0 +lib/libasynccpp.so +lib/libasynccpp.so.1.5 +lib/libasynccpp.so.1.5.0 lib/libecholib.so +lib/libecholib.so.1.3 +lib/libecholib.so.1.3.3 +lib/libsvxmisc.a +lib/svxlink/ModuleDtmfRepeater.so +lib/svxlink/ModuleEchoLink.so +lib/svxlink/ModuleFrn.so +lib/svxlink/ModuleHelp.so +lib/svxlink/ModuleMetarInfo.so +lib/svxlink/ModuleParrot.so +lib/svxlink/ModuleTcl.so %%STATIC%%lib/libasyncaudio.a %%STATIC%%lib/libasynccore.a %%STATIC%%lib/libasynccpp.a @@ -102,6 +112,7 @@ lib/libecholib.so %%DATADIR%%/events.d/Help.tcl %%DATADIR%%/events.d/Parrot.tcl %%DATADIR%%/events.d/EchoLink.tcl +%%DATADIR%%/events.d/Frn.tcl %%DATADIR%%/events.d/Tcl.tcl.example %%DATADIR%%/events.d/TclVoiceMail.tcl %%DATADIR%%/events.d/DtmfRepeater.tcl @@ -113,20 +124,25 @@ lib/libecholib.so %%DATADIR%%/modules.d/ModulePropagationMonitor.tcl %%DATADIR%%/modules.d/ModuleSelCallEnc.tcl man/man1/devcal.1.gz -man/man1/svxlink.1.gz man/man1/remotetrx.1.gz man/man1/siglevdetcal.1.gz -man/man5/svxlink.conf.5.gz +man/man1/svxlink.1.gz +man/man1/svxreflector.1.gz +man/man5/ModuleDtmfRepeater.conf.5.gz +man/man5/ModuleEchoLink.conf.5.gz +man/man5/ModuleFrn.conf.5.gz man/man5/ModuleHelp.conf.5.gz man/man5/ModuleParrot.conf.5.gz -man/man5/ModuleEchoLink.conf.5.gz -man/man5/ModuleTclVoiceMail.conf.5.gz -man/man5/ModuleDtmfRepeater.conf.5.gz man/man5/ModulePropagationMonitor.conf.5.gz man/man5/ModuleSelCallEnc.conf.5.gz +man/man5/ModuleTclVoiceMail.conf.5.gz man/man5/remotetrx.conf.5.gz +man/man5/svxlink.conf.5.gz +man/man5/svxreflector.conf.5.gz +sbin/svxlink_gpio_down +sbin/svxlink_gpio_up @dir %%DATADIR%%/sounds -@dir /var/spool/svxlink/voice_mail -@dir /var/spool/svxlink/qso_recorder @dir /var/spool/svxlink/propagation_monitor +@dir /var/spool/svxlink/qso_recorder +@dir /var/spool/svxlink/voice_mail @dir /var/spool/svxlink diff --git a/converters/pdf2djvu/Makefile b/converters/pdf2djvu/Makefile index 345be5f5886..87828c23247 100644 --- a/converters/pdf2djvu/Makefile +++ b/converters/pdf2djvu/Makefile @@ -3,6 +3,7 @@ PORTNAME= pdf2djvu PORTVERSION= 0.9.12 CATEGORIES= converters +MASTER_SITES= https://github.com/jwilk/${PORTNAME}/releases/download/${PORTVERSION}/ MAINTAINER= samy.mahmoudi@gmail.com COMMENT= Creates DjVu files from PDF files @@ -18,9 +19,6 @@ USES= autoreconf:build compiler:c++11-lang gettext-tools \ gmake iconv localbase pkgconfig tar:xz USE_CXXSTD= c++11 -USE_GITHUB= yes -GH_TUPLE= jwilk:${PORTNAME}:${PORTVERSION} - GNU_CONFIGURE= yes PLIST_FILES= bin/pdf2djvu diff --git a/converters/pdf2djvu/distinfo b/converters/pdf2djvu/distinfo index cfe600d2cee..580a560960f 100644 --- a/converters/pdf2djvu/distinfo +++ b/converters/pdf2djvu/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1551662199 -SHA256 (jwilk-pdf2djvu-0.9.12_GH0.tar.gz) = 83f08f80a4bf24912e542ccaf3179cd57715bfee82c50e87272060475a454e2d -SIZE (jwilk-pdf2djvu-0.9.12_GH0.tar.gz) = 191227 +TIMESTAMP = 1552404105 +SHA256 (pdf2djvu-0.9.12.tar.xz) = 03fa9d9aa1b8086b562e2461ed74e5f9f008f16bfc1459ba62fa3738b37d8e83 +SIZE (pdf2djvu-0.9.12.tar.xz) = 295088 diff --git a/databases/cassandra-cpp-driver/Makefile b/databases/cassandra-cpp-driver/Makefile index 31634b464ee..685edc99476 100644 --- a/databases/cassandra-cpp-driver/Makefile +++ b/databases/cassandra-cpp-driver/Makefile @@ -2,8 +2,8 @@ # $FreeBSD$ PORTNAME= cassandra-cpp-driver -PORTVERSION= 2.10.0 -PORTREVISION= 1 +PORTVERSION= 2.11.0 +PORTREVISION= 0 CATEGORIES= databases MAINTAINER= gahr@FreeBSD.org diff --git a/databases/cassandra-cpp-driver/distinfo b/databases/cassandra-cpp-driver/distinfo index e9d9b96b704..0da839c3adb 100644 --- a/databases/cassandra-cpp-driver/distinfo +++ b/databases/cassandra-cpp-driver/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1541004927 -SHA256 (datastax-cpp-driver-2.10.0_GH0.tar.gz) = 3ac2d0f03eeb22b893a9f6b5b124276936e19b194f8065d3683e0aa8bb4aecb4 -SIZE (datastax-cpp-driver-2.10.0_GH0.tar.gz) = 9366791 +TIMESTAMP = 1552388736 +SHA256 (datastax-cpp-driver-2.11.0_GH0.tar.gz) = 12cef9df7e8c4ac7bb50f084168e099a2a10f7a404879d8f50a4fb2132e5e344 +SIZE (datastax-cpp-driver-2.11.0_GH0.tar.gz) = 9392387 diff --git a/databases/py-marshmallow-sqlalchemy/Makefile b/databases/py-marshmallow-sqlalchemy/Makefile index df2be659c42..ebd9da06a62 100644 --- a/databases/py-marshmallow-sqlalchemy/Makefile +++ b/databases/py-marshmallow-sqlalchemy/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= marshmallow-sqlalchemy -PORTVERSION= 0.16.0 +PORTVERSION= 0.16.1 CATEGORIES= databases python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/databases/py-marshmallow-sqlalchemy/distinfo b/databases/py-marshmallow-sqlalchemy/distinfo index 7b39b56e9a1..78a7760537d 100644 --- a/databases/py-marshmallow-sqlalchemy/distinfo +++ b/databases/py-marshmallow-sqlalchemy/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1549302346 -SHA256 (marshmallow-sqlalchemy-0.16.0.tar.gz) = c99d51bb4dfca7e1b35ae12ed96746c0df0464b7eb95bba6835a1231e6ea286c -SIZE (marshmallow-sqlalchemy-0.16.0.tar.gz) = 45204 +TIMESTAMP = 1552404241 +SHA256 (marshmallow-sqlalchemy-0.16.1.tar.gz) = 99c50c570b6e89ffc9f9633ce4acb63f9e1bddf36839b07b9ae0f540588d6937 +SIZE (marshmallow-sqlalchemy-0.16.1.tar.gz) = 44933 diff --git a/databases/py-sqlparse/Makefile b/databases/py-sqlparse/Makefile index f73f64bdec9..dc3aaaeaa0b 100644 --- a/databases/py-sqlparse/Makefile +++ b/databases/py-sqlparse/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= sqlparse -PORTVERSION= 0.2.4 +PORTVERSION= 0.3.0 CATEGORIES= databases python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/databases/py-sqlparse/distinfo b/databases/py-sqlparse/distinfo index fc9fd8271d4..de02136ab32 100644 --- a/databases/py-sqlparse/distinfo +++ b/databases/py-sqlparse/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1506585875 -SHA256 (sqlparse-0.2.4.tar.gz) = ce028444cfab83be538752a2ffdb56bc417b7784ff35bb9a3062413717807dec -SIZE (sqlparse-0.2.4.tar.gz) = 61614 +TIMESTAMP = 1552404244 +SHA256 (sqlparse-0.3.0.tar.gz) = 7c3dca29c022744e95b547e867cee89f4fce4373f3549ccd8797d8eb52cdb873 +SIZE (sqlparse-0.3.0.tar.gz) = 64072 diff --git a/devel/arduino-core/distinfo b/devel/arduino-core/distinfo index 112a437f7b4..57919acbedb 100644 --- a/devel/arduino-core/distinfo +++ b/devel/arduino-core/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1490895941 -SHA256 (arduino/arduino-Arduino-1.6.18-b439a77_GH0.tar.gz) = ded6eebe1b58834df432e8d49f01a8c1aeb1328479f244075db7f76c12019f37 -SIZE (arduino/arduino-Arduino-1.6.18-b439a77_GH0.tar.gz) = 48187661 +TIMESTAMP = 1552437121 +SHA256 (arduino/arduino-Arduino-1.6.18-b439a77_GH0.tar.gz) = 70191e9badd0986b697326d4640da1d24090f0c72a7e8c8f783bcb1ca63121a4 +SIZE (arduino/arduino-Arduino-1.6.18-b439a77_GH0.tar.gz) = 48187647 SHA256 (arduino/arduino-ArduinoCore-sam-fc57f2e_GH0.tar.gz) = 3d374e7c7037d317f5da73c95361033b81e6cc12330a7623b20ad2f084bff247 SIZE (arduino/arduino-ArduinoCore-sam-fc57f2e_GH0.tar.gz) = 38839710 -SHA256 (arduino/arduino-ArduinoCore-samd-1.6.12_GH0.tar.gz) = fefa0cb0871033451aa0ea08b6a9b4587acdd800b6064a9d47233be7b6368ce8 -SIZE (arduino/arduino-ArduinoCore-samd-1.6.12_GH0.tar.gz) = 3321356 +SHA256 (arduino/arduino-ArduinoCore-samd-1.6.12_GH0.tar.gz) = 24527ad183696357be6c97ce8da1c777f9664266452d6ad717b2ec582f08def3 +SIZE (arduino/arduino-ArduinoCore-samd-1.6.12_GH0.tar.gz) = 3323979 diff --git a/devel/arduino18/Makefile b/devel/arduino18/Makefile index 3b66af7d8d8..f994eb10b4a 100644 --- a/devel/arduino18/Makefile +++ b/devel/arduino18/Makefile @@ -2,6 +2,7 @@ PORTNAME= arduino PORTVERSION= 1.8.5 +PORTREVISION= 1 CATEGORIES= devel java PKGNAMESUFFIX= 18 DIST_SUBDIR= ${PORTNAME} diff --git a/devel/arduino18/files/patch-arduino-core_src_processing_app_SerialPortList.java b/devel/arduino18/files/patch-arduino-core_src_processing_app_SerialPortList.java new file mode 100644 index 00000000000..4215520d14b --- /dev/null +++ b/devel/arduino18/files/patch-arduino-core_src_processing_app_SerialPortList.java @@ -0,0 +1,14 @@ +--- arduino-core/src/processing/app/SerialPortList.java.orig 2019-03-12 21:32:52 UTC ++++ arduino-core/src/processing/app/SerialPortList.java +@@ -66,6 +66,11 @@ public class SerialPortList { + PORTNAMES_PATH = ""; + break; + } ++ case SerialNativeInterface.OS_FREEBSD: { ++ PORTNAMES_REGEXP = Pattern.compile("cuaU[0-9]{1,3}$"); ++ PORTNAMES_PATH = "/dev/"; ++ break; ++ } + default: { + PORTNAMES_REGEXP = null; + PORTNAMES_PATH = null; diff --git a/devel/catch/Makefile b/devel/catch/Makefile index 2ac73411289..3ab1aec9d80 100644 --- a/devel/catch/Makefile +++ b/devel/catch/Makefile @@ -3,7 +3,7 @@ PORTNAME= catch DISTVERSIONPREFIX= v -DISTVERSION= 2.6.1 +DISTVERSION= 2.7.0 PORTREVISION= 0 CATEGORIES= devel diff --git a/devel/catch/distinfo b/devel/catch/distinfo index ecc49946fa6..622bb017997 100644 --- a/devel/catch/distinfo +++ b/devel/catch/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1550050778 -SHA256 (catchorg-Catch2-v2.6.1_GH0.tar.gz) = b57c2d3362102a77955d3cd0181b792c496520349bfefee8379b9d35b8819f80 -SIZE (catchorg-Catch2-v2.6.1_GH0.tar.gz) = 559715 +TIMESTAMP = 1552392787 +SHA256 (catchorg-Catch2-v2.7.0_GH0.tar.gz) = d4655e87c0ccda5a2e78bf4256fce8036feb969399503dcc8272f4c90347d9c0 +SIZE (catchorg-Catch2-v2.7.0_GH0.tar.gz) = 569753 diff --git a/devel/catch/files/patch-bug236212 b/devel/catch/files/patch-bug236212 deleted file mode 100644 index b0988adca2c..00000000000 --- a/devel/catch/files/patch-bug236212 +++ /dev/null @@ -1,31 +0,0 @@ -From e8bfd882e8e8738d884933ad75eb25e8a50989b8 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 12 Feb 2019 12:57:00 -0800 -Subject: [PATCH] Fix -Wdefaulted-function-deleted warning - -Clang8 warns - -catch_interfaces_reporter.h:84:25: error: explicitly defaulted move assignment operator is implicitly deleted [-Werror,-Wdefaulted-function-deleted] -| AssertionStats& operator = ( AssertionStats && ) = default; -| ^ - -Signed-off-by: Khem Raj ---- - include/internal/catch_interfaces_reporter.h | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/include/internal/catch_interfaces_reporter.h b/include/internal/catch_interfaces_reporter.h -index 9d99c9814..e5fbf8bb0 100644 ---- include/internal/catch_interfaces_reporter.h.orig -+++ include/internal/catch_interfaces_reporter.h -@@ -80,8 +80,8 @@ namespace Catch { - - AssertionStats( AssertionStats const& ) = default; - AssertionStats( AssertionStats && ) = default; -- AssertionStats& operator = ( AssertionStats const& ) = default; -- AssertionStats& operator = ( AssertionStats && ) = default; -+ AssertionStats& operator = ( AssertionStats const& ) = delete; -+ AssertionStats& operator = ( AssertionStats && ) = delete; - virtual ~AssertionStats(); - - AssertionResult assertionResult; diff --git a/devel/gitflow/Makefile b/devel/gitflow/Makefile index 736ef02b07b..2942c236ced 100644 --- a/devel/gitflow/Makefile +++ b/devel/gitflow/Makefile @@ -3,6 +3,7 @@ PORTNAME= gitflow PORTVERSION= 1.12.1 +PORTREVISION= 1 CATEGORIES= devel MAINTAINER= nbari@tequila.io diff --git a/devel/gitflow/files/patch-git-flow-init b/devel/gitflow/files/patch-git-flow-init new file mode 100644 index 00000000000..78d6c16e6c0 --- /dev/null +++ b/devel/gitflow/files/patch-git-flow-init @@ -0,0 +1,22 @@ +From aad4610f5dfe133b323d4ccb97e44af0825b0d9d Mon Sep 17 00:00:00 2001 +From: Peter van der Does +Date: Sat, 2 Mar 2019 09:54:39 -0500 +Subject: [PATCH] Missing ) + +--- + git-flow-init | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/git-flow-init b/git-flow-init +index 0699ce75..4cc7ed96 100644 +--- git-flow-init ++++ git-flow-init +@@ -375,7 +375,7 @@ file= use given config file + # Support branches + if ! git config --get gitflow.prefix.support >/dev/null 2>&1 || flag force; then + if [ "$FLAGS_support" != "" ]; then +- default_suggestion=$(echo $FLAGS_support ++ default_suggestion=$(echo $FLAGS_support) + else + default_suggestion=$(git config --get gitflow.prefix.support || echo support/) + fi diff --git a/devel/librelp/Makefile b/devel/librelp/Makefile index 263dd56cb7a..07ff420b965 100644 --- a/devel/librelp/Makefile +++ b/devel/librelp/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= librelp -PORTVERSION= 1.3.0 +PORTVERSION= 1.4.0 CATEGORIES= devel MASTER_SITES= http://download.rsyslog.com/librelp/ @@ -11,9 +11,9 @@ COMMENT= Reliable event logging protocol library LICENSE= GPLv3 -OPTIONS_SINGLE= SSLLIB -OPTIONS_SINGLE_SSLLIB= GNUTLS OPENSSL -OPTIONS_DEFAULT= GNUTLS +OPTIONS_MULTI= SSLLIB +OPTIONS_MULTI_SSLLIB= GNUTLS OPENSSL +OPTIONS_DEFAULT= GNUTLS OPENSSL GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls GNUTLS_CONFIGURE_ENABLE= tls @@ -31,7 +31,7 @@ INSTALL_TARGET= install-strip PLIST_FILES= include/${PORTNAME}.h \ lib/${PORTNAME}.a \ lib/${PORTNAME}.so lib/${PORTNAME}.so.0 \ - lib/${PORTNAME}.so.0.4.0 \ + lib/${PORTNAME}.so.0.5.0 \ libdata/pkgconfig/relp.pc PORT_VERBS= relp diff --git a/devel/librelp/distinfo b/devel/librelp/distinfo index ceee8bb95de..3d1f7ece7c8 100644 --- a/devel/librelp/distinfo +++ b/devel/librelp/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1544620025 -SHA256 (librelp-1.3.0.tar.gz) = 9f24a2fc5749b20c1fd4902332c853e3b06b8bf61b830173252815639b4de9f5 -SIZE (librelp-1.3.0.tar.gz) = 514470 +TIMESTAMP = 1552372829 +SHA256 (librelp-1.4.0.tar.gz) = 5cd02ce7ede2fea037e65cc5389e41dde99b69b1df984b42c14029e60bb9dd05 +SIZE (librelp-1.4.0.tar.gz) = 519235 diff --git a/devel/lua-lpeg/Makefile b/devel/lua-lpeg/Makefile index 5f26a8f0ae4..0499a3fdb8c 100644 --- a/devel/lua-lpeg/Makefile +++ b/devel/lua-lpeg/Makefile @@ -1,8 +1,7 @@ # $FreeBSD$ PORTNAME= lpeg -PORTVERSION= 1.0.1 -PORTREVISION= 1 +PORTVERSION= 1.0.2 CATEGORIES= devel MASTER_SITES= http://www.inf.puc-rio.br/~roberto/lpeg/ \ LOCAL/sunpoet @@ -13,10 +12,11 @@ COMMENT= PEG-based pattern-matching library for Lua LICENSE= MIT +USES= lua + ALL_TARGET= linux MAKE_ARGS= CC=${CC} LUADIR=${LUA_INCDIR} MAKEFILE= ${WRKSRC}/makefile -USES?= lua PLIST_FILES= ${LUA_MODLIBDIR}/lpeg.so \ ${LUA_MODSHAREDIR}/re.lua diff --git a/devel/lua-lpeg/distinfo b/devel/lua-lpeg/distinfo index 1192a5182af..9f3bff94313 100644 --- a/devel/lua-lpeg/distinfo +++ b/devel/lua-lpeg/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1484778488 -SHA256 (lpeg-1.0.1.tar.gz) = 62d9f7a9ea3c1f215c77e0cadd8534c6ad9af0fb711c3f89188a8891c72f026b -SIZE (lpeg-1.0.1.tar.gz) = 71527 +TIMESTAMP = 1552404235 +SHA256 (lpeg-1.0.2.tar.gz) = 48d66576051b6c78388faad09b70493093264588fcd0f258ddaab1cdd4a15ffe +SIZE (lpeg-1.0.2.tar.gz) = 71840 diff --git a/devel/lua-lpeg/files/patch-makefile b/devel/lua-lpeg/files/patch-makefile index cfb175a8d7e..2cc70d42cec 100644 --- a/devel/lua-lpeg/files/patch-makefile +++ b/devel/lua-lpeg/files/patch-makefile @@ -1,12 +1,12 @@ ---- makefile.orig 2015-09-28 17:40:46 UTC +--- makefile.orig 2019-03-11 14:08:29 UTC +++ makefile @@ -1,5 +1,5 @@ LIBNAME = lpeg -LUADIR = ../lua/ +LUADIR ?= ../lua/ - COPT = -O2 - # COPT = -DLPEG_DEBUG -g + COPT = -O2 -DNDEBUG + # COPT = -g @@ -22,8 +22,8 @@ CWARNS = -Wall -Wextra -pedantic \ # -Wunreachable-code \ diff --git a/devel/oclgrind/Makefile b/devel/oclgrind/Makefile index b6563309a2d..e8556c5e428 100644 --- a/devel/oclgrind/Makefile +++ b/devel/oclgrind/Makefile @@ -2,8 +2,8 @@ # $FreeBSD$ PORTNAME= oclgrind -PORTVERSION= 20180101 -PORTREVISION= 2 +PORTVERSION= 20190218 +PORTREVISION= 0 DISTVERSIONPREFIX= v CATEGORIES= devel @@ -14,7 +14,7 @@ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= opencl>=0:devel/opencl \ - llvm-config50:devel/llvm50 + llvm-config${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} LIB_DEPENDS= libOpenCL.so:devel/ocl-icd RUN_DEPENDS= opencl>=0:devel/opencl @@ -22,9 +22,9 @@ USES= cmake compiler:c++11-lang USE_GITHUB= yes GH_ACCOUNT= jrprice GH_PROJECT= Oclgrind -GH_TAGNAME= e99899d +GH_TAGNAME= 689daab USE_LDCONFIG= yes -CMAKE_ARGS+= -DLLVM_DIR=${LOCALBASE}/llvm50/share/llvm/cmake +CMAKE_ARGS+= -DLLVM_DIR=${LOCALBASE}/llvm${LLVM_DEFAULT}/share/llvm/cmake .include diff --git a/devel/oclgrind/distinfo b/devel/oclgrind/distinfo index 5be48e96302..601f529cd6d 100644 --- a/devel/oclgrind/distinfo +++ b/devel/oclgrind/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1514830717 -SHA256 (jrprice-Oclgrind-v20180101-e99899d_GH0.tar.gz) = b8fa6125dd9bea57199d5d25196951d54ad2b2d756728abbb2ebbfe78100330e -SIZE (jrprice-Oclgrind-v20180101-e99899d_GH0.tar.gz) = 195544 +TIMESTAMP = 1552324033 +SHA256 (jrprice-Oclgrind-v20190218-689daab_GH0.tar.gz) = 8f9c6e1c150df0ff49258f0c9e65d0bbe54b976a634a4b4d2716ddeeca6a6035 +SIZE (jrprice-Oclgrind-v20190218-689daab_GH0.tar.gz) = 196783 diff --git a/devel/p5-Data-ObjectDriver/Makefile b/devel/p5-Data-ObjectDriver/Makefile index 67525926161..0a2b5a08818 100644 --- a/devel/p5-Data-ObjectDriver/Makefile +++ b/devel/p5-Data-ObjectDriver/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= Data-ObjectDriver -PORTVERSION= 0.16 +PORTVERSION= 0.17 CATEGORIES= devel perl5 MASTER_SITES= CPAN PKGNAMEPREFIX= p5- @@ -22,8 +22,9 @@ RUN_DEPENDS= p5-Class-Accessor>=0:devel/p5-Class-Accessor \ TEST_DEPENDS= p5-DBD-SQLite>=0:databases/p5-DBD-SQLite \ p5-Test-Exception>=0:devel/p5-Test-Exception -NO_ARCH= yes USES= perl5 USE_PERL5= modbuildtiny +NO_ARCH= yes + .include diff --git a/devel/p5-Data-ObjectDriver/distinfo b/devel/p5-Data-ObjectDriver/distinfo index 72bba8893bd..4c4c8bbb1c9 100644 --- a/devel/p5-Data-ObjectDriver/distinfo +++ b/devel/p5-Data-ObjectDriver/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552063688 -SHA256 (Data-ObjectDriver-0.16.tar.gz) = 5d4eec0413d227ad14951bf5ce13f9d86e9041106ab860461db04f34edafa82d -SIZE (Data-ObjectDriver-0.16.tar.gz) = 85036 +TIMESTAMP = 1552404278 +SHA256 (Data-ObjectDriver-0.17.tar.gz) = 9d78c063a0c50d553df465dfd648e01029388f15942aab39c567142696b5fa4e +SIZE (Data-ObjectDriver-0.17.tar.gz) = 85134 diff --git a/devel/p5-File-Flock-Retry/Makefile b/devel/p5-File-Flock-Retry/Makefile index a461d1b9ca8..8ec30c53fee 100644 --- a/devel/p5-File-Flock-Retry/Makefile +++ b/devel/p5-File-Flock-Retry/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= File-Flock-Retry -PORTVERSION= 0.62 +PORTVERSION= 0.630 CATEGORIES= devel perl5 MASTER_SITES= CPAN PKGNAMEPREFIX= p5- @@ -17,8 +17,9 @@ LICENSE_FILE= ${WRKSRC}/LICENSE TEST_DEPENDS= p5-File-Slurper>=0:devel/p5-File-Slurper \ p5-File-chdir>=0:devel/p5-File-chdir -NO_ARCH= yes -USE_PERL5= configure USES= perl5 +USE_PERL5= configure + +NO_ARCH= yes .include diff --git a/devel/p5-File-Flock-Retry/distinfo b/devel/p5-File-Flock-Retry/distinfo index 8b0ff8bcb91..6637f0f74cc 100644 --- a/devel/p5-File-Flock-Retry/distinfo +++ b/devel/p5-File-Flock-Retry/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1499100491 -SHA256 (File-Flock-Retry-0.62.tar.gz) = 11ae975d97eab872c5019406ae3066bd94554d2f568b3b3404838de24182e6f6 -SIZE (File-Flock-Retry-0.62.tar.gz) = 15854 +TIMESTAMP = 1552405839 +SHA256 (File-Flock-Retry-0.630.tar.gz) = dc4a2343dae358f6be8fb54a5f2825fd8f8425f673d2494cae2372d4bc034580 +SIZE (File-Flock-Retry-0.630.tar.gz) = 16971 diff --git a/devel/p5-Module-Starter/Makefile b/devel/p5-Module-Starter/Makefile index 14ab8d7ac8e..61dde15cd9c 100644 --- a/devel/p5-Module-Starter/Makefile +++ b/devel/p5-Module-Starter/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= Module-Starter -PORTVERSION= 1.75 +PORTVERSION= 1.76 CATEGORIES= devel perl5 MASTER_SITES= CPAN PKGNAMEPREFIX= p5- @@ -15,12 +15,14 @@ LICENSE_COMB= dual LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${RUN_DEPENDS} -RUN_DEPENDS= p5-Module-Runtime>=0:devel/p5-Module-Runtime +RUN_DEPENDS= p5-Module-Runtime>=0:devel/p5-Module-Runtime \ + p5-Software-License>=0.103005:misc/p5-Software-License PORTSCOUT= skipv:1.470 -NO_ARCH= yes USES= perl5 USE_PERL5= configure +NO_ARCH= yes + .include diff --git a/devel/p5-Module-Starter/distinfo b/devel/p5-Module-Starter/distinfo index 5ab52624785..61b85178733 100644 --- a/devel/p5-Module-Starter/distinfo +++ b/devel/p5-Module-Starter/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1529277196 -SHA256 (Module-Starter-1.75.tar.gz) = b0c5c8d5425cd4ffe666a9cf9bd9b10f12222a737b6511ce78f99fda34ed8ce0 -SIZE (Module-Starter-1.75.tar.gz) = 61736 +TIMESTAMP = 1552404280 +SHA256 (Module-Starter-1.76.tar.gz) = ab8262ad1193df991fa29871bae015dea86175d65e647c236649c7e6cc9117bf +SIZE (Module-Starter-1.76.tar.gz) = 54304 diff --git a/devel/p5-true/Makefile b/devel/p5-true/Makefile index 102a7b7b65e..56de5920d08 100644 --- a/devel/p5-true/Makefile +++ b/devel/p5-true/Makefile @@ -2,8 +2,8 @@ # $FreeBSD$ PORTNAME= true -PORTVERSION= 0.18 -PORTREVISION= 2 +PORTVERSION= 1.0.0 +DISTVERSIONPREFIX= v CATEGORIES= devel perl5 MASTER_SITES= CPAN MASTER_SITE_SUBDIR= CPAN:CHOCOLATE @@ -12,16 +12,16 @@ PKGNAMEPREFIX= p5- MAINTAINER= sunpoet@FreeBSD.org COMMENT= Automatically return a true value when a file is required -BUILD_DEPENDS= p5-B-Hooks-OP-Annotation>=0.43:devel/p5-B-Hooks-OP-Annotation \ - p5-B-Hooks-OP-Check>=0.18:devel/p5-B-Hooks-OP-Check \ - p5-Devel-StackTrace>=1.27:devel/p5-Devel-StackTrace \ - p5-ExtUtils-Depends>=0.304:devel/p5-ExtUtils-Depends -RUN_DEPENDS= p5-B-Hooks-OP-Annotation>=0.43:devel/p5-B-Hooks-OP-Annotation \ - p5-B-Hooks-OP-Check>=0.18:devel/p5-B-Hooks-OP-Check \ +BUILD_DEPENDS= p5-ExtUtils-Depends>=0.405:devel/p5-ExtUtils-Depends \ + ${RUN_DEPENDS} +RUN_DEPENDS= p5-B-Hooks-OP-Annotation>=0.44:devel/p5-B-Hooks-OP-Annotation \ + p5-B-Hooks-OP-Check>=0.22:devel/p5-B-Hooks-OP-Check \ p5-Devel-StackTrace>=1.27:devel/p5-Devel-StackTrace +TEST_DEPENDS= p5-Function-Parameters>=2.001003:devel/p5-Function-Parameters \ + p5-Moo>=2.003004:devel/p5-Moo -USE_PERL5= configure USES= perl5 +USE_PERL5= configure post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/true/true.so diff --git a/devel/p5-true/distinfo b/devel/p5-true/distinfo index 9b988b2dfbd..1b1bb92ee24 100644 --- a/devel/p5-true/distinfo +++ b/devel/p5-true/distinfo @@ -1,2 +1,3 @@ -SHA256 (true-0.18.tar.gz) = ff3d041eb2a522ec6194d7a3888325e8a3ef2238ab51452f0b547696be0b4594 -SIZE (true-0.18.tar.gz) = 51382 +TIMESTAMP = 1552407195 +SHA256 (true-v1.0.0.tar.gz) = 43db53bd717c168683ef0076e20fbee37f070af8c2167932c17c0f2bd88c25a5 +SIZE (true-v1.0.0.tar.gz) = 62074 diff --git a/devel/py-git-url-parse/Makefile b/devel/py-git-url-parse/Makefile index 2217a26ac46..edecc5eba02 100644 --- a/devel/py-git-url-parse/Makefile +++ b/devel/py-git-url-parse/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= git-url-parse -PORTVERSION= 1.2.0 +PORTVERSION= 1.2.1 CATEGORIES= devel python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/devel/py-git-url-parse/distinfo b/devel/py-git-url-parse/distinfo index 06be83b01e6..7a0523f5e10 100644 --- a/devel/py-git-url-parse/distinfo +++ b/devel/py-git-url-parse/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1550731253 -SHA256 (git-url-parse-1.2.0.tar.gz) = 5817358173e9c41200da5750ca5cf9d1d3283d93d804f7e55613c1277e188060 -SIZE (git-url-parse-1.2.0.tar.gz) = 11753 +TIMESTAMP = 1552372723 +SHA256 (git-url-parse-1.2.1.tar.gz) = b06ee4850c070d6ad22f307a47c7ebff2cc3cdaeb56d35da8decb22917d9981f +SIZE (git-url-parse-1.2.1.tar.gz) = 12782 diff --git a/devel/rubygem-aws-sdk-core/Makefile b/devel/rubygem-aws-sdk-core/Makefile index bff734ed18f..8cb18558cc5 100644 --- a/devel/rubygem-aws-sdk-core/Makefile +++ b/devel/rubygem-aws-sdk-core/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= aws-sdk-core -DISTVERSION= 2.11.237 +DISTVERSION= 2.11.238 CATEGORIES= devel rubygems MASTER_SITES= RG diff --git a/devel/rubygem-aws-sdk-core/distinfo b/devel/rubygem-aws-sdk-core/distinfo index bb15a7acef7..8725b878ed8 100644 --- a/devel/rubygem-aws-sdk-core/distinfo +++ b/devel/rubygem-aws-sdk-core/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552133668 -SHA256 (rubygem/aws-sdk-core-2.11.237.gem) = e2ae4bed2d4ba441419ae9820446f5136d1cc3b3a8385cf46ce9f5a1b7910a76 -SIZE (rubygem/aws-sdk-core-2.11.237.gem) = 1532928 +TIMESTAMP = 1552404256 +SHA256 (rubygem/aws-sdk-core-2.11.238.gem) = 700b7cf1a08c996bc0593a902a389552c5bccbbf216db3ae0ac5f58977582abb +SIZE (rubygem/aws-sdk-core-2.11.238.gem) = 1532928 diff --git a/devel/rubygem-aws-sdk-resources/Makefile b/devel/rubygem-aws-sdk-resources/Makefile index c9722db7e78..e7c43bef422 100644 --- a/devel/rubygem-aws-sdk-resources/Makefile +++ b/devel/rubygem-aws-sdk-resources/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= aws-sdk-resources -DISTVERSION= 2.11.237 +DISTVERSION= 2.11.238 CATEGORIES= devel rubygems MASTER_SITES= RG diff --git a/devel/rubygem-aws-sdk-resources/distinfo b/devel/rubygem-aws-sdk-resources/distinfo index 8359d112285..2b2a8cb2db3 100644 --- a/devel/rubygem-aws-sdk-resources/distinfo +++ b/devel/rubygem-aws-sdk-resources/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552133669 -SHA256 (rubygem/aws-sdk-resources-2.11.237.gem) = 5af4f4c216dcdd7b8df93da4dc3bb97cf993d0d5f7f38472bcb5d8a2309cd21f -SIZE (rubygem/aws-sdk-resources-2.11.237.gem) = 48640 +TIMESTAMP = 1552404257 +SHA256 (rubygem/aws-sdk-resources-2.11.238.gem) = 0e2ad57df6110c706d669f93548387c10a2b3ba19c269fe9a0ceebd0bb87e5fe +SIZE (rubygem/aws-sdk-resources-2.11.238.gem) = 48640 diff --git a/devel/rubygem-aws-sdk/Makefile b/devel/rubygem-aws-sdk/Makefile index 163e50507ca..5705f9a2fc6 100644 --- a/devel/rubygem-aws-sdk/Makefile +++ b/devel/rubygem-aws-sdk/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= aws-sdk -DISTVERSION= 2.11.237 +DISTVERSION= 2.11.238 CATEGORIES= devel rubygems MASTER_SITES= RG diff --git a/devel/rubygem-aws-sdk/distinfo b/devel/rubygem-aws-sdk/distinfo index 813ea4356a8..c53c4dbb56d 100644 --- a/devel/rubygem-aws-sdk/distinfo +++ b/devel/rubygem-aws-sdk/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552133670 -SHA256 (rubygem/aws-sdk-2.11.237.gem) = 850331fb7a083cca90e2c25ce0612ad1f320c8d7e1664f0aa76919f07f64c302 -SIZE (rubygem/aws-sdk-2.11.237.gem) = 4608 +TIMESTAMP = 1552404259 +SHA256 (rubygem/aws-sdk-2.11.238.gem) = 4d09b33f33361f2699ce001ea8d79057c4b87947817d3946bb8012775df7b89b +SIZE (rubygem/aws-sdk-2.11.238.gem) = 4608 diff --git a/devel/rubygem-cairo-gobject/Makefile b/devel/rubygem-cairo-gobject/Makefile index 9ec562f3654..037171c8f25 100644 --- a/devel/rubygem-cairo-gobject/Makefile +++ b/devel/rubygem-cairo-gobject/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= cairo-gobject -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= devel rubygems MASTER_SITES= RG diff --git a/devel/rubygem-cairo-gobject/distinfo b/devel/rubygem-cairo-gobject/distinfo index 46bf8e7f9bb..46215d61b76 100644 --- a/devel/rubygem-cairo-gobject/distinfo +++ b/devel/rubygem-cairo-gobject/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209296 -SHA256 (rubygem/cairo-gobject-3.3.3.gem) = 7f5700baf075af68afcf76f6b5f55e339dda42e04f0eacd5b37fef47f91d0cae -SIZE (rubygem/cairo-gobject-3.3.3.gem) = 19456 +TIMESTAMP = 1552410010 +SHA256 (rubygem/cairo-gobject-3.3.4.gem) = f7782d34261aaf7ecd6974d29e076635fe516b5c286bf4b774d7a6a1404ecc42 +SIZE (rubygem/cairo-gobject-3.3.4.gem) = 19456 diff --git a/devel/rubygem-concurrent-ruby-edge/Makefile b/devel/rubygem-concurrent-ruby-edge/Makefile index 6117b3233ab..36c2a7f52a8 100644 --- a/devel/rubygem-concurrent-ruby-edge/Makefile +++ b/devel/rubygem-concurrent-ruby-edge/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= concurrent-ruby-edge -PORTVERSION= 0.4.1 +PORTVERSION= 0.5.0 CATEGORIES= devel rubygems MASTER_SITES= RG @@ -12,7 +12,7 @@ COMMENT= Bleeding edge features for concurrent-ruby LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE.md -RUN_DEPENDS= rubygem-concurrent-ruby>=1.1.1:devel/rubygem-concurrent-ruby +RUN_DEPENDS= rubygem-concurrent-ruby>=1.1.5:devel/rubygem-concurrent-ruby USES= gem USE_RUBY= yes diff --git a/devel/rubygem-concurrent-ruby-edge/distinfo b/devel/rubygem-concurrent-ruby-edge/distinfo index da5a810e363..536aaea87ae 100644 --- a/devel/rubygem-concurrent-ruby-edge/distinfo +++ b/devel/rubygem-concurrent-ruby-edge/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1541937296 -SHA256 (rubygem/concurrent-ruby-edge-0.4.1.gem) = efe783dabf08e82f8105ee0f67272a3033bcc690a8011de79922b811f6b7e690 -SIZE (rubygem/concurrent-ruby-edge-0.4.1.gem) = 49664 +TIMESTAMP = 1552404264 +SHA256 (rubygem/concurrent-ruby-edge-0.5.0.gem) = 03652653b652ddbf40688ff60abfcd228e98a518a105b552e0d8be8ad8280425 +SIZE (rubygem/concurrent-ruby-edge-0.5.0.gem) = 65536 diff --git a/devel/rubygem-concurrent-ruby-ext/Makefile b/devel/rubygem-concurrent-ruby-ext/Makefile index 7b11d001b82..2b8fb55c440 100644 --- a/devel/rubygem-concurrent-ruby-ext/Makefile +++ b/devel/rubygem-concurrent-ruby-ext/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= concurrent-ruby-ext -PORTVERSION= 1.1.4 +PORTVERSION= 1.1.5 CATEGORIES= devel rubygems MASTER_SITES= RG diff --git a/devel/rubygem-concurrent-ruby-ext/distinfo b/devel/rubygem-concurrent-ruby-ext/distinfo index 17cef37d2e1..398f70f250e 100644 --- a/devel/rubygem-concurrent-ruby-ext/distinfo +++ b/devel/rubygem-concurrent-ruby-ext/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1546271455 -SHA256 (rubygem/concurrent-ruby-ext-1.1.4.gem) = d56db0c1967f36562049ff5b3fb32b4a3e78b1015a785f057fdbc750a181df3b -SIZE (rubygem/concurrent-ruby-ext-1.1.4.gem) = 22016 +TIMESTAMP = 1552404266 +SHA256 (rubygem/concurrent-ruby-ext-1.1.5.gem) = 7f43c4d62e27cc21679562c4452592b81a5cc7da1f023716d83ea032c5d6d70f +SIZE (rubygem/concurrent-ruby-ext-1.1.5.gem) = 22528 diff --git a/devel/rubygem-concurrent-ruby/Makefile b/devel/rubygem-concurrent-ruby/Makefile index 7d12fc12763..6c6bf7b47d6 100644 --- a/devel/rubygem-concurrent-ruby/Makefile +++ b/devel/rubygem-concurrent-ruby/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= concurrent-ruby -PORTVERSION= 1.1.4 +PORTVERSION= 1.1.5 CATEGORIES= devel rubygems MASTER_SITES= RG diff --git a/devel/rubygem-concurrent-ruby/distinfo b/devel/rubygem-concurrent-ruby/distinfo index 3c297b03c5d..3e28adade39 100644 --- a/devel/rubygem-concurrent-ruby/distinfo +++ b/devel/rubygem-concurrent-ruby/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1546271452 -SHA256 (rubygem/concurrent-ruby-1.1.4.gem) = e12e6ab140d8d99c14763a605b9671a5e182d4bf6dc951d4cb5debe86eeaacc7 -SIZE (rubygem/concurrent-ruby-1.1.4.gem) = 353792 +TIMESTAMP = 1552404261 +SHA256 (rubygem/concurrent-ruby-1.1.5.gem) = 5611d14d8699996b17f18e704f4257b73349efa2d9a75fee6566a0a387c807f4 +SIZE (rubygem/concurrent-ruby-1.1.5.gem) = 356352 diff --git a/devel/rubygem-gio2/Makefile b/devel/rubygem-gio2/Makefile index c417279cea8..14f629f2294 100644 --- a/devel/rubygem-gio2/Makefile +++ b/devel/rubygem-gio2/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= gio2 -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= devel rubygems MASTER_SITES= RG diff --git a/devel/rubygem-gio2/distinfo b/devel/rubygem-gio2/distinfo index 15c03a73dff..d7326e16fc0 100644 --- a/devel/rubygem-gio2/distinfo +++ b/devel/rubygem-gio2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209299 -SHA256 (rubygem/gio2-3.3.3.gem) = 97d48d91c35f31206aad3b7920df5a88fd1eb1236e11f0c386d5c2b4047d4314 -SIZE (rubygem/gio2-3.3.3.gem) = 37376 +TIMESTAMP = 1552410013 +SHA256 (rubygem/gio2-3.3.4.gem) = 4430669cb0f9fa54192098c8f05f118bee3d0b8d23c448f8b7e3869f58ca7dd7 +SIZE (rubygem/gio2-3.3.4.gem) = 37376 diff --git a/devel/rubygem-glib2/Makefile b/devel/rubygem-glib2/Makefile index a13612f3430..e8642e0c37c 100644 --- a/devel/rubygem-glib2/Makefile +++ b/devel/rubygem-glib2/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= glib2 -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= devel rubygems MASTER_SITES= RG diff --git a/devel/rubygem-glib2/distinfo b/devel/rubygem-glib2/distinfo index 2c0d7377e75..bba48c702d2 100644 --- a/devel/rubygem-glib2/distinfo +++ b/devel/rubygem-glib2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209302 -SHA256 (rubygem/glib2-3.3.3.gem) = 40008c43360e7b0f2258b40315063457c73e6a0b8e239e1f48b50d5616c1a17c -SIZE (rubygem/glib2-3.3.3.gem) = 147456 +TIMESTAMP = 1552410017 +SHA256 (rubygem/glib2-3.3.4.gem) = 15f1edb28fd97f4fef5d98abf5afd6a26cb7c5d0cbd23a03d9e1c8a8afd9b24e +SIZE (rubygem/glib2-3.3.4.gem) = 147456 diff --git a/devel/rubygem-gobject-introspection/Makefile b/devel/rubygem-gobject-introspection/Makefile index d312f6f70d9..8e624c2adb4 100644 --- a/devel/rubygem-gobject-introspection/Makefile +++ b/devel/rubygem-gobject-introspection/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= gobject-introspection -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= devel rubygems MASTER_SITES= RG diff --git a/devel/rubygem-gobject-introspection/distinfo b/devel/rubygem-gobject-introspection/distinfo index 40b618987b2..d37313672f5 100644 --- a/devel/rubygem-gobject-introspection/distinfo +++ b/devel/rubygem-gobject-introspection/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209305 -SHA256 (rubygem/gobject-introspection-3.3.3.gem) = 8a65c4b36e492d152ac9cafd00717bbbce70adc4bf9422a593b38cf9f28ada36 -SIZE (rubygem/gobject-introspection-3.3.3.gem) = 66560 +TIMESTAMP = 1552410019 +SHA256 (rubygem/gobject-introspection-3.3.4.gem) = 00765ffd247f34d986d49d9340b0b1e83d935ad726a1b6af1548bc16da6b669e +SIZE (rubygem/gobject-introspection-3.3.4.gem) = 66560 diff --git a/dns/bind-tools/pkg-descr b/dns/bind-tools/pkg-descr index 6dee7a098c4..12064bc1eda 100644 --- a/dns/bind-tools/pkg-descr +++ b/dns/bind-tools/pkg-descr @@ -5,4 +5,5 @@ It also includes various dnssec related tools: dnssec-dsfromkey, dnssec-importkey, dnssec-keyfromlabel, dnssec-keygen, dnssec-revoke, dnssec-settime, dnssec-signzone, dnssec-verify -WWW: https://www.isc.org/software/bind +WWW: https://www.isc.org/downloads/bind/ + diff --git a/dns/bind9-devel/pkg-descr b/dns/bind9-devel/pkg-descr index c1b342a7354..4696a179097 100644 --- a/dns/bind9-devel/pkg-descr +++ b/dns/bind9-devel/pkg-descr @@ -12,4 +12,4 @@ Multiprocessor Support See the CHANGES file for more information on new features. -WWW: https://www.isc.org/software/bind +WWW: https://www.isc.org/downloads/bind/ diff --git a/dns/bind911/pkg-descr b/dns/bind911/pkg-descr index c1b342a7354..4696a179097 100644 --- a/dns/bind911/pkg-descr +++ b/dns/bind911/pkg-descr @@ -12,4 +12,4 @@ Multiprocessor Support See the CHANGES file for more information on new features. -WWW: https://www.isc.org/software/bind +WWW: https://www.isc.org/downloads/bind/ diff --git a/dns/bind913/pkg-descr b/dns/bind913/pkg-descr index c1b342a7354..4696a179097 100644 --- a/dns/bind913/pkg-descr +++ b/dns/bind913/pkg-descr @@ -12,4 +12,4 @@ Multiprocessor Support See the CHANGES file for more information on new features. -WWW: https://www.isc.org/software/bind +WWW: https://www.isc.org/downloads/bind/ diff --git a/dns/bind914/pkg-descr b/dns/bind914/pkg-descr index c1b342a7354..4696a179097 100644 --- a/dns/bind914/pkg-descr +++ b/dns/bind914/pkg-descr @@ -12,4 +12,4 @@ Multiprocessor Support See the CHANGES file for more information on new features. -WWW: https://www.isc.org/software/bind +WWW: https://www.isc.org/downloads/bind/ diff --git a/dns/p5-Mozilla-PublicSuffix/Makefile b/dns/p5-Mozilla-PublicSuffix/Makefile index 944638a268b..fae880bbc96 100644 --- a/dns/p5-Mozilla-PublicSuffix/Makefile +++ b/dns/p5-Mozilla-PublicSuffix/Makefile @@ -4,7 +4,7 @@ PORTNAME= Mozilla-PublicSuffix PORTVERSION= 1.0.0 DISTVERSIONPREFIX= v -PORTREVISION= 20 +PORTREVISION= 21 CATEGORIES= dns perl5 MASTER_SITES= CPAN PKGNAMEPREFIX= p5- diff --git a/dns/public_suffix_list/Makefile b/dns/public_suffix_list/Makefile index 9878a7f5236..7661d8e3f98 100644 --- a/dns/public_suffix_list/Makefile +++ b/dns/public_suffix_list/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= public_suffix_list -PORTVERSION= 20190205 +PORTVERSION= 20190221 CATEGORIES= dns MAINTAINER= sunpoet@FreeBSD.org @@ -21,7 +21,7 @@ PORTDATA= public_suffix_list.dat \ GH_ACCOUNT= publicsuffix GH_PROJECT= list -GH_TAGNAME= 5d3dfdf +GH_TAGNAME= 0e2a405 USE_GITHUB= yes do-install: diff --git a/dns/public_suffix_list/distinfo b/dns/public_suffix_list/distinfo index dde7ce73027..1656c8c463b 100644 --- a/dns/public_suffix_list/distinfo +++ b/dns/public_suffix_list/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1550524710 -SHA256 (publicsuffix-list-20190205-5d3dfdf_GH0.tar.gz) = eeb0db22e75b804d8d5da1047192c1a3d5b63649bfef0fda8d001a70ffe5c2b2 -SIZE (publicsuffix-list-20190205-5d3dfdf_GH0.tar.gz) = 86827 +TIMESTAMP = 1552406302 +SHA256 (publicsuffix-list-20190221-0e2a405_GH0.tar.gz) = 46b370ee621977cc81269cc7e6accac41bd11fa3b79b047d9d59a33544f90c9e +SIZE (publicsuffix-list-20190221-0e2a405_GH0.tar.gz) = 86754 diff --git a/dns/py-publicsuffix/Makefile b/dns/py-publicsuffix/Makefile index 815fbcf512f..9eaa9e34d81 100644 --- a/dns/py-publicsuffix/Makefile +++ b/dns/py-publicsuffix/Makefile @@ -3,7 +3,7 @@ PORTNAME= publicsuffix PORTVERSION= 1.1.0 -PORTREVISION= 15 +PORTREVISION= 16 CATEGORIES= dns python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/dns/py-publicsuffixlist/Makefile b/dns/py-publicsuffixlist/Makefile index 6961f9da8e3..a6dd2f8f34c 100644 --- a/dns/py-publicsuffixlist/Makefile +++ b/dns/py-publicsuffixlist/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= publicsuffixlist -PORTVERSION= 0.6.4 +PORTVERSION= 0.6.5 CATEGORIES= dns python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/dns/py-publicsuffixlist/distinfo b/dns/py-publicsuffixlist/distinfo index f028fe865a9..f2a296d3ef0 100644 --- a/dns/py-publicsuffixlist/distinfo +++ b/dns/py-publicsuffixlist/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1550524240 -SHA256 (publicsuffixlist-0.6.4.tar.gz) = 738afd3c8efa4d3805006353eeb373524ffb6c175f405c22d70cfaef0be0bef4 -SIZE (publicsuffixlist-0.6.4.tar.gz) = 83082 +TIMESTAMP = 1552404251 +SHA256 (publicsuffixlist-0.6.5.tar.gz) = 76ce8397db1cce0c86a9cfb310f97a285c79c2c2a4ba2e68935d8b7cfaa81b57 +SIZE (publicsuffixlist-0.6.5.tar.gz) = 83072 diff --git a/dns/rubygem-public_suffix/Makefile b/dns/rubygem-public_suffix/Makefile index e3680ac3550..824a390892c 100644 --- a/dns/rubygem-public_suffix/Makefile +++ b/dns/rubygem-public_suffix/Makefile @@ -3,7 +3,7 @@ PORTNAME= public_suffix PORTVERSION= 3.0.3 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= dns rubygems MASTER_SITES= RG diff --git a/dns/rubygem-public_suffix_service/Makefile b/dns/rubygem-public_suffix_service/Makefile index d7289997393..b79b8142498 100644 --- a/dns/rubygem-public_suffix_service/Makefile +++ b/dns/rubygem-public_suffix_service/Makefile @@ -3,7 +3,7 @@ PORTNAME= public_suffix_service PORTVERSION= 0.9.1 -PORTREVISION= 27 +PORTREVISION= 28 CATEGORIES= dns rubygems MASTER_SITES= RG diff --git a/emulators/xen-kernel/Makefile b/emulators/xen-kernel/Makefile index 06455d4df72..ff6b4de3b3e 100644 --- a/emulators/xen-kernel/Makefile +++ b/emulators/xen-kernel/Makefile @@ -2,7 +2,7 @@ PORTNAME= xen PORTVERSION= 4.11.1 -PORTREVISION= 0 +PORTREVISION= 1 CATEGORIES= emulators MASTER_SITES= http://downloads.xenproject.org/release/xen/${PORTVERSION}/ PKGNAMESUFFIX= -kernel @@ -45,6 +45,29 @@ EXTRA_PATCHES+= ${FILESDIR}/0001-x86-mtrr-introduce-mask-to-get-VCNT-from-MTRRca EXTRA_PATCHES+= ${FILESDIR}/0001-x86-replace-usage-in-the-linker-script.patch:-p1 # Fix PVH Dom0 build with shadow paging EXTRA_PATCHES+= ${FILESDIR}/0001-x86-pvh-change-the-order-of-the-iommu-initialization.patch:-p1 +# Forward dom0 lapic EOIs to underlying hardware +EXTRA_PATCHES+= ${FILESDIR}/0001-x86-dom0-propagate-PVH-vlapic-EOIs-to-hardware.patch:-p1 +# Fix deadlock in IO-APIC gsi mapping +EXTRA_PATCHES+= ${FILESDIR}/0001-pvh-dom0-fix-deadlock-in-GSI-mapping.patch:-p1 +# Fix for migration/save +EXTRA_PATCHES+= ${FILESDIR}/0001-x86-mm-locks-remove-trailing-whitespace.patch:-p1 \ + ${FILESDIR}/0002-x86-mm-locks-convert-some-macros-to-inline-functions.patch:-p1 \ + ${FILESDIR}/0003-x86-mm-locks-apply-a-bias-to-lock-levels-for-control.patch:-p1 + +# XSA-284 +EXTRA_PATCHES+= ${FILESDIR}/xsa284.patch:-p1 +# XSA-287 +EXTRA_PATCHES+= ${FILESDIR}/xsa287-4.11.patch:-p1 +# XSA-290 +EXTRA_PATCHES+= ${FILESDIR}/xsa290-4.11-1.patch:-p1 \ + ${FILESDIR}/xsa290-4.11-2.patch:-p1 +# XSA-292 +EXTRA_PATCHES+= ${FILESDIR}/xsa292.patch:-p1 +# XSA-293 +EXTRA_PATCHES+= ${FILESDIR}/xsa293-4.11-1.patch:-p1 \ + ${FILESDIR}/xsa293-4.11-2.patch:-p1 +# XSA-294 +EXTRA_PATCHES+= ${FILESDIR}/xsa294-4.11.patch:-p1 .include diff --git a/emulators/xen-kernel/files/0001-pvh-dom0-fix-deadlock-in-GSI-mapping.patch b/emulators/xen-kernel/files/0001-pvh-dom0-fix-deadlock-in-GSI-mapping.patch new file mode 100644 index 00000000000..e2258d28d36 --- /dev/null +++ b/emulators/xen-kernel/files/0001-pvh-dom0-fix-deadlock-in-GSI-mapping.patch @@ -0,0 +1,115 @@ +From 603ad88fe8a681a2c5408c3f432d7083dd1c41b1 Mon Sep 17 00:00:00 2001 +From: Roger Pau Monne +Date: Mon, 28 Jan 2019 15:22:45 +0100 +Subject: [PATCH] pvh/dom0: fix deadlock in GSI mapping +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The current GSI mapping code can cause the following deadlock: + +(XEN) *** Dumping CPU0 host state: *** +(XEN) ----[ Xen-4.12.0-rc x86_64 debug=y Tainted: C ]---- +[...] +(XEN) Xen call trace: +(XEN) [] vmac.c#_spin_lock_cb+0x32/0x70 +(XEN) [] vmac.c#hvm_gsi_assert+0x2f/0x60 <- pick hvm.irq_lock +(XEN) [] io.c#hvm_dirq_assist+0xd9/0x130 <- pick event_lock +(XEN) [] io.c#dpci_softirq+0xdb/0x120 +(XEN) [] softirq.c#__do_softirq+0x46/0xa0 +(XEN) [] domain.c#idle_loop+0x35/0x90 +(XEN) +[...] +(XEN) *** Dumping CPU3 host state: *** +(XEN) ----[ Xen-4.12.0-rc x86_64 debug=y Tainted: C ]---- +[...] +(XEN) Xen call trace: +(XEN) [] vmac.c#_spin_lock_cb+0x3d/0x70 +(XEN) [] vmac.c#allocate_and_map_gsi_pirq+0xc8/0x130 <- pick event_lock +(XEN) [] vioapic.c#vioapic_hwdom_map_gsi+0x80/0x130 +(XEN) [] vioapic.c#vioapic_write_redirent+0x119/0x1c0 <- pick hvm.irq_lock +(XEN) [] vioapic.c#vioapic_write+0x35/0x40 +(XEN) [] vmac.c#hvm_process_io_intercept+0xd2/0x230 +(XEN) [] vmac.c#hvm_io_intercept+0x22/0x50 +(XEN) [] emulate.c#hvmemul_do_io+0x21b/0x3c0 +(XEN) [] emulate.c#hvmemul_do_io_buffer+0x32/0x70 +(XEN) [] emulate.c#hvmemul_do_mmio_buffer+0x29/0x30 +(XEN) [] emulate.c#hvmemul_phys_mmio_access+0xf9/0x1b0 +(XEN) [] emulate.c#hvmemul_linear_mmio_access+0xf0/0x180 +(XEN) [] emulate.c#hvmemul_linear_mmio_write+0x21/0x30 +(XEN) [] emulate.c#linear_write+0xa2/0x100 +(XEN) [] emulate.c#hvmemul_write+0xb5/0x120 +(XEN) [] vmac.c#x86_emulate+0x132aa/0x149a0 +(XEN) [] vmac.c#x86_emulate_wrapper+0x29/0x70 +(XEN) [] emulate.c#_hvm_emulate_one+0x50/0x140 +(XEN) [] vmac.c#hvm_emulate_one_insn+0x41/0x100 +(XEN) [] guest_4.o#sh_page_fault__guest_4+0x976/0xd30 +(XEN) [] vmac.c#vmx_vmexit_handler+0x949/0xea0 +(XEN) [] vmac.c#vmx_asm_vmexit_handler+0xfa/0x270 + +In order to solve it move the vioapic_hwdom_map_gsi outside of the +locked region in vioapic_write_redirent. vioapic_hwdom_map_gsi will +not access any of the vioapic fields, so there's no need to call the +function holding the hvm.irq_lock. + +Signed-off-by: Roger Pau Monné +Reviewed-by: Wei Liu +Reviewed-by: Jan Beulich +Release-acked-by: Juergen Gross +--- + xen/arch/x86/hvm/vioapic.c | 32 ++++++++++++++++++-------------- + 1 file changed, 18 insertions(+), 14 deletions(-) + +diff --git a/xen/arch/x86/hvm/vioapic.c b/xen/arch/x86/hvm/vioapic.c +index 2b74f92d51..2d71c33c1c 100644 +--- a/xen/arch/x86/hvm/vioapic.c ++++ b/xen/arch/x86/hvm/vioapic.c +@@ -236,20 +236,6 @@ static void vioapic_write_redirent( + + *pent = ent; + +- if ( is_hardware_domain(d) && unmasked ) +- { +- int ret; +- +- ret = vioapic_hwdom_map_gsi(gsi, ent.fields.trig_mode, +- ent.fields.polarity); +- if ( ret ) +- { +- /* Mask the entry again. */ +- pent->fields.mask = 1; +- unmasked = 0; +- } +- } +- + if ( gsi == 0 ) + { + vlapic_adjust_i8259_target(d); +@@ -266,6 +252,24 @@ static void vioapic_write_redirent( + + spin_unlock(&d->arch.hvm.irq_lock); + ++ if ( is_hardware_domain(d) && unmasked ) ++ { ++ /* ++ * NB: don't call vioapic_hwdom_map_gsi while holding hvm.irq_lock ++ * since it can cause deadlocks as event_lock is taken by ++ * allocate_and_map_gsi_pirq, and that will invert the locking order ++ * used by other parts of the code. ++ */ ++ int ret = vioapic_hwdom_map_gsi(gsi, ent.fields.trig_mode, ++ ent.fields.polarity); ++ if ( ret ) ++ { ++ gprintk(XENLOG_ERR, ++ "unable to bind gsi %u to hardware domain: %d\n", gsi, ret); ++ unmasked = 0; ++ } ++ } ++ + if ( gsi == 0 || unmasked ) + pt_may_unmask_irq(d, NULL); + } +-- +2.17.2 (Apple Git-113) + diff --git a/emulators/xen-kernel/files/0001-x86-dom0-propagate-PVH-vlapic-EOIs-to-hardware.patch b/emulators/xen-kernel/files/0001-x86-dom0-propagate-PVH-vlapic-EOIs-to-hardware.patch new file mode 100644 index 00000000000..aaf3a2da22c --- /dev/null +++ b/emulators/xen-kernel/files/0001-x86-dom0-propagate-PVH-vlapic-EOIs-to-hardware.patch @@ -0,0 +1,39 @@ +From 19d2bce1c3cbfdc636c142cdf0ae38795f2202dd Mon Sep 17 00:00:00 2001 +From: Roger Pau Monne +Date: Thu, 14 Feb 2019 14:41:03 +0100 +Subject: [PATCH for-4.12] x86/dom0: propagate PVH vlapic EOIs to hardware +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Current check for MSI EIO is missing a special case for PVH Dom0, +which doesn't have a hvm_irq_dpci struct but requires EIOs to be +forwarded to the physical lapic for passed-through devices. + +Add a short-circuit to allow EOIs from PVH Dom0 to be propagated. + +Signed-off-by: Roger Pau Monné +--- +Cc: Jan Beulich +Cc: Juergen Gross +--- + xen/drivers/passthrough/io.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/xen/drivers/passthrough/io.c b/xen/drivers/passthrough/io.c +index a6eb8a4336..4290c7c710 100644 +--- a/xen/drivers/passthrough/io.c ++++ b/xen/drivers/passthrough/io.c +@@ -869,7 +869,8 @@ static int _hvm_dpci_msi_eoi(struct domain *d, + + void hvm_dpci_msi_eoi(struct domain *d, int vector) + { +- if ( !iommu_enabled || !hvm_domain_irq(d)->dpci ) ++ if ( !iommu_enabled || ++ (!hvm_domain_irq(d)->dpci && !is_hardware_domain(d)) ) + return; + + spin_lock(&d->event_lock); +-- +2.17.2 (Apple Git-113) + diff --git a/emulators/xen-kernel/files/0001-x86-mm-locks-remove-trailing-whitespace.patch b/emulators/xen-kernel/files/0001-x86-mm-locks-remove-trailing-whitespace.patch new file mode 100644 index 00000000000..6f6210f9ad0 --- /dev/null +++ b/emulators/xen-kernel/files/0001-x86-mm-locks-remove-trailing-whitespace.patch @@ -0,0 +1,101 @@ +From 468937da985661e5cd1d6b2df6d6ab2d1fb1e5e4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= +Date: Tue, 12 Mar 2019 12:21:03 +0100 +Subject: [PATCH 1/3] x86/mm-locks: remove trailing whitespace +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +No functional change. + +Signed-off-by: Roger Pau Monné +Reviewed-by: George Dunlap +--- + xen/arch/x86/mm/mm-locks.h | 24 ++++++++++++------------ + 1 file changed, 12 insertions(+), 12 deletions(-) + +diff --git a/xen/arch/x86/mm/mm-locks.h b/xen/arch/x86/mm/mm-locks.h +index e5fceb2d2e..6c15b9a4cc 100644 +--- a/xen/arch/x86/mm/mm-locks.h ++++ b/xen/arch/x86/mm/mm-locks.h +@@ -3,11 +3,11 @@ + * + * Spinlocks used by the code in arch/x86/mm. + * +- * Copyright (c) 2011 Citrix Systems, inc. ++ * Copyright (c) 2011 Citrix Systems, inc. + * Copyright (c) 2007 Advanced Micro Devices (Wei Huang) + * Copyright (c) 2006-2007 XenSource Inc. + * Copyright (c) 2006 Michael A Fetterman +- * ++ * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or +@@ -41,7 +41,7 @@ static inline void mm_lock_init(mm_lock_t *l) + l->unlock_level = 0; + } + +-static inline int mm_locked_by_me(mm_lock_t *l) ++static inline int mm_locked_by_me(mm_lock_t *l) + { + return (l->lock.recurse_cpu == current->processor); + } +@@ -67,7 +67,7 @@ do { \ + + static inline void _mm_lock(mm_lock_t *l, const char *func, int level, int rec) + { +- if ( !((mm_locked_by_me(l)) && rec) ) ++ if ( !((mm_locked_by_me(l)) && rec) ) + __check_lock_level(level); + spin_lock_recursive(&l->lock); + if ( l->lock.recurse_cnt == 1 ) +@@ -186,7 +186,7 @@ static inline void mm_unlock(mm_lock_t *l) + spin_unlock_recursive(&l->lock); + } + +-static inline void mm_enforce_order_unlock(int unlock_level, ++static inline void mm_enforce_order_unlock(int unlock_level, + unsigned short *recurse_count) + { + if ( recurse_count ) +@@ -310,7 +310,7 @@ declare_mm_rwlock(altp2m); + #define gfn_locked_by_me(p,g) p2m_locked_by_me(p) + + /* PoD lock (per-p2m-table) +- * ++ * + * Protects private PoD data structs: entry and cache + * counts, page lists, sweep parameters. */ + +@@ -322,7 +322,7 @@ declare_mm_lock(pod) + + /* Page alloc lock (per-domain) + * +- * This is an external lock, not represented by an mm_lock_t. However, ++ * This is an external lock, not represented by an mm_lock_t. However, + * pod code uses it in conjunction with the p2m lock, and expecting + * the ordering which we enforce here. + * The lock is not recursive. */ +@@ -338,13 +338,13 @@ declare_mm_order_constraint(page_alloc) + * For shadow pagetables, this lock protects + * - all changes to shadow page table pages + * - the shadow hash table +- * - the shadow page allocator ++ * - the shadow page allocator + * - all changes to guest page table pages + * - all changes to the page_info->tlbflush_timestamp +- * - the page_info->count fields on shadow pages +- * +- * For HAP, it protects the NPT/EPT tables and mode changes. +- * ++ * - the page_info->count fields on shadow pages ++ * ++ * For HAP, it protects the NPT/EPT tables and mode changes. ++ * + * It also protects the log-dirty bitmap from concurrent accesses (and + * teardowns, etc). */ + +-- +2.17.2 (Apple Git-113) + diff --git a/emulators/xen-kernel/files/0002-x86-mm-locks-convert-some-macros-to-inline-functions.patch b/emulators/xen-kernel/files/0002-x86-mm-locks-convert-some-macros-to-inline-functions.patch new file mode 100644 index 00000000000..86750bb1629 --- /dev/null +++ b/emulators/xen-kernel/files/0002-x86-mm-locks-convert-some-macros-to-inline-functions.patch @@ -0,0 +1,210 @@ +From 45e260afe7ee0e6b18a7e64173a081eec6e056aa Mon Sep 17 00:00:00 2001 +From: Roger Pau Monne +Date: Tue, 12 Mar 2019 12:24:37 +0100 +Subject: [PATCH 2/3] x86/mm-locks: convert some macros to inline functions +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +And rename to have only one prefix underscore where applicable. + +No functional change. + +Signed-off-by: Roger Pau Monné +Reviewed-by: George Dunlap +--- + xen/arch/x86/mm/mm-locks.h | 98 ++++++++++++++++++++------------------ + 1 file changed, 52 insertions(+), 46 deletions(-) + +diff --git a/xen/arch/x86/mm/mm-locks.h b/xen/arch/x86/mm/mm-locks.h +index 6c15b9a4cc..d3497713e9 100644 +--- a/xen/arch/x86/mm/mm-locks.h ++++ b/xen/arch/x86/mm/mm-locks.h +@@ -29,7 +29,6 @@ + + /* Per-CPU variable for enforcing the lock ordering */ + DECLARE_PER_CPU(int, mm_lock_level); +-#define __get_lock_level() (this_cpu(mm_lock_level)) + + DECLARE_PERCPU_RWLOCK_GLOBAL(p2m_percpu_rwlock); + +@@ -46,43 +45,47 @@ static inline int mm_locked_by_me(mm_lock_t *l) + return (l->lock.recurse_cpu == current->processor); + } + ++static inline int _get_lock_level(void) ++{ ++ return this_cpu(mm_lock_level); ++} ++ + /* + * If you see this crash, the numbers printed are order levels defined + * in this file. + */ +-#define __check_lock_level(l) \ +-do { \ +- if ( unlikely(__get_lock_level() > (l)) ) \ +- { \ +- printk("mm locking order violation: %i > %i\n", \ +- __get_lock_level(), (l)); \ +- BUG(); \ +- } \ +-} while(0) +- +-#define __set_lock_level(l) \ +-do { \ +- __get_lock_level() = (l); \ +-} while(0) ++static inline void _check_lock_level(int l) ++{ ++ if ( unlikely(_get_lock_level() > l) ) ++ { ++ printk("mm locking order violation: %i > %i\n", _get_lock_level(), l); ++ BUG(); ++ } ++} ++ ++static inline void _set_lock_level(int l) ++{ ++ this_cpu(mm_lock_level) = l; ++} + + static inline void _mm_lock(mm_lock_t *l, const char *func, int level, int rec) + { + if ( !((mm_locked_by_me(l)) && rec) ) +- __check_lock_level(level); ++ _check_lock_level(level); + spin_lock_recursive(&l->lock); + if ( l->lock.recurse_cnt == 1 ) + { + l->locker_function = func; +- l->unlock_level = __get_lock_level(); ++ l->unlock_level = _get_lock_level(); + } + else if ( (unlikely(!rec)) ) +- panic("mm lock already held by %s", l->locker_function); +- __set_lock_level(level); ++ panic("mm lock already held by %s\n", l->locker_function); ++ _set_lock_level(level); + } + + static inline void _mm_enforce_order_lock_pre(int level) + { +- __check_lock_level(level); ++ _check_lock_level(level); + } + + static inline void _mm_enforce_order_lock_post(int level, int *unlock_level, +@@ -92,12 +95,12 @@ static inline void _mm_enforce_order_lock_post(int level, int *unlock_level, + { + if ( (*recurse_count)++ == 0 ) + { +- *unlock_level = __get_lock_level(); ++ *unlock_level = _get_lock_level(); + } + } else { +- *unlock_level = __get_lock_level(); ++ *unlock_level = _get_lock_level(); + } +- __set_lock_level(level); ++ _set_lock_level(level); + } + + +@@ -118,12 +121,12 @@ static inline void _mm_write_lock(mm_rwlock_t *l, const char *func, int level) + { + if ( !mm_write_locked_by_me(l) ) + { +- __check_lock_level(level); ++ _check_lock_level(level); + percpu_write_lock(p2m_percpu_rwlock, &l->lock); + l->locker = get_processor_id(); + l->locker_function = func; +- l->unlock_level = __get_lock_level(); +- __set_lock_level(level); ++ l->unlock_level = _get_lock_level(); ++ _set_lock_level(level); + } + l->recurse_count++; + } +@@ -134,13 +137,13 @@ static inline void mm_write_unlock(mm_rwlock_t *l) + return; + l->locker = -1; + l->locker_function = "nobody"; +- __set_lock_level(l->unlock_level); ++ _set_lock_level(l->unlock_level); + percpu_write_unlock(p2m_percpu_rwlock, &l->lock); + } + + static inline void _mm_read_lock(mm_rwlock_t *l, int level) + { +- __check_lock_level(level); ++ _check_lock_level(level); + percpu_read_lock(p2m_percpu_rwlock, &l->lock); + /* There's nowhere to store the per-CPU unlock level so we can't + * set the lock level. */ +@@ -181,7 +184,7 @@ static inline void mm_unlock(mm_lock_t *l) + if ( l->lock.recurse_cnt == 1 ) + { + l->locker_function = "nobody"; +- __set_lock_level(l->unlock_level); ++ _set_lock_level(l->unlock_level); + } + spin_unlock_recursive(&l->lock); + } +@@ -194,10 +197,10 @@ static inline void mm_enforce_order_unlock(int unlock_level, + BUG_ON(*recurse_count == 0); + if ( (*recurse_count)-- == 1 ) + { +- __set_lock_level(unlock_level); ++ _set_lock_level(unlock_level); + } + } else { +- __set_lock_level(unlock_level); ++ _set_lock_level(unlock_level); + } + } + +@@ -287,21 +290,24 @@ declare_mm_lock(altp2mlist) + + #define MM_LOCK_ORDER_altp2m 40 + declare_mm_rwlock(altp2m); +-#define p2m_lock(p) \ +- do { \ +- if ( p2m_is_altp2m(p) ) \ +- mm_write_lock(altp2m, &(p)->lock); \ +- else \ +- mm_write_lock(p2m, &(p)->lock); \ +- (p)->defer_flush++; \ +- } while (0) +-#define p2m_unlock(p) \ +- do { \ +- if ( --(p)->defer_flush == 0 ) \ +- p2m_unlock_and_tlb_flush(p); \ +- else \ +- mm_write_unlock(&(p)->lock); \ +- } while (0) ++ ++static inline void p2m_lock(struct p2m_domain *p) ++{ ++ if ( p2m_is_altp2m(p) ) ++ mm_write_lock(altp2m, &p->lock); ++ else ++ mm_write_lock(p2m, &p->lock); ++ p->defer_flush++; ++} ++ ++static inline void p2m_unlock(struct p2m_domain *p) ++{ ++ if ( --p->defer_flush == 0 ) ++ p2m_unlock_and_tlb_flush(p); ++ else ++ mm_write_unlock(&p->lock); ++} ++ + #define gfn_lock(p,g,o) p2m_lock(p) + #define gfn_unlock(p,g,o) p2m_unlock(p) + #define p2m_read_lock(p) mm_read_lock(p2m, &(p)->lock) +-- +2.17.2 (Apple Git-113) + diff --git a/emulators/xen-kernel/files/0003-x86-mm-locks-apply-a-bias-to-lock-levels-for-control.patch b/emulators/xen-kernel/files/0003-x86-mm-locks-apply-a-bias-to-lock-levels-for-control.patch new file mode 100644 index 00000000000..4927a4fd7ce --- /dev/null +++ b/emulators/xen-kernel/files/0003-x86-mm-locks-apply-a-bias-to-lock-levels-for-control.patch @@ -0,0 +1,319 @@ +From efce89c1df5969486bef82eec05223a4a6522d2d Mon Sep 17 00:00:00 2001 +From: Roger Pau Monne +Date: Tue, 12 Mar 2019 12:25:21 +0100 +Subject: [PATCH 3/3] x86/mm-locks: apply a bias to lock levels for control + domain +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +paging_log_dirty_op function takes mm locks from a subject domain and +then attempts to perform copy to operations against the caller domain +in order to copy the result of the hypercall into the caller provided +buffer. + +This works fine when the caller is a non-paging domain, but triggers a +lock order panic when the caller is a paging domain due to the fact +that at the point where the copy to operation is performed the subject +domain paging lock is locked, and the copy operation requires +locking the caller p2m lock which has a lower level. + +Fix this limitation by adding a bias to the level of control domain mm +locks, so that the lower control domain mm lock always has a level +greater than the higher unprivileged domain lock level. This allows +locking the subject domain mm locks and then locking the control +domain mm locks, while keeping the same lock ordering and the changes +mostly confined to mm-locks.h. + +Note that so far only this flow (locking a subject domain locks and +then the control domain ones) has been identified, but not all +possible code paths have been inspected. Hence this solution attempts +to be a non-intrusive fix for the problem at hand, without discarding +further changes in the future if other valid code paths are found that +require more complex lock level ordering. + +Signed-off-by: Roger Pau Monné +Reviewed-by: George Dunlap +--- + xen/arch/x86/mm/mm-locks.h | 119 +++++++++++++++++++++++-------------- + xen/arch/x86/mm/p2m-pod.c | 5 +- + 2 files changed, 78 insertions(+), 46 deletions(-) + +diff --git a/xen/arch/x86/mm/mm-locks.h b/xen/arch/x86/mm/mm-locks.h +index d3497713e9..d6c073dc5c 100644 +--- a/xen/arch/x86/mm/mm-locks.h ++++ b/xen/arch/x86/mm/mm-locks.h +@@ -50,15 +50,35 @@ static inline int _get_lock_level(void) + return this_cpu(mm_lock_level); + } + ++#define MM_LOCK_ORDER_MAX 64 ++/* ++ * Return the lock level taking the domain bias into account. If the domain is ++ * privileged a bias of MM_LOCK_ORDER_MAX is applied to the lock level, so that ++ * mm locks that belong to a control domain can be acquired after having ++ * acquired mm locks of an unprivileged domain. ++ * ++ * This is required in order to use some hypercalls from a paging domain that ++ * take locks of a subject domain and then attempt to copy data to/from the ++ * caller domain. ++ */ ++static inline int _lock_level(const struct domain *d, int l) ++{ ++ ASSERT(l <= MM_LOCK_ORDER_MAX); ++ ++ return l + (d && is_control_domain(d) ? MM_LOCK_ORDER_MAX : 0); ++} ++ + /* + * If you see this crash, the numbers printed are order levels defined + * in this file. + */ +-static inline void _check_lock_level(int l) ++static inline void _check_lock_level(const struct domain *d, int l) + { +- if ( unlikely(_get_lock_level() > l) ) ++ int lvl = _lock_level(d, l); ++ ++ if ( unlikely(_get_lock_level() > lvl) ) + { +- printk("mm locking order violation: %i > %i\n", _get_lock_level(), l); ++ printk("mm locking order violation: %i > %i\n", _get_lock_level(), lvl); + BUG(); + } + } +@@ -68,10 +88,11 @@ static inline void _set_lock_level(int l) + this_cpu(mm_lock_level) = l; + } + +-static inline void _mm_lock(mm_lock_t *l, const char *func, int level, int rec) ++static inline void _mm_lock(const struct domain *d, mm_lock_t *l, ++ const char *func, int level, int rec) + { + if ( !((mm_locked_by_me(l)) && rec) ) +- _check_lock_level(level); ++ _check_lock_level(d, level); + spin_lock_recursive(&l->lock); + if ( l->lock.recurse_cnt == 1 ) + { +@@ -80,16 +101,17 @@ static inline void _mm_lock(mm_lock_t *l, const char *func, int level, int rec) + } + else if ( (unlikely(!rec)) ) + panic("mm lock already held by %s\n", l->locker_function); +- _set_lock_level(level); ++ _set_lock_level(_lock_level(d, level)); + } + +-static inline void _mm_enforce_order_lock_pre(int level) ++static inline void _mm_enforce_order_lock_pre(const struct domain *d, int level) + { +- _check_lock_level(level); ++ _check_lock_level(d, level); + } + +-static inline void _mm_enforce_order_lock_post(int level, int *unlock_level, +- unsigned short *recurse_count) ++static inline void _mm_enforce_order_lock_post(const struct domain *d, int level, ++ int *unlock_level, ++ unsigned short *recurse_count) + { + if ( recurse_count ) + { +@@ -100,7 +122,7 @@ static inline void _mm_enforce_order_lock_post(int level, int *unlock_level, + } else { + *unlock_level = _get_lock_level(); + } +- _set_lock_level(level); ++ _set_lock_level(_lock_level(d, level)); + } + + +@@ -117,16 +139,17 @@ static inline int mm_write_locked_by_me(mm_rwlock_t *l) + return (l->locker == get_processor_id()); + } + +-static inline void _mm_write_lock(mm_rwlock_t *l, const char *func, int level) ++static inline void _mm_write_lock(const struct domain *d, mm_rwlock_t *l, ++ const char *func, int level) + { + if ( !mm_write_locked_by_me(l) ) + { +- _check_lock_level(level); ++ _check_lock_level(d, level); + percpu_write_lock(p2m_percpu_rwlock, &l->lock); + l->locker = get_processor_id(); + l->locker_function = func; + l->unlock_level = _get_lock_level(); +- _set_lock_level(level); ++ _set_lock_level(_lock_level(d, level)); + } + l->recurse_count++; + } +@@ -141,9 +164,10 @@ static inline void mm_write_unlock(mm_rwlock_t *l) + percpu_write_unlock(p2m_percpu_rwlock, &l->lock); + } + +-static inline void _mm_read_lock(mm_rwlock_t *l, int level) ++static inline void _mm_read_lock(const struct domain *d, mm_rwlock_t *l, ++ int level) + { +- _check_lock_level(level); ++ _check_lock_level(d, level); + percpu_read_lock(p2m_percpu_rwlock, &l->lock); + /* There's nowhere to store the per-CPU unlock level so we can't + * set the lock level. */ +@@ -156,28 +180,32 @@ static inline void mm_read_unlock(mm_rwlock_t *l) + + /* This wrapper uses the line number to express the locking order below */ + #define declare_mm_lock(name) \ +- static inline void mm_lock_##name(mm_lock_t *l, const char *func, int rec)\ +- { _mm_lock(l, func, MM_LOCK_ORDER_##name, rec); } ++ static inline void mm_lock_##name(const struct domain *d, mm_lock_t *l, \ ++ const char *func, int rec) \ ++ { _mm_lock(d, l, func, MM_LOCK_ORDER_##name, rec); } + #define declare_mm_rwlock(name) \ +- static inline void mm_write_lock_##name(mm_rwlock_t *l, const char *func) \ +- { _mm_write_lock(l, func, MM_LOCK_ORDER_##name); } \ +- static inline void mm_read_lock_##name(mm_rwlock_t *l) \ +- { _mm_read_lock(l, MM_LOCK_ORDER_##name); } ++ static inline void mm_write_lock_##name(const struct domain *d, \ ++ mm_rwlock_t *l, const char *func) \ ++ { _mm_write_lock(d, l, func, MM_LOCK_ORDER_##name); } \ ++ static inline void mm_read_lock_##name(const struct domain *d, \ ++ mm_rwlock_t *l) \ ++ { _mm_read_lock(d, l, MM_LOCK_ORDER_##name); } + /* These capture the name of the calling function */ +-#define mm_lock(name, l) mm_lock_##name(l, __func__, 0) +-#define mm_lock_recursive(name, l) mm_lock_##name(l, __func__, 1) +-#define mm_write_lock(name, l) mm_write_lock_##name(l, __func__) +-#define mm_read_lock(name, l) mm_read_lock_##name(l) ++#define mm_lock(name, d, l) mm_lock_##name(d, l, __func__, 0) ++#define mm_lock_recursive(name, d, l) mm_lock_##name(d, l, __func__, 1) ++#define mm_write_lock(name, d, l) mm_write_lock_##name(d, l, __func__) ++#define mm_read_lock(name, d, l) mm_read_lock_##name(d, l) + + /* This wrapper is intended for "external" locks which do not use + * the mm_lock_t types. Such locks inside the mm code are also subject + * to ordering constraints. */ +-#define declare_mm_order_constraint(name) \ +- static inline void mm_enforce_order_lock_pre_##name(void) \ +- { _mm_enforce_order_lock_pre(MM_LOCK_ORDER_##name); } \ +- static inline void mm_enforce_order_lock_post_##name( \ +- int *unlock_level, unsigned short *recurse_count) \ +- { _mm_enforce_order_lock_post(MM_LOCK_ORDER_##name, unlock_level, recurse_count); } \ ++#define declare_mm_order_constraint(name) \ ++ static inline void mm_enforce_order_lock_pre_##name(const struct domain *d) \ ++ { _mm_enforce_order_lock_pre(d, MM_LOCK_ORDER_##name); } \ ++ static inline void mm_enforce_order_lock_post_##name(const struct domain *d,\ ++ int *unlock_level, unsigned short *recurse_count) \ ++ { _mm_enforce_order_lock_post(d, MM_LOCK_ORDER_##name, unlock_level, \ ++ recurse_count); } + + static inline void mm_unlock(mm_lock_t *l) + { +@@ -221,7 +249,7 @@ static inline void mm_enforce_order_unlock(int unlock_level, + + #define MM_LOCK_ORDER_nestedp2m 8 + declare_mm_lock(nestedp2m) +-#define nestedp2m_lock(d) mm_lock(nestedp2m, &(d)->arch.nested_p2m_lock) ++#define nestedp2m_lock(d) mm_lock(nestedp2m, d, &(d)->arch.nested_p2m_lock) + #define nestedp2m_unlock(d) mm_unlock(&(d)->arch.nested_p2m_lock) + + /* P2M lock (per-non-alt-p2m-table) +@@ -260,9 +288,10 @@ declare_mm_rwlock(p2m); + + #define MM_LOCK_ORDER_per_page_sharing 24 + declare_mm_order_constraint(per_page_sharing) +-#define page_sharing_mm_pre_lock() mm_enforce_order_lock_pre_per_page_sharing() ++#define page_sharing_mm_pre_lock() \ ++ mm_enforce_order_lock_pre_per_page_sharing(NULL) + #define page_sharing_mm_post_lock(l, r) \ +- mm_enforce_order_lock_post_per_page_sharing((l), (r)) ++ mm_enforce_order_lock_post_per_page_sharing(NULL, (l), (r)) + #define page_sharing_mm_unlock(l, r) mm_enforce_order_unlock((l), (r)) + + /* Alternate P2M list lock (per-domain) +@@ -275,7 +304,8 @@ declare_mm_order_constraint(per_page_sharing) + + #define MM_LOCK_ORDER_altp2mlist 32 + declare_mm_lock(altp2mlist) +-#define altp2m_list_lock(d) mm_lock(altp2mlist, &(d)->arch.altp2m_list_lock) ++#define altp2m_list_lock(d) mm_lock(altp2mlist, d, \ ++ &(d)->arch.altp2m_list_lock) + #define altp2m_list_unlock(d) mm_unlock(&(d)->arch.altp2m_list_lock) + + /* P2M lock (per-altp2m-table) +@@ -294,9 +324,9 @@ declare_mm_rwlock(altp2m); + static inline void p2m_lock(struct p2m_domain *p) + { + if ( p2m_is_altp2m(p) ) +- mm_write_lock(altp2m, &p->lock); ++ mm_write_lock(altp2m, p->domain, &p->lock); + else +- mm_write_lock(p2m, &p->lock); ++ mm_write_lock(p2m, p->domain, &p->lock); + p->defer_flush++; + } + +@@ -310,7 +340,7 @@ static inline void p2m_unlock(struct p2m_domain *p) + + #define gfn_lock(p,g,o) p2m_lock(p) + #define gfn_unlock(p,g,o) p2m_unlock(p) +-#define p2m_read_lock(p) mm_read_lock(p2m, &(p)->lock) ++#define p2m_read_lock(p) mm_read_lock(p2m, (p)->domain, &(p)->lock) + #define p2m_read_unlock(p) mm_read_unlock(&(p)->lock) + #define p2m_locked_by_me(p) mm_write_locked_by_me(&(p)->lock) + #define gfn_locked_by_me(p,g) p2m_locked_by_me(p) +@@ -322,7 +352,7 @@ static inline void p2m_unlock(struct p2m_domain *p) + + #define MM_LOCK_ORDER_pod 48 + declare_mm_lock(pod) +-#define pod_lock(p) mm_lock(pod, &(p)->pod.lock) ++#define pod_lock(p) mm_lock(pod, (p)->domain, &(p)->pod.lock) + #define pod_unlock(p) mm_unlock(&(p)->pod.lock) + #define pod_locked_by_me(p) mm_locked_by_me(&(p)->pod.lock) + +@@ -335,8 +365,9 @@ declare_mm_lock(pod) + + #define MM_LOCK_ORDER_page_alloc 56 + declare_mm_order_constraint(page_alloc) +-#define page_alloc_mm_pre_lock() mm_enforce_order_lock_pre_page_alloc() +-#define page_alloc_mm_post_lock(l) mm_enforce_order_lock_post_page_alloc(&(l), NULL) ++#define page_alloc_mm_pre_lock(d) mm_enforce_order_lock_pre_page_alloc(d) ++#define page_alloc_mm_post_lock(d, l) \ ++ mm_enforce_order_lock_post_page_alloc(d, &(l), NULL) + #define page_alloc_mm_unlock(l) mm_enforce_order_unlock((l), NULL) + + /* Paging lock (per-domain) +@@ -356,9 +387,9 @@ declare_mm_order_constraint(page_alloc) + + #define MM_LOCK_ORDER_paging 64 + declare_mm_lock(paging) +-#define paging_lock(d) mm_lock(paging, &(d)->arch.paging.lock) ++#define paging_lock(d) mm_lock(paging, d, &(d)->arch.paging.lock) + #define paging_lock_recursive(d) \ +- mm_lock_recursive(paging, &(d)->arch.paging.lock) ++ mm_lock_recursive(paging, d, &(d)->arch.paging.lock) + #define paging_unlock(d) mm_unlock(&(d)->arch.paging.lock) + #define paging_locked_by_me(d) mm_locked_by_me(&(d)->arch.paging.lock) + +diff --git a/xen/arch/x86/mm/p2m-pod.c b/xen/arch/x86/mm/p2m-pod.c +index 631e9aec33..725a2921d9 100644 +--- a/xen/arch/x86/mm/p2m-pod.c ++++ b/xen/arch/x86/mm/p2m-pod.c +@@ -34,9 +34,10 @@ + /* Enforce lock ordering when grabbing the "external" page_alloc lock */ + static inline void lock_page_alloc(struct p2m_domain *p2m) + { +- page_alloc_mm_pre_lock(); ++ page_alloc_mm_pre_lock(p2m->domain); + spin_lock(&(p2m->domain->page_alloc_lock)); +- page_alloc_mm_post_lock(p2m->domain->arch.page_alloc_unlock_level); ++ page_alloc_mm_post_lock(p2m->domain, ++ p2m->domain->arch.page_alloc_unlock_level); + } + + static inline void unlock_page_alloc(struct p2m_domain *p2m) +-- +2.17.2 (Apple Git-113) + diff --git a/emulators/xen-kernel/files/xsa284.patch b/emulators/xen-kernel/files/xsa284.patch new file mode 100644 index 00000000000..0b5dcd0f029 --- /dev/null +++ b/emulators/xen-kernel/files/xsa284.patch @@ -0,0 +1,31 @@ +From: Jan Beulich +Subject: gnttab: set page refcount for copy-on-grant-transfer + +Commit 5cc77f9098 ("32-on-64: Fix domain address-size clamping, +implement"), which introduced this functionality, took care of clearing +the old page's PGC_allocated, but failed to set the bit (and install the +associated reference) on the newly allocated one. Furthermore the "mfn" +local variable was never updated, and hence the wrong MFN was passed to +guest_physmap_add_page() (and back to the destination domain) in this +case, leading to an IOMMU mapping into an unowned page. + +Ideally the code would use assign_pages(), but the call to +gnttab_prepare_for_transfer() sits in the middle of the actions +mirroring that function. + +This is XSA-284. + +Signed-off-by: Jan Beulich +Acked-by: George Dunlap + +--- a/xen/common/grant_table.c ++++ b/xen/common/grant_table.c +@@ -2183,6 +2183,8 @@ gnttab_transfer( + page->count_info &= ~(PGC_count_mask|PGC_allocated); + free_domheap_page(page); + page = new_page; ++ page->count_info = PGC_allocated | 1; ++ mfn = page_to_mfn(page); + } + + spin_lock(&e->page_alloc_lock); diff --git a/emulators/xen-kernel/files/xsa287-4.11.patch b/emulators/xen-kernel/files/xsa287-4.11.patch new file mode 100644 index 00000000000..8563560e151 --- /dev/null +++ b/emulators/xen-kernel/files/xsa287-4.11.patch @@ -0,0 +1,328 @@ +From 67620c1ccb13f7b58645f48248ba1f408b021fdc Mon Sep 17 00:00:00 2001 +From: George Dunlap +Date: Fri, 18 Jan 2019 15:00:34 +0000 +Subject: [PATCH] steal_page: Get rid of bogus struct page states + +The original rules for `struct page` required the following invariants +at all times: + +- refcount > 0 implies owner != NULL +- PGC_allocated implies refcount > 0 + +steal_page, in a misguided attempt to protect against unknown races, +violates both of these rules, thus introducing other races: + +- Temporarily, the count_info has the refcount go to 0 while + PGC_allocated is set + +- It explicitly returns the page PGC_allocated set, but owner == NULL + and page not on the page_list. + +The second one meant that page_get_owner_and_reference() could return +NULL even after having successfully grabbed a reference on the page, +leading the caller to leak the reference (since "couldn't get ref" and +"got ref but no owner" look the same). + +Furthermore, rather than grabbing a page reference to ensure that the +owner doesn't change under its feet, it appears to rely on holding +d->page_alloc lock to prevent this. + +Unfortunately, this is ineffective: page->owner remains non-NULL for +some time after the count has been set to 0; meaning that it would be +entirely possible for the page to be freed and re-allocated to a +different domain between the page_get_owner() check and the count_info +check. + +Modify steal_page to instead follow the appropriate access discipline, +taking the page through series of states similar to being freed and +then re-allocated with MEMF_no_owner: + +- Grab an extra reference to make sure we don't race with anyone else + freeing the page + +- Drop both references and PGC_allocated atomically, so that (if +successful), anyone else trying to grab a reference will fail + +- Attempt to reset Xen's mappings + +- Reset the rest of the state. + +Then, modify the two callers appropriately: + +- Leave count_info alone (it's already been cleared) +- Call free_domheap_page() directly if appropriate +- Call assign_pages() rather than open-coding a partial assign + +With all callers to assign_pages() now passing in pages with the +type_info field clear, tighten the respective assertion there. + +This is XSA-287. + +Signed-off-by: George Dunlap +Signed-off-by: Jan Beulich +--- + xen/arch/x86/mm.c | 84 ++++++++++++++++++++++++++++------------ + xen/common/grant_table.c | 20 +++++----- + xen/common/memory.c | 19 +++++---- + xen/common/page_alloc.c | 2 +- + 4 files changed, 83 insertions(+), 42 deletions(-) + +diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c +index 6509035a5c..d8ff58c901 100644 +--- a/xen/arch/x86/mm.c ++++ b/xen/arch/x86/mm.c +@@ -3966,70 +3966,106 @@ int donate_page( + return -EINVAL; + } + ++/* ++ * Steal page will attempt to remove `page` from domain `d`. Upon ++ * return, `page` will be in a state similar to the state of a page ++ * returned from alloc_domheap_page() with MEMF_no_owner set: ++ * - refcount 0 ++ * - type count cleared ++ * - owner NULL ++ * - page caching attributes cleaned up ++ * - removed from the domain's page_list ++ * ++ * If MEMF_no_refcount is not set, the domain's tot_pages will be ++ * adjusted. If this results in the page count falling to 0, ++ * put_domain() will be called. ++ * ++ * The caller should either call free_domheap_page() to free the ++ * page, or assign_pages() to put it back on some domain's page list. ++ */ + int steal_page( + struct domain *d, struct page_info *page, unsigned int memflags) + { + unsigned long x, y; + bool drop_dom_ref = false; +- const struct domain *owner = dom_xen; ++ const struct domain *owner; ++ int rc; + + if ( paging_mode_external(d) ) + return -EOPNOTSUPP; + +- spin_lock(&d->page_alloc_lock); +- +- if ( is_xen_heap_page(page) || ((owner = page_get_owner(page)) != d) ) ++ /* Grab a reference to make sure the page doesn't change under our feet */ ++ rc = -EINVAL; ++ if ( !(owner = page_get_owner_and_reference(page)) ) + goto fail; + ++ if ( owner != d || is_xen_heap_page(page) ) ++ goto fail_put; ++ + /* +- * We require there is just one reference (PGC_allocated). We temporarily +- * drop this reference now so that we can safely swizzle the owner. ++ * We require there are exactly two references -- the one we just ++ * took, and PGC_allocated. We temporarily drop both these ++ * references so that the page becomes effectively non-"live" for ++ * the domain. + */ + y = page->count_info; + do { + x = y; +- if ( (x & (PGC_count_mask|PGC_allocated)) != (1 | PGC_allocated) ) +- goto fail; +- y = cmpxchg(&page->count_info, x, x & ~PGC_count_mask); ++ if ( (x & (PGC_count_mask|PGC_allocated)) != (2 | PGC_allocated) ) ++ goto fail_put; ++ y = cmpxchg(&page->count_info, x, x & ~(PGC_count_mask|PGC_allocated)); + } while ( y != x ); + + /* +- * With the sole reference dropped temporarily, no-one can update type +- * information. Type count also needs to be zero in this case, but e.g. +- * PGT_seg_desc_page may still have PGT_validated set, which we need to +- * clear before transferring ownership (as validation criteria vary +- * depending on domain type). ++ * NB this is safe even if the page ends up being given back to ++ * the domain, because the count is zero: subsequent mappings will ++ * cause the cache attributes to be re-instated inside ++ * get_page_from_l1e(). ++ */ ++ if ( (rc = cleanup_page_cacheattr(page)) ) ++ { ++ /* ++ * Couldn't fixup Xen's mappings; put things the way we found ++ * it and return an error ++ */ ++ page->count_info |= PGC_allocated | 1; ++ goto fail; ++ } ++ ++ /* ++ * With the reference count now zero, nobody can grab references ++ * to do anything else with the page. Return the page to a state ++ * that it might be upon return from alloc_domheap_pages with ++ * MEMF_no_owner set. + */ ++ spin_lock(&d->page_alloc_lock); ++ + BUG_ON(page->u.inuse.type_info & (PGT_count_mask | PGT_locked | + PGT_pinned)); + page->u.inuse.type_info = 0; +- +- /* Swizzle the owner then reinstate the PGC_allocated reference. */ + page_set_owner(page, NULL); +- y = page->count_info; +- do { +- x = y; +- BUG_ON((x & (PGC_count_mask|PGC_allocated)) != PGC_allocated); +- } while ( (y = cmpxchg(&page->count_info, x, x | 1)) != x ); ++ page_list_del(page, &d->page_list); + + /* Unlink from original owner. */ + if ( !(memflags & MEMF_no_refcount) && !domain_adjust_tot_pages(d, -1) ) + drop_dom_ref = true; +- page_list_del(page, &d->page_list); + + spin_unlock(&d->page_alloc_lock); ++ + if ( unlikely(drop_dom_ref) ) + put_domain(d); ++ + return 0; + ++ fail_put: ++ put_page(page); + fail: +- spin_unlock(&d->page_alloc_lock); + gdprintk(XENLOG_WARNING, "Bad steal mfn %" PRI_mfn + " from d%d (owner d%d) caf=%08lx taf=%" PRtype_info "\n", + mfn_x(page_to_mfn(page)), d->domain_id, + owner ? owner->domain_id : DOMID_INVALID, + page->count_info, page->u.inuse.type_info); +- return -EINVAL; ++ return rc; + } + + static int __do_update_va_mapping( +diff --git a/xen/common/grant_table.c b/xen/common/grant_table.c +index c0585d33f4..656fad1b42 100644 +--- a/xen/common/grant_table.c ++++ b/xen/common/grant_table.c +@@ -2179,7 +2179,7 @@ gnttab_transfer( + rcu_unlock_domain(e); + put_gfn_and_copyback: + put_gfn(d, gop.mfn); +- page->count_info &= ~(PGC_count_mask|PGC_allocated); ++ /* The count_info has already been cleaned */ + free_domheap_page(page); + goto copyback; + } +@@ -2202,10 +2202,9 @@ gnttab_transfer( + + copy_domain_page(page_to_mfn(new_page), mfn); + +- page->count_info &= ~(PGC_count_mask|PGC_allocated); ++ /* The count_info has already been cleared */ + free_domheap_page(page); + page = new_page; +- page->count_info = PGC_allocated | 1; + mfn = page_to_mfn(page); + } + +@@ -2245,12 +2244,17 @@ gnttab_transfer( + */ + spin_unlock(&e->page_alloc_lock); + okay = gnttab_prepare_for_transfer(e, d, gop.ref); +- spin_lock(&e->page_alloc_lock); + +- if ( unlikely(!okay) || unlikely(e->is_dying) ) ++ if ( unlikely(!okay || assign_pages(e, page, 0, MEMF_no_refcount)) ) + { +- bool_t drop_dom_ref = !domain_adjust_tot_pages(e, -1); ++ bool drop_dom_ref; + ++ /* ++ * Need to grab this again to safely free our "reserved" ++ * page in the page total ++ */ ++ spin_lock(&e->page_alloc_lock); ++ drop_dom_ref = !domain_adjust_tot_pages(e, -1); + spin_unlock(&e->page_alloc_lock); + + if ( okay /* i.e. e->is_dying due to the surrounding if() */ ) +@@ -2263,10 +2267,6 @@ gnttab_transfer( + goto unlock_and_copyback; + } + +- page_list_add_tail(page, &e->page_list); +- page_set_owner(page, e); +- +- spin_unlock(&e->page_alloc_lock); + put_gfn(d, gop.mfn); + + TRACE_1D(TRC_MEM_PAGE_GRANT_TRANSFER, e->domain_id); +diff --git a/xen/common/memory.c b/xen/common/memory.c +index 4fb7962c79..f71163221f 100644 +--- a/xen/common/memory.c ++++ b/xen/common/memory.c +@@ -675,20 +675,22 @@ static long memory_exchange(XEN_GUEST_HANDLE_PARAM(xen_memory_exchange_t) arg) + * Success! Beyond this point we cannot fail for this chunk. + */ + +- /* Destroy final reference to each input page. */ ++ /* ++ * These pages have already had owner and reference cleared. ++ * Do the final two steps: Remove from the physmap, and free ++ * them. ++ */ + while ( (page = page_list_remove_head(&in_chunk_list)) ) + { + unsigned long gfn; + +- if ( !test_and_clear_bit(_PGC_allocated, &page->count_info) ) +- BUG(); + mfn = page_to_mfn(page); + gfn = mfn_to_gmfn(d, mfn_x(mfn)); + /* Pages were unshared above */ + BUG_ON(SHARED_M2P(gfn)); + if ( guest_physmap_remove_page(d, _gfn(gfn), mfn, 0) ) + domain_crash(d); +- put_page(page); ++ free_domheap_page(page); + } + + /* Assign each output page to the domain. */ +@@ -761,13 +763,16 @@ static long memory_exchange(XEN_GUEST_HANDLE_PARAM(xen_memory_exchange_t) arg) + * chunks succeeded. + */ + fail: +- /* Reassign any input pages we managed to steal. */ ++ /* ++ * Reassign any input pages we managed to steal. NB that if the assign ++ * fails again, we're on the hook for freeing the page, since we've already ++ * cleared PGC_allocated. ++ */ + while ( (page = page_list_remove_head(&in_chunk_list)) ) + if ( assign_pages(d, page, 0, MEMF_no_refcount) ) + { + BUG_ON(!d->is_dying); +- if ( test_and_clear_bit(_PGC_allocated, &page->count_info) ) +- put_page(page); ++ free_domheap_page(page); + } + + dying: +diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c +index 482f0988f7..52da7762e3 100644 +--- a/xen/common/page_alloc.c ++++ b/xen/common/page_alloc.c +@@ -2221,7 +2221,7 @@ int assign_pages( + for ( i = 0; i < (1 << order); i++ ) + { + ASSERT(page_get_owner(&pg[i]) == NULL); +- ASSERT((pg[i].count_info & ~(PGC_allocated | 1)) == 0); ++ ASSERT(!pg[i].count_info); + page_set_owner(&pg[i], d); + smp_wmb(); /* Domain pointer must be visible before updating refcnt. */ + pg[i].count_info = PGC_allocated | 1; +-- +2.20.1 + diff --git a/emulators/xen-kernel/files/xsa290-4.11-1.patch b/emulators/xen-kernel/files/xsa290-4.11-1.patch new file mode 100644 index 00000000000..38ddb56cf29 --- /dev/null +++ b/emulators/xen-kernel/files/xsa290-4.11-1.patch @@ -0,0 +1,237 @@ +From: Jan Beulich +Subject: x86/mm: also allow L2 (un)validation to be preemptible + +Commit c612481d1c ("x86/mm: Plumbing to allow any PTE update to fail +with -ERESTART") added assertions next to the {alloc,free}_l2_table() +invocations to document (and validate in debug builds) that L2 +(un)validations are always preemptible. + +The assertion in free_page_type() was now observed to trigger when +recursive L2 page tables get cleaned up. + +In particular put_page_from_l2e()'s assumption that _put_page_type() +would always succeed is now wrong, resulting in a partially un-validated +page left in a domain, which has no other means of getting cleaned up +later on. If not causing any problems earlier, this would ultimately +trigger the check for ->u.inuse.type_info having a zero count when +freeing the page during cleanup after the domain has died. + +As a result it should be considered a mistake to not have extended +preemption fully to L2 when it was added to L3/L4 table handling, which +this change aims to correct. + +The validation side additions are done just for symmetry. + +This is part of XSA-290. + +Reported-by: Manuel Bouyer +Tested-by: Manuel Bouyer +Signed-off-by: Jan Beulich +Reviewed-by: Andrew Cooper + +--- a/xen/arch/x86/mm.c ++++ b/xen/arch/x86/mm.c +@@ -1126,7 +1126,7 @@ get_page_from_l1e( + define_get_linear_pagetable(l2); + static int + get_page_from_l2e( +- l2_pgentry_t l2e, unsigned long pfn, struct domain *d) ++ l2_pgentry_t l2e, unsigned long pfn, struct domain *d, int partial) + { + unsigned long mfn = l2e_get_pfn(l2e); + int rc; +@@ -1141,7 +1141,8 @@ get_page_from_l2e( + return -EINVAL; + } + +- rc = get_page_and_type_from_mfn(_mfn(mfn), PGT_l1_page_table, d, 0, 0); ++ rc = get_page_and_type_from_mfn(_mfn(mfn), PGT_l1_page_table, d, ++ partial, false); + if ( unlikely(rc == -EINVAL) && get_l2_linear_pagetable(l2e, pfn, d) ) + rc = 0; + +@@ -1295,8 +1296,11 @@ void put_page_from_l1e(l1_pgentry_t l1e, + * NB. Virtual address 'l2e' maps to a machine address within frame 'pfn'. + * Note also that this automatically deals correctly with linear p.t.'s. + */ +-static int put_page_from_l2e(l2_pgentry_t l2e, unsigned long pfn) ++static int put_page_from_l2e(l2_pgentry_t l2e, unsigned long pfn, ++ int partial, bool defer) + { ++ int rc = 0; ++ + if ( !(l2e_get_flags(l2e) & _PAGE_PRESENT) || (l2e_get_pfn(l2e) == pfn) ) + return 1; + +@@ -1311,13 +1315,27 @@ static int put_page_from_l2e(l2_pgentry_ + else + { + struct page_info *pg = l2e_get_page(l2e); +- int rc = _put_page_type(pg, false, mfn_to_page(_mfn(pfn))); ++ struct page_info *ptpg = mfn_to_page(_mfn(pfn)); + +- ASSERT(!rc); +- put_page(pg); ++ if ( unlikely(partial > 0) ) ++ { ++ ASSERT(!defer); ++ rc = _put_page_type(pg, true, ptpg); ++ } ++ else if ( defer ) ++ { ++ current->arch.old_guest_ptpg = ptpg; ++ current->arch.old_guest_table = pg; ++ } ++ else ++ { ++ rc = _put_page_type(pg, true, ptpg); ++ if ( likely(!rc) ) ++ put_page(pg); ++ } + } + +- return 0; ++ return rc; + } + + static int put_page_from_l3e(l3_pgentry_t l3e, unsigned long pfn, +@@ -1487,11 +1505,12 @@ static int alloc_l2_table(struct page_in + unsigned long pfn = mfn_x(page_to_mfn(page)); + l2_pgentry_t *pl2e; + unsigned int i; +- int rc = 0; ++ int rc = 0, partial = page->partial_pte; + + pl2e = map_domain_page(_mfn(pfn)); + +- for ( i = page->nr_validated_ptes; i < L2_PAGETABLE_ENTRIES; i++ ) ++ for ( i = page->nr_validated_ptes; i < L2_PAGETABLE_ENTRIES; ++ i++, partial = 0 ) + { + if ( i > page->nr_validated_ptes && hypercall_preempt_check() ) + { +@@ -1501,23 +1520,33 @@ static int alloc_l2_table(struct page_in + } + + if ( !is_guest_l2_slot(d, type, i) || +- (rc = get_page_from_l2e(pl2e[i], pfn, d)) > 0 ) ++ (rc = get_page_from_l2e(pl2e[i], pfn, d, partial)) > 0 ) + continue; + +- if ( unlikely(rc == -ERESTART) ) ++ if ( rc == -ERESTART ) + { + page->nr_validated_ptes = i; +- break; ++ page->partial_pte = partial ?: 1; + } +- +- if ( rc < 0 ) ++ else if ( rc == -EINTR && i ) ++ { ++ page->nr_validated_ptes = i; ++ page->partial_pte = 0; ++ rc = -ERESTART; ++ } ++ else if ( rc < 0 && rc != -EINTR ) + { + gdprintk(XENLOG_WARNING, "Failure in alloc_l2_table: slot %#x\n", i); +- while ( i-- > 0 ) +- if ( is_guest_l2_slot(d, type, i) ) +- put_page_from_l2e(pl2e[i], pfn); +- break; ++ if ( i ) ++ { ++ page->nr_validated_ptes = i; ++ page->partial_pte = 0; ++ current->arch.old_guest_ptpg = NULL; ++ current->arch.old_guest_table = page; ++ } + } ++ if ( rc < 0 ) ++ break; + + pl2e[i] = adjust_guest_l2e(pl2e[i], d); + } +@@ -1797,28 +1826,50 @@ static int free_l2_table(struct page_inf + struct domain *d = page_get_owner(page); + unsigned long pfn = mfn_x(page_to_mfn(page)); + l2_pgentry_t *pl2e; +- unsigned int i = page->nr_validated_ptes - 1; +- int err = 0; ++ int rc = 0, partial = page->partial_pte; ++ unsigned int i = page->nr_validated_ptes - !partial; + + pl2e = map_domain_page(_mfn(pfn)); + +- ASSERT(page->nr_validated_ptes); +- do { +- if ( is_guest_l2_slot(d, page->u.inuse.type_info, i) && +- put_page_from_l2e(pl2e[i], pfn) == 0 && +- i && hypercall_preempt_check() ) ++ for ( ; ; ) ++ { ++ if ( is_guest_l2_slot(d, page->u.inuse.type_info, i) ) ++ rc = put_page_from_l2e(pl2e[i], pfn, partial, false); ++ if ( rc < 0 ) ++ break; ++ ++ partial = 0; ++ ++ if ( !i-- ) ++ break; ++ ++ if ( hypercall_preempt_check() ) + { +- page->nr_validated_ptes = i; +- err = -ERESTART; ++ rc = -EINTR; ++ break; + } +- } while ( !err && i-- ); ++ } + + unmap_domain_page(pl2e); + +- if ( !err ) ++ if ( rc >= 0 ) ++ { + page->u.inuse.type_info &= ~PGT_pae_xen_l2; ++ rc = 0; ++ } ++ else if ( rc == -ERESTART ) ++ { ++ page->nr_validated_ptes = i; ++ page->partial_pte = partial ?: -1; ++ } ++ else if ( rc == -EINTR && i < L2_PAGETABLE_ENTRIES - 1 ) ++ { ++ page->nr_validated_ptes = i + 1; ++ page->partial_pte = 0; ++ rc = -ERESTART; ++ } + +- return err; ++ return rc; + } + + static int free_l3_table(struct page_info *page) +@@ -2138,7 +2189,7 @@ static int mod_l2_entry(l2_pgentry_t *pl + return -EBUSY; + } + +- if ( unlikely((rc = get_page_from_l2e(nl2e, pfn, d)) < 0) ) ++ if ( unlikely((rc = get_page_from_l2e(nl2e, pfn, d, 0)) < 0) ) + return rc; + + nl2e = adjust_guest_l2e(nl2e, d); +@@ -2157,7 +2208,8 @@ static int mod_l2_entry(l2_pgentry_t *pl + return -EBUSY; + } + +- put_page_from_l2e(ol2e, pfn); ++ put_page_from_l2e(ol2e, pfn, 0, true); ++ + return rc; + } + diff --git a/emulators/xen-kernel/files/xsa290-4.11-2.patch b/emulators/xen-kernel/files/xsa290-4.11-2.patch new file mode 100644 index 00000000000..9355e02f82f --- /dev/null +++ b/emulators/xen-kernel/files/xsa290-4.11-2.patch @@ -0,0 +1,71 @@ +From: Jan Beulich +Subject: x86/mm: add explicit preemption checks to L3 (un)validation + +When recursive page tables are used at the L3 level, unvalidation of a +single L4 table may incur unvalidation of two levels of L3 tables, i.e. +a maximum iteration count of 512^3 for unvalidating an L4 table. The +preemption check in free_l2_table() as well as the one in +_put_page_type() may never be reached, so explicit checking is needed in +free_l3_table(). + +When recursive page tables are used at the L4 level, the iteration count +at L4 alone is capped at 512^2. As soon as a present L3 entry is hit +which itself needs unvalidation (and hence requiring another nested loop +with 512 iterations), the preemption checks added here kick in, so no +further preemption checking is needed at L4 (until we decide to permit +5-level paging for PV guests). + +The validation side additions are done just for symmetry. + +This is part of XSA-290. + +Signed-off-by: Jan Beulich +Reviewed-by: Andrew Cooper + +--- a/xen/arch/x86/mm.c ++++ b/xen/arch/x86/mm.c +@@ -1581,6 +1581,13 @@ static int alloc_l3_table(struct page_in + for ( i = page->nr_validated_ptes; i < L3_PAGETABLE_ENTRIES; + i++, partial = 0 ) + { ++ if ( i > page->nr_validated_ptes && hypercall_preempt_check() ) ++ { ++ page->nr_validated_ptes = i; ++ rc = -ERESTART; ++ break; ++ } ++ + if ( is_pv_32bit_domain(d) && (i == 3) ) + { + if ( !(l3e_get_flags(pl3e[i]) & _PAGE_PRESENT) || +@@ -1882,15 +1889,25 @@ static int free_l3_table(struct page_inf + + pl3e = map_domain_page(_mfn(pfn)); + +- do { ++ for ( ; ; ) ++ { + rc = put_page_from_l3e(pl3e[i], pfn, partial, 0); + if ( rc < 0 ) + break; ++ + partial = 0; +- if ( rc > 0 ) +- continue; +- pl3e[i] = unadjust_guest_l3e(pl3e[i], d); +- } while ( i-- ); ++ if ( rc == 0 ) ++ pl3e[i] = unadjust_guest_l3e(pl3e[i], d); ++ ++ if ( !i-- ) ++ break; ++ ++ if ( hypercall_preempt_check() ) ++ { ++ rc = -EINTR; ++ break; ++ } ++ } + + unmap_domain_page(pl3e); + diff --git a/emulators/xen-kernel/files/xsa292.patch b/emulators/xen-kernel/files/xsa292.patch new file mode 100644 index 00000000000..198fd4fdd4d --- /dev/null +++ b/emulators/xen-kernel/files/xsa292.patch @@ -0,0 +1,95 @@ +From: Jan Beulich +Subject: x86/mm: properly flush TLB in switch_cr3_cr4() + +The CR3 values used for contexts run with PCID enabled uniformly have +CR3.NOFLUSH set, resulting in the CR3 write itself to not cause any +flushing at all. When the second CR4 write is skipped or doesn't do any +flushing, there's nothing so far which would purge TLB entries which may +have accumulated again if the PCID doesn't change; the "just in case" +flush only affects the case where the PCID actually changes. (There may +be particularly many TLB entries re-accumulated in case of a watchdog +NMI kicking in during the critical time window.) + +Suppress the no-flush behavior of the CR3 write in this particular case. + +Similarly the second CR4 write may not cause any flushing of TLB entries +established again while the original PCID was still in use - it may get +performed because of unrelated bits changing. The flush of the old PCID +needs to happen nevertheless. + +At the same time also eliminate a possible race with lazy context +switch: Just like for CR4, CR3 may change at any time while interrupts +are enabled, due to the __sync_local_execstate() invocation from the +flush IPI handler. It is for that reason that the CR3 read, just like +the CR4 one, must happen only after interrupts have been turned off. + +This is XSA-292. + +Reported-by: Sergey Dyasli +Reported-by: Andrew Cooper +Tested-by: Sergey Dyasli +Signed-off-by: Jan Beulich +Reviewed-by: Andrew Cooper +--- +v3: Adjust comments. Drop old_cr4 from the PGE check in the expression + controlling the invocation of invpcid_flush_single_context(), as PGE + is always clear there. +v2: Decouple invpcid_flush_single_context() from 2nd CR4 write. + +--- a/xen/arch/x86/flushtlb.c ++++ b/xen/arch/x86/flushtlb.c +@@ -103,9 +103,8 @@ static void do_tlb_flush(void) + + void switch_cr3_cr4(unsigned long cr3, unsigned long cr4) + { +- unsigned long flags, old_cr4; ++ unsigned long flags, old_cr4, old_pcid; + u32 t; +- unsigned long old_pcid = cr3_pcid(read_cr3()); + + /* This non-reentrant function is sometimes called in interrupt context. */ + local_irq_save(flags); +@@ -133,15 +132,38 @@ void switch_cr3_cr4(unsigned long cr3, u + */ + invpcid_flush_all_nonglobals(); + ++ /* ++ * If we don't change PCIDs, the CR3 write below needs to flush this very ++ * PCID, even when a full flush was performed above, as we are currently ++ * accumulating TLB entries again from the old address space. ++ * NB: Clearing the bit when we don't use PCID is benign (as it is clear ++ * already in that case), but allows the if() to be more simple. ++ */ ++ old_pcid = cr3_pcid(read_cr3()); ++ if ( old_pcid == cr3_pcid(cr3) ) ++ cr3 &= ~X86_CR3_NOFLUSH; ++ + write_cr3(cr3); + + if ( old_cr4 != cr4 ) + write_cr4(cr4); +- else if ( old_pcid != cr3_pcid(cr3) ) +- /* +- * Make sure no TLB entries related to the old PCID created between +- * flushing the TLB and writing the new %cr3 value remain in the TLB. +- */ ++ ++ /* ++ * Make sure no TLB entries related to the old PCID created between ++ * flushing the TLB and writing the new %cr3 value remain in the TLB. ++ * ++ * The write to CR4 just above has performed a wider flush in certain ++ * cases, which therefore get excluded here. Since that write is ++ * conditional, note in particular that it won't be skipped if PCIDE ++ * transitions from 1 to 0. This is because the CR4 write further up will ++ * have been skipped in this case, as PCIDE and PGE won't both be set at ++ * the same time. ++ * ++ * Note also that PGE is always clear in old_cr4. ++ */ ++ if ( old_pcid != cr3_pcid(cr3) && ++ !(cr4 & X86_CR4_PGE) && ++ (old_cr4 & X86_CR4_PCIDE) <= (cr4 & X86_CR4_PCIDE) ) + invpcid_flush_single_context(old_pcid); + + post_flush(t); diff --git a/emulators/xen-kernel/files/xsa293-4.11-1.patch b/emulators/xen-kernel/files/xsa293-4.11-1.patch new file mode 100644 index 00000000000..0b8499fbbb1 --- /dev/null +++ b/emulators/xen-kernel/files/xsa293-4.11-1.patch @@ -0,0 +1,317 @@ +From: Andrew Cooper +Subject: x86/pv: Rewrite guest %cr4 handling from scratch + +The PV cr4 logic is almost impossible to follow, and leaks bits into guest +context which definitely shouldn't be visible (in particular, VMXE). + +The biggest problem however, and source of the complexity, is that it derives +new real and guest cr4 values from the current value in hardware - this is +context dependent and an inappropriate source of information. + +Rewrite the cr4 logic to be invariant of the current value in hardware. + +First of all, modify write_ptbase() to always use mmu_cr4_features for IDLE +and HVM contexts. mmu_cr4_features *is* the correct value to use, and makes +the ASSERT() obviously redundant. + +For PV guests, curr->arch.pv.ctrlreg[4] remains the guests view of cr4, but +all logic gets reworked in terms of this and mmu_cr4_features only. + +Two masks are introduced; bits which the guest has control over, and bits +which are forwarded from Xen's settings. One guest-visible change here is +that Xen's VMXE setting is no longer visible at all. + +pv_make_cr4() follows fairly closely from pv_guest_cr4_to_real_cr4(), but +deliberately starts with mmu_cr4_features, and only alters the minimal subset +of bits. + +The boot-time {compat_,}pv_cr4_mask variables are removed, as they are a +remnant of the pre-CPUID policy days. pv_fixup_guest_cr4() gains a related +derivation from the policy. + +Another guest visible change here is that a 32bit PV guest can now flip +FSGSBASE in its view of CR4. While the {RD,WR}{FS,GS}BASE instructions are +unusable outside of a 64bit code segment, the ability to modify FSGSBASE +matches real hardware behaviour, and avoids the need for any 32bit/64bit +differences in the logic. + +Overall, this patch shouldn't have a practical change in guest behaviour. +VMXE will disappear from view, and an inquisitive 32bit kernel can now see +FSGSBASE changing, but this new logic is otherwise bug-compatible with before. + +This is part of XSA-293 + +Signed-off-by: Andrew Cooper +Reviewed-by: Jan Beulich + +diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c +index b1e50d1..675152a 100644 +--- a/xen/arch/x86/domain.c ++++ b/xen/arch/x86/domain.c +@@ -733,49 +733,6 @@ int arch_domain_soft_reset(struct domain *d) + return ret; + } + +-/* +- * These are the masks of CR4 bits (subject to hardware availability) which a +- * PV guest may not legitimiately attempt to modify. +- */ +-static unsigned long __read_mostly pv_cr4_mask, compat_pv_cr4_mask; +- +-static int __init init_pv_cr4_masks(void) +-{ +- unsigned long common_mask = ~X86_CR4_TSD; +- +- /* +- * All PV guests may attempt to modify TSD, DE and OSXSAVE. +- */ +- if ( cpu_has_de ) +- common_mask &= ~X86_CR4_DE; +- if ( cpu_has_xsave ) +- common_mask &= ~X86_CR4_OSXSAVE; +- +- pv_cr4_mask = compat_pv_cr4_mask = common_mask; +- +- /* +- * 64bit PV guests may attempt to modify FSGSBASE. +- */ +- if ( cpu_has_fsgsbase ) +- pv_cr4_mask &= ~X86_CR4_FSGSBASE; +- +- return 0; +-} +-__initcall(init_pv_cr4_masks); +- +-unsigned long pv_guest_cr4_fixup(const struct vcpu *v, unsigned long guest_cr4) +-{ +- unsigned long hv_cr4 = real_cr4_to_pv_guest_cr4(read_cr4()); +- unsigned long mask = is_pv_32bit_vcpu(v) ? compat_pv_cr4_mask : pv_cr4_mask; +- +- if ( (guest_cr4 & mask) != (hv_cr4 & mask) ) +- printk(XENLOG_G_WARNING +- "d%d attempted to change %pv's CR4 flags %08lx -> %08lx\n", +- current->domain->domain_id, v, hv_cr4, guest_cr4); +- +- return (hv_cr4 & mask) | (guest_cr4 & ~mask); +-} +- + #define xen_vcpu_guest_context vcpu_guest_context + #define fpu_ctxt fpu_ctxt.x + CHECK_FIELD_(struct, vcpu_guest_context, fpu_ctxt); +@@ -789,7 +746,7 @@ int arch_set_info_guest( + struct domain *d = v->domain; + unsigned long cr3_gfn; + struct page_info *cr3_page; +- unsigned long flags, cr4; ++ unsigned long flags; + unsigned int i; + int rc = 0, compat; + +@@ -978,9 +935,8 @@ int arch_set_info_guest( + v->arch.pv_vcpu.ctrlreg[0] &= X86_CR0_TS; + v->arch.pv_vcpu.ctrlreg[0] |= read_cr0() & ~X86_CR0_TS; + +- cr4 = v->arch.pv_vcpu.ctrlreg[4]; +- v->arch.pv_vcpu.ctrlreg[4] = cr4 ? pv_guest_cr4_fixup(v, cr4) : +- real_cr4_to_pv_guest_cr4(mmu_cr4_features); ++ v->arch.pv_vcpu.ctrlreg[4] = ++ pv_fixup_guest_cr4(v, v->arch.pv_vcpu.ctrlreg[4]); + + memset(v->arch.debugreg, 0, sizeof(v->arch.debugreg)); + for ( i = 0; i < 8; i++ ) +diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c +index 6509035..08634b7 100644 +--- a/xen/arch/x86/mm.c ++++ b/xen/arch/x86/mm.c +@@ -505,33 +505,13 @@ void make_cr3(struct vcpu *v, mfn_t mfn) + v->arch.cr3 |= get_pcid_bits(v, false); + } + +-unsigned long pv_guest_cr4_to_real_cr4(const struct vcpu *v) +-{ +- const struct domain *d = v->domain; +- unsigned long cr4; +- +- cr4 = v->arch.pv_vcpu.ctrlreg[4] & ~X86_CR4_DE; +- cr4 |= mmu_cr4_features & (X86_CR4_PSE | X86_CR4_SMEP | X86_CR4_SMAP | +- X86_CR4_OSXSAVE | X86_CR4_FSGSBASE); +- +- if ( d->arch.pv_domain.pcid ) +- cr4 |= X86_CR4_PCIDE; +- else if ( !d->arch.pv_domain.xpti ) +- cr4 |= X86_CR4_PGE; +- +- cr4 |= d->arch.vtsc ? X86_CR4_TSD : 0; +- +- return cr4; +-} +- + void write_ptbase(struct vcpu *v) + { + struct cpu_info *cpu_info = get_cpu_info(); + unsigned long new_cr4; + + new_cr4 = (is_pv_vcpu(v) && !is_idle_vcpu(v)) +- ? pv_guest_cr4_to_real_cr4(v) +- : ((read_cr4() & ~(X86_CR4_PCIDE | X86_CR4_TSD)) | X86_CR4_PGE); ++ ? pv_make_cr4(v) : mmu_cr4_features; + + if ( is_pv_vcpu(v) && v->domain->arch.pv_domain.xpti ) + { +@@ -550,8 +530,6 @@ void write_ptbase(struct vcpu *v) + switch_cr3_cr4(v->arch.cr3, new_cr4); + cpu_info->pv_cr3 = 0; + } +- +- ASSERT(is_pv_vcpu(v) || read_cr4() == mmu_cr4_features); + } + + /* +diff --git a/xen/arch/x86/pv/domain.c b/xen/arch/x86/pv/domain.c +index b75ff6b..3965959 100644 +--- a/xen/arch/x86/pv/domain.c ++++ b/xen/arch/x86/pv/domain.c +@@ -97,6 +97,52 @@ static void release_compat_l4(struct vcpu *v) + v->arch.guest_table_user = pagetable_null(); + } + ++unsigned long pv_fixup_guest_cr4(const struct vcpu *v, unsigned long cr4) ++{ ++ const struct cpuid_policy *p = v->domain->arch.cpuid; ++ ++ /* Discard attempts to set guest controllable bits outside of the policy. */ ++ cr4 &= ~((p->basic.tsc ? 0 : X86_CR4_TSD) | ++ (p->basic.de ? 0 : X86_CR4_DE) | ++ (p->feat.fsgsbase ? 0 : X86_CR4_FSGSBASE) | ++ (p->basic.xsave ? 0 : X86_CR4_OSXSAVE)); ++ ++ /* Masks expected to be disjoint sets. */ ++ BUILD_BUG_ON(PV_CR4_GUEST_MASK & PV_CR4_GUEST_VISIBLE_MASK); ++ ++ /* ++ * A guest sees the policy subset of its own choice of guest controllable ++ * bits, and a subset of Xen's choice of certain hardware settings. ++ */ ++ return ((cr4 & PV_CR4_GUEST_MASK) | ++ (mmu_cr4_features & PV_CR4_GUEST_VISIBLE_MASK)); ++} ++ ++unsigned long pv_make_cr4(const struct vcpu *v) ++{ ++ const struct domain *d = v->domain; ++ unsigned long cr4 = mmu_cr4_features & ++ ~(X86_CR4_PCIDE | X86_CR4_PGE | X86_CR4_TSD); ++ ++ /* ++ * PCIDE or PGE depends on the PCID/XPTI settings, but must not both be ++ * set, as it impacts the safety of TLB flushing. ++ */ ++ if ( d->arch.pv_domain.pcid ) ++ cr4 |= X86_CR4_PCIDE; ++ else if ( !d->arch.pv_domain.xpti ) ++ cr4 |= X86_CR4_PGE; ++ ++ /* ++ * TSD is needed if either the guest has elected to use it, or Xen is ++ * virtualising the TSC value the guest sees. ++ */ ++ if ( d->arch.vtsc || (v->arch.pv_vcpu.ctrlreg[4] & X86_CR4_TSD) ) ++ cr4 |= X86_CR4_TSD; ++ ++ return cr4; ++} ++ + int switch_compat(struct domain *d) + { + struct vcpu *v; +@@ -191,7 +237,7 @@ int pv_vcpu_initialise(struct vcpu *v) + /* PV guests by default have a 100Hz ticker. */ + v->periodic_period = MILLISECS(10); + +- v->arch.pv_vcpu.ctrlreg[4] = real_cr4_to_pv_guest_cr4(mmu_cr4_features); ++ v->arch.pv_vcpu.ctrlreg[4] = pv_fixup_guest_cr4(v, 0); + + if ( is_pv_32bit_domain(d) ) + { +diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c +index ce2ec76..4abbc14 100644 +--- a/xen/arch/x86/pv/emul-priv-op.c ++++ b/xen/arch/x86/pv/emul-priv-op.c +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -785,8 +786,8 @@ static int write_cr(unsigned int reg, unsigned long val, + } + + case 4: /* Write CR4 */ +- curr->arch.pv_vcpu.ctrlreg[4] = pv_guest_cr4_fixup(curr, val); +- write_cr4(pv_guest_cr4_to_real_cr4(curr)); ++ curr->arch.pv_vcpu.ctrlreg[4] = pv_fixup_guest_cr4(curr, val); ++ write_cr4(pv_make_cr4(curr)); + ctxt_switch_levelling(curr); + return X86EMUL_OKAY; + } +diff --git a/xen/include/asm-x86/domain.h b/xen/include/asm-x86/domain.h +index ec81d78..c8aa8a5 100644 +--- a/xen/include/asm-x86/domain.h ++++ b/xen/include/asm-x86/domain.h +@@ -610,17 +610,6 @@ bool update_secondary_system_time(struct vcpu *, + void vcpu_show_execution_state(struct vcpu *); + void vcpu_show_registers(const struct vcpu *); + +-/* Clean up CR4 bits that are not under guest control. */ +-unsigned long pv_guest_cr4_fixup(const struct vcpu *, unsigned long guest_cr4); +- +-/* Convert between guest-visible and real CR4 values. */ +-unsigned long pv_guest_cr4_to_real_cr4(const struct vcpu *v); +- +-#define real_cr4_to_pv_guest_cr4(c) \ +- ((c) & ~(X86_CR4_PGE | X86_CR4_PSE | X86_CR4_TSD | \ +- X86_CR4_OSXSAVE | X86_CR4_SMEP | \ +- X86_CR4_FSGSBASE | X86_CR4_SMAP | X86_CR4_PCIDE)) +- + #define domain_max_vcpus(d) (is_hvm_domain(d) ? HVM_MAX_VCPUS : MAX_VIRT_CPUS) + + static inline struct vcpu_guest_context *alloc_vcpu_guest_context(void) +diff --git a/xen/include/asm-x86/pv/domain.h b/xen/include/asm-x86/pv/domain.h +index 4fea764..4e4710c 100644 +--- a/xen/include/asm-x86/pv/domain.h ++++ b/xen/include/asm-x86/pv/domain.h +@@ -59,6 +59,23 @@ int pv_vcpu_initialise(struct vcpu *v); + void pv_domain_destroy(struct domain *d); + int pv_domain_initialise(struct domain *d); + ++/* ++ * Bits which a PV guest can toggle in its view of cr4. Some are loaded into ++ * hardware, while some are fully emulated. ++ */ ++#define PV_CR4_GUEST_MASK \ ++ (X86_CR4_TSD | X86_CR4_DE | X86_CR4_FSGSBASE | X86_CR4_OSXSAVE) ++ ++/* Bits which a PV guest may observe from the real hardware settings. */ ++#define PV_CR4_GUEST_VISIBLE_MASK \ ++ (X86_CR4_PAE | X86_CR4_MCE | X86_CR4_OSFXSR | X86_CR4_OSXMMEXCPT) ++ ++/* Given a new cr4 value, construct the resulting guest-visible cr4 value. */ ++unsigned long pv_fixup_guest_cr4(const struct vcpu *v, unsigned long cr4); ++ ++/* Create a cr4 value to load into hardware, based on vcpu settings. */ ++unsigned long pv_make_cr4(const struct vcpu *v); ++ + #else /* !CONFIG_PV */ + + #include +@@ -68,6 +85,8 @@ static inline int pv_vcpu_initialise(struct vcpu *v) { return -EOPNOTSUPP; } + static inline void pv_domain_destroy(struct domain *d) {} + static inline int pv_domain_initialise(struct domain *d) { return -EOPNOTSUPP; } + ++static inline unsigned long pv_make_cr4(const struct vcpu *v) { return ~0ul; } ++ + #endif /* CONFIG_PV */ + + void paravirt_ctxt_switch_from(struct vcpu *v); diff --git a/emulators/xen-kernel/files/xsa293-4.11-2.patch b/emulators/xen-kernel/files/xsa293-4.11-2.patch new file mode 100644 index 00000000000..a005021b148 --- /dev/null +++ b/emulators/xen-kernel/files/xsa293-4.11-2.patch @@ -0,0 +1,260 @@ +From: Andrew Cooper +Subject: x86/pv: Don't have %cr4.fsgsbase active behind a guest kernels back + +Currently, a 64bit PV guest can appear to set and clear FSGSBASE in %cr4, but +the bit remains set in hardware. Therefore, the {RD,WR}{FS,GS}BASE are usable +even when the guest kernel believes that they are disabled. + +The FSGSBASE feature isn't currently supported in Linux, and its context +switch path has some optimisations which rely on userspace being unable to use +the WR{FS,GS}BASE instructions. Xen's current behaviour undermines this +expectation. + +In 64bit PV guest context, always load the guest kernels setting of FSGSBASE +into %cr4. This requires adjusting how Xen uses the {RD,WR}{FS,GS}BASE +instructions. + + * Delete the cpu_has_fsgsbase helper. It is no longer safe, as users need to + check %cr4 directly. + * The raw __rd{fs,gs}base() helpers are only safe to use when %cr4.fsgsbase + is set. Comment this property. + * The {rd,wr}{fs,gs}{base,shadow}() and read_msr() helpers are updated to use + the current %cr4 value to determine which mechanism to use. + * toggle_guest_mode() and save_segments() are update to avoid reading + fs/gsbase if the values in hardware cannot be stale WRT struct vcpu. A + consequence of this is that the write_cr() path needs to cache the current + bases, as subsequent context switches will skip saving the values. + * write_cr4() is updated to ensure that the shadow %cr4.fsgsbase value is + observed in a safe way WRT the hardware setting, if an interrupt happens to + hit in the middle. + * pv_make_cr4() is updated for 64bit PV guests to use the guest kernels + choice of FSGSBASE. + +This is part of XSA-293 + +Reported-by: Andy Lutomirski +Signed-off-by: Andrew Cooper +Reviewed-by: Jan Beulich + +diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c +index 675152a..29f892c 100644 +--- a/xen/arch/x86/domain.c ++++ b/xen/arch/x86/domain.c +@@ -1433,7 +1433,8 @@ static void save_segments(struct vcpu *v) + regs->fs = read_sreg(fs); + regs->gs = read_sreg(gs); + +- if ( cpu_has_fsgsbase && !is_pv_32bit_vcpu(v) ) ++ /* %fs/%gs bases can only be stale if WR{FS,GS}BASE are usable. */ ++ if ( (read_cr4() & X86_CR4_FSGSBASE) && !is_pv_32bit_vcpu(v) ) + { + v->arch.pv_vcpu.fs_base = __rdfsbase(); + if ( v->arch.flags & TF_kernel_mode ) +diff --git a/xen/arch/x86/pv/domain.c b/xen/arch/x86/pv/domain.c +index 3965959..228a174 100644 +--- a/xen/arch/x86/pv/domain.c ++++ b/xen/arch/x86/pv/domain.c +@@ -140,6 +140,16 @@ unsigned long pv_make_cr4(const struct vcpu *v) + if ( d->arch.vtsc || (v->arch.pv_vcpu.ctrlreg[4] & X86_CR4_TSD) ) + cr4 |= X86_CR4_TSD; + ++ /* ++ * The {RD,WR}{FS,GS}BASE are only useable in 64bit code segments. While ++ * we must not have CR4.FSGSBASE set behind the back of a 64bit PV kernel, ++ * we do leave it set in 32bit PV context to speed up Xen's context switch ++ * path. ++ */ ++ if ( !is_pv_32bit_domain(d) && ++ !(v->arch.pv_vcpu.ctrlreg[4] & X86_CR4_FSGSBASE) ) ++ cr4 &= ~X86_CR4_FSGSBASE; ++ + return cr4; + } + +@@ -375,7 +385,8 @@ void toggle_guest_mode(struct vcpu *v) + { + ASSERT(!is_pv_32bit_vcpu(v)); + +- if ( cpu_has_fsgsbase ) ++ /* %fs/%gs bases can only be stale if WR{FS,GS}BASE are usable. */ ++ if ( read_cr4() & X86_CR4_FSGSBASE ) + { + if ( v->arch.flags & TF_kernel_mode ) + v->arch.pv_vcpu.gs_base_kernel = __rdgsbase(); +diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c +index 4abbc14..312c1ee 100644 +--- a/xen/arch/x86/pv/emul-priv-op.c ++++ b/xen/arch/x86/pv/emul-priv-op.c +@@ -786,6 +786,17 @@ static int write_cr(unsigned int reg, unsigned long val, + } + + case 4: /* Write CR4 */ ++ /* ++ * If this write will disable FSGSBASE, refresh Xen's idea of the ++ * guest bases now that they can no longer change. ++ */ ++ if ( (curr->arch.pv_vcpu.ctrlreg[4] & X86_CR4_FSGSBASE) && ++ !(val & X86_CR4_FSGSBASE) ) ++ { ++ curr->arch.pv_vcpu.fs_base = __rdfsbase(); ++ curr->arch.pv_vcpu.gs_base_kernel = __rdgsbase(); ++ } ++ + curr->arch.pv_vcpu.ctrlreg[4] = pv_fixup_guest_cr4(curr, val); + write_cr4(pv_make_cr4(curr)); + ctxt_switch_levelling(curr); +@@ -835,14 +846,15 @@ static int read_msr(unsigned int reg, uint64_t *val, + case MSR_FS_BASE: + if ( is_pv_32bit_domain(currd) ) + break; +- *val = cpu_has_fsgsbase ? __rdfsbase() : curr->arch.pv_vcpu.fs_base; ++ *val = (read_cr4() & X86_CR4_FSGSBASE) ? __rdfsbase() ++ : curr->arch.pv_vcpu.fs_base; + return X86EMUL_OKAY; + + case MSR_GS_BASE: + if ( is_pv_32bit_domain(currd) ) + break; +- *val = cpu_has_fsgsbase ? __rdgsbase() +- : curr->arch.pv_vcpu.gs_base_kernel; ++ *val = (read_cr4() & X86_CR4_FSGSBASE) ? __rdgsbase() ++ : curr->arch.pv_vcpu.gs_base_kernel; + return X86EMUL_OKAY; + + case MSR_SHADOW_GS_BASE: +diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c +index ecb0149..a353d76 100644 +--- a/xen/arch/x86/setup.c ++++ b/xen/arch/x86/setup.c +@@ -1567,7 +1567,7 @@ void __init noreturn __start_xen(unsigned long mbi_p) + + cr4_pv32_mask = mmu_cr4_features & XEN_CR4_PV32_BITS; + +- if ( cpu_has_fsgsbase ) ++ if ( boot_cpu_has(X86_FEATURE_FSGSBASE) ) + set_in_cr4(X86_CR4_FSGSBASE); + + if ( opt_invpcid && cpu_has_invpcid ) +diff --git a/xen/include/asm-x86/cpufeature.h b/xen/include/asm-x86/cpufeature.h +index b237da1..861cb0a 100644 +--- a/xen/include/asm-x86/cpufeature.h ++++ b/xen/include/asm-x86/cpufeature.h +@@ -90,7 +90,6 @@ + #define cpu_has_xsaves boot_cpu_has(X86_FEATURE_XSAVES) + + /* CPUID level 0x00000007:0.ebx */ +-#define cpu_has_fsgsbase boot_cpu_has(X86_FEATURE_FSGSBASE) + #define cpu_has_bmi1 boot_cpu_has(X86_FEATURE_BMI1) + #define cpu_has_hle boot_cpu_has(X86_FEATURE_HLE) + #define cpu_has_avx2 boot_cpu_has(X86_FEATURE_AVX2) +diff --git a/xen/include/asm-x86/msr.h b/xen/include/asm-x86/msr.h +index afbeb7f..1ba6ee3 100644 +--- a/xen/include/asm-x86/msr.h ++++ b/xen/include/asm-x86/msr.h +@@ -120,6 +120,14 @@ static inline uint64_t rdtsc_ordered(void) + : "=a" (low), "=d" (high) \ + : "c" (counter)) + ++/* ++ * On hardware supporting FSGSBASE, the value loaded into hardware is the ++ * guest kernel's choice for 64bit PV guests (Xen's choice for Idle, HVM and ++ * 32bit PV). ++ * ++ * Therefore, the {RD,WR}{FS,GS}BASE instructions are only safe to use if ++ * %cr4.fsgsbase is set. ++ */ + static inline unsigned long __rdfsbase(void) + { + unsigned long base; +@@ -150,7 +158,7 @@ static inline unsigned long rdfsbase(void) + { + unsigned long base; + +- if ( cpu_has_fsgsbase ) ++ if ( read_cr4() & X86_CR4_FSGSBASE ) + return __rdfsbase(); + + rdmsrl(MSR_FS_BASE, base); +@@ -162,7 +170,7 @@ static inline unsigned long rdgsbase(void) + { + unsigned long base; + +- if ( cpu_has_fsgsbase ) ++ if ( read_cr4() & X86_CR4_FSGSBASE ) + return __rdgsbase(); + + rdmsrl(MSR_GS_BASE, base); +@@ -174,7 +182,7 @@ static inline unsigned long rdgsshadow(void) + { + unsigned long base; + +- if ( cpu_has_fsgsbase ) ++ if ( read_cr4() & X86_CR4_FSGSBASE ) + { + asm volatile ( "swapgs" ); + base = __rdgsbase(); +@@ -188,7 +196,7 @@ static inline unsigned long rdgsshadow(void) + + static inline void wrfsbase(unsigned long base) + { +- if ( cpu_has_fsgsbase ) ++ if ( read_cr4() & X86_CR4_FSGSBASE ) + #ifdef HAVE_AS_FSGSBASE + asm volatile ( "wrfsbase %0" :: "r" (base) ); + #else +@@ -200,7 +208,7 @@ static inline void wrfsbase(unsigned long base) + + static inline void wrgsbase(unsigned long base) + { +- if ( cpu_has_fsgsbase ) ++ if ( read_cr4() & X86_CR4_FSGSBASE ) + #ifdef HAVE_AS_FSGSBASE + asm volatile ( "wrgsbase %0" :: "r" (base) ); + #else +@@ -212,7 +220,7 @@ static inline void wrgsbase(unsigned long base) + + static inline void wrgsshadow(unsigned long base) + { +- if ( cpu_has_fsgsbase ) ++ if ( read_cr4() & X86_CR4_FSGSBASE ) + { + asm volatile ( "swapgs\n\t" + #ifdef HAVE_AS_FSGSBASE +diff --git a/xen/include/asm-x86/processor.h b/xen/include/asm-x86/processor.h +index 2bd9e69..8e253dc 100644 +--- a/xen/include/asm-x86/processor.h ++++ b/xen/include/asm-x86/processor.h +@@ -305,11 +305,31 @@ static inline unsigned long read_cr4(void) + + static inline void write_cr4(unsigned long val) + { ++ struct cpu_info *info = get_cpu_info(); ++ + /* No global pages in case of PCIDs enabled! */ + ASSERT(!(val & X86_CR4_PGE) || !(val & X86_CR4_PCIDE)); + +- get_cpu_info()->cr4 = val; +- asm volatile ( "mov %0,%%cr4" : : "r" (val) ); ++ /* ++ * On hardware supporting FSGSBASE, the value in %cr4 is the kernel's ++ * choice for 64bit PV guests, which impacts whether Xen can use the ++ * instructions. ++ * ++ * The {rd,wr}{fs,gs}base() helpers use info->cr4 to work out whether it ++ * is safe to execute the {RD,WR}{FS,GS}BASE instruction, falling back to ++ * the MSR path if not. Some users require interrupt safety. ++ * ++ * If FSGSBASE is currently or about to become clear, reflect this in ++ * info->cr4 before updating %cr4, so an interrupt which hits in the ++ * middle won't observe FSGSBASE set in info->cr4 but clear in %cr4. ++ */ ++ info->cr4 = val & (info->cr4 | ~X86_CR4_FSGSBASE); ++ ++ asm volatile ( "mov %[val], %%cr4" ++ : "+m" (info->cr4) /* Force ordering without a barrier. */ ++ : [val] "r" (val) ); ++ ++ info->cr4 = val; + } + + /* Clear and set 'TS' bit respectively */ diff --git a/emulators/xen-kernel/files/xsa294-4.11.patch b/emulators/xen-kernel/files/xsa294-4.11.patch new file mode 100644 index 00000000000..a0784d928f3 --- /dev/null +++ b/emulators/xen-kernel/files/xsa294-4.11.patch @@ -0,0 +1,71 @@ +From: Jan Beulich +Subject: x86/pv: _toggle_guest_pt() may not skip TLB flush for shadow mode guests + +For shadow mode guests (e.g. PV ones forced into that mode as L1TF +mitigation, or during migration) update_cr3() -> sh_update_cr3() may +result in a change to the (shadow) root page table (compared to the +previous one when running the same vCPU with the same PCID). This can, +first and foremost, be a result of memory pressure on the shadow memory +pool of the domain. Shadow code legitimately relies on the original +(prior to commit 5c81d260c2 ["xen/x86: use PCID feature"]) behavior of +the subsequent CR3 write to flush the TLB of entries still left from +walks with an earlier, different (shadow) root page table. + +Restore the flushing behavior, also for the second CR3 write on the exit +path to guest context when XPTI is active. For the moment accept that +this will introduce more flushes than are strictly necessary - no flush +would be needed when the (shadow) root page table doesn't actually +change, but this information isn't readily (i.e. without introducing a +layering violation) available here. + +This is XSA-294. + +Reported-by: XXX PERSON +Signed-off-by: Jan Beulich +Tested-by: Juergen Gross +Reviewed-by: Andrew Cooper + +diff --git a/xen/arch/x86/pv/domain.c b/xen/arch/x86/pv/domain.c +index b75ff6b..528413a 100644 +--- a/xen/arch/x86/pv/domain.c ++++ b/xen/arch/x86/pv/domain.c +@@ -296,21 +296,35 @@ int pv_domain_initialise(struct domain *d) + static void _toggle_guest_pt(struct vcpu *v) + { + const struct domain *d = v->domain; ++ struct cpu_info *cpu_info = get_cpu_info(); ++ unsigned long cr3; + + v->arch.flags ^= TF_kernel_mode; + update_cr3(v); + if ( d->arch.pv_domain.xpti ) + { +- struct cpu_info *cpu_info = get_cpu_info(); +- + cpu_info->root_pgt_changed = true; + cpu_info->pv_cr3 = __pa(this_cpu(root_pgt)) | + (d->arch.pv_domain.pcid + ? get_pcid_bits(v, true) : 0); + } + +- /* Don't flush user global mappings from the TLB. Don't tick TLB clock. */ +- write_cr3(v->arch.cr3); ++ /* ++ * Don't flush user global mappings from the TLB. Don't tick TLB clock. ++ * ++ * In shadow mode, though, update_cr3() may need to be accompanied by a ++ * TLB flush (for just the incoming PCID), as the top level page table may ++ * have changed behind our backs. To be on the safe side, suppress the ++ * no-flush unconditionally in this case. The XPTI CR3 write, if enabled, ++ * will then need to be a flushing one too. ++ */ ++ cr3 = v->arch.cr3; ++ if ( shadow_mode_enabled(d) ) ++ { ++ cr3 &= ~X86_CR3_NOFLUSH; ++ cpu_info->pv_cr3 &= ~X86_CR3_NOFLUSH; ++ } ++ write_cr3(cr3); + + if ( !(v->arch.flags & TF_kernel_mode) ) + return; diff --git a/games/nethack36/Makefile b/games/nethack36/Makefile index 1a74192a758..bd97d399802 100644 --- a/games/nethack36/Makefile +++ b/games/nethack36/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= nethack36 -PORTVERSION= 3.6.0 -PORTREVISION= 1 +PORTVERSION= 3.6.1 CATEGORIES= games MASTER_SITES= SF/${TRUEPORTNAME}/${TRUEPORTNAME}/${PORTVERSION} DISTNAME= ${TRUEPORTNAME}-${PORTVERSION:S/.//g}-src @@ -36,7 +35,7 @@ DOCSDIR= ${PREFIX}/share/doc/${HACKNAME} PKGDEINSTALL= ${WRKDIR}/pkg-deinstall .if !defined(PKGNAMESUFFIX) -USE_XORG= xaw xpm +USE_XORG= xaw xpm xmu xext xt x11 sm ice CFLAGS+= -DX11_GRAPHICS -DUSE_TILES GRAPHICS= X11_GRAPHICS .else diff --git a/games/nethack36/distinfo b/games/nethack36/distinfo index 97668133b7a..5863c238a66 100644 --- a/games/nethack36/distinfo +++ b/games/nethack36/distinfo @@ -1,2 +1,3 @@ -SHA256 (nethack-360-src.tgz) = 1ade698d8458b8d87a4721444cb73f178c74ed1b6fde537c12000f8edf2cb18a -SIZE (nethack-360-src.tgz) = 4261282 +TIMESTAMP = 1552421527 +SHA256 (nethack-361-src.tgz) = 4b8cbf1cc3ad9f6b9bae892d44a9c63106d44782a210906162a7c3be65040ab6 +SIZE (nethack-361-src.tgz) = 4640769 diff --git a/games/nethack36/files/patch-nethack.6 b/games/nethack36/files/patch-nethack.6 index 10b07ea613a..0803a36e86c 100644 --- a/games/nethack36/files/patch-nethack.6 +++ b/games/nethack36/files/patch-nethack.6 @@ -1,6 +1,6 @@ ---- doc/nethack.6.orig 2003-12-07 15:39:13.000000000 -0800 -+++ doc/nethack.6 2015-12-27 14:12:43.428436000 -0800 -@@ -5,7 +5,7 @@ +--- doc/nethack.6.orig 2018-04-27 05:07:22.000000000 -0700 ++++ doc/nethack.6 2019-03-12 14:51:23.925413000 -0700 +@@ -17,7 +17,7 @@ .SH SYNOPSIS .na .hy 0 @@ -9,7 +9,7 @@ [ .B \-d .I directory -@@ -197,7 +197,7 @@ +@@ -216,7 +216,7 @@ supplies a directory which is to serve as the playground. It overrides the value from NETHACKDIR, HACKDIR, or the directory specified by the game administrator during compilation @@ -18,17 +18,17 @@ This option is usually only useful to the game administrator. The playground must contain several auxiliary files such as help files, the list of top scorers, and a subdirectory -@@ -222,7 +222,7 @@ - distinction, as he may eventually release a new version of his own. - .SH FILES - .PP --All files are in the playground, normally /usr/games/lib/nethackdir. -+All files are in the playground, normally %%HACKDIR%%. +@@ -258,7 +258,7 @@ + + .br + All other files are in the playground directory, +-normally /usr/games/lib/nethackdir. ++normally %%HACKDIR%%. If DLB was defined during the compile, the data files and special levels will be inside a larger file, normally nhdat, instead of being separate files. -@@ -295,7 +295,7 @@ - In addition, SHOPTYPE is used in debugging (wizard) mode. +@@ -386,7 +386,7 @@ + DEBUGFILES can be used if the program was built with 'DEBUG' enabled. .SH "SEE ALSO" .PP -dgn_comp(6), lev_comp(6), recover(6) diff --git a/games/nethack36/files/patch-sys-unix-Makefile.src b/games/nethack36/files/patch-sys-unix-Makefile.src index ee286d3dc9e..00bf504b501 100644 --- a/games/nethack36/files/patch-sys-unix-Makefile.src +++ b/games/nethack36/files/patch-sys-unix-Makefile.src @@ -1,6 +1,6 @@ ---- ./sys/unix/Makefile.src.orig 2015-11-12 08:51:56.000000000 +0100 -+++ ./sys/unix/Makefile.src 2016-01-20 14:51:33.282986884 +0100 -@@ -149,13 +149,24 @@ +--- sys/unix/Makefile.src.orig 2018-04-27 05:07:22.000000000 -0700 ++++ sys/unix/Makefile.src 2019-03-12 14:55:40.550273000 -0700 +@@ -151,13 +151,24 @@ # directories. The ones given below is the usual spot for linux systems. # The paths are for glibconfig.h and gnomesupport.h respectively. # @@ -26,7 +26,7 @@ # The Qt and Be window systems are written in C++, while the rest of # NetHack is standard C. If using Qt, uncomment the LINK line here to get -@@ -222,8 +233,27 @@ +@@ -245,8 +256,27 @@ # # @@ -56,35 +56,39 @@ # on some systems the termcap library is in -ltermcap or -lcurses # on 386 Xenix, the -ltermlib tputs() seems not to work; use -lcurses instead -@@ -239,23 +269,23 @@ - # WINTTYLIB = -lcurses +@@ -263,16 +293,19 @@ # WINTTYLIB = -lcurses16 # WINTTYLIB = -lncurses --#WINTTYLIB = -ltermlib + #WINTTYLIB = -ltermlib +WINTTYLIB = -lncurses -L${LOCALBASE}/lib # # libraries for X11 # If USE_XPM is defined in config.h, you will also need -lXpm here. -WINX11LIB = -lXaw -lXmu -lXext -lXt -lX11 ++#WINX11LIB = -lXaw -lXmu -lXext -lXt -lX11 +WINX11LIB = -lXaw -lXmu -lXpm -lXext -lXt -lX11 -lSM -lICE -L${LOCALBASE}/lib # WINX11LIB = -lXaw -lXmu -lXt -lX11 # WINX11LIB = -lXaw -lXmu -lXext -lXt -lXpm -lX11 -lm # WINX11LIB = -lXaw -lXmu -lXpm -lXext -lXt -lX11 -lSM -lICE -lm # BSD/OS 2.0 # - # libraries for Qt + # libraries for Qt 3 -WINQTLIB = -L$(QTDIR)/lib -lqt ++#WINQTLIB = -L$(QTDIR)/lib -lqt +WINQTLIB = ${QTCFGLIBS} ${LIBQT} # - # libraries for KDE (with Qt) + # libraries for Qt 4 + WINQT4LIB = `pkg-config QtGui --libs` +@@ -281,7 +314,8 @@ WINKDELIB = -lkdecore -lkdeui -lXext # # libraries for Gnome -WINGNOMELIB = -lgnomeui -lgnome -lart_lgpl -lgtk -lgdk -lpopt ++#WINGNOMELIB = -lgnomeui -lgnome -lart_lgpl -lgtk -lgdk -lpopt +WINGNOMELIB = $(shell ${GNOME_CONFIG} --libs gnomeui) ${LDFLAGS} # # libraries for Gem port WINGEMLIB = -le_gem -lgem -@@ -263,7 +293,16 @@ +@@ -289,7 +323,16 @@ # libraries for BeOS WINBELIB = -lbe @@ -102,7 +106,7 @@ # any other strange libraries your system needs (for Sysunix only -- the more # specialized targets should already be right) -@@ -296,7 +335,7 @@ +@@ -322,7 +365,7 @@ LIBS = # make NetHack @@ -111,9 +115,9 @@ # GAME = nethack.prg # if you defined RANDOM in unixconf.h/tosconf.h since your system did not come -@@ -482,13 +521,13 @@ +@@ -548,13 +591,13 @@ - # Qt windowport meta-object-compiler output + # Qt 3 windowport meta-object-compiler output qt_kde0.moc: ../include/qt_kde0.h - $(QTDIR)/bin/moc -o qt_kde0.moc ../include/qt_kde0.h + ${MOC} -o qt_kde0.moc ../include/qt_kde0.h @@ -126,5 +130,5 @@ - $(QTDIR)/bin/moc -o qttableview.moc ../include/qttableview.h + ${MOC} -o qttableview.moc ../include/qttableview.h - $(MAKEDEFS): ../util/makedefs.c $(CONFIG_H) ../include/permonst.h \ - ../include/objclass.h ../include/monsym.h \ + # Qt 4 windowport meta-object-compiler output + qt4kde0.moc : ../win/Qt4/qt4kde0.h diff --git a/games/nethack36/files/patch-sys-unix-Makefile.top b/games/nethack36/files/patch-sys-unix-Makefile.top index 01e633990a4..8f04a50643b 100644 --- a/games/nethack36/files/patch-sys-unix-Makefile.top +++ b/games/nethack36/files/patch-sys-unix-Makefile.top @@ -1,6 +1,6 @@ ---- ./sys/unix/Makefile.top.orig 2015-11-18 21:54:59.000000000 +0100 -+++ ./sys/unix/Makefile.top 2016-01-20 14:57:30.972963262 +0100 -@@ -18,18 +18,18 @@ +--- sys/unix/Makefile.top.orig 2018-04-27 05:07:22.000000000 -0700 ++++ sys/unix/Makefile.top 2019-03-12 15:05:31.025765000 -0700 +@@ -20,18 +20,18 @@ # make NetHack #PREFIX = /usr @@ -24,7 +24,7 @@ # VARDIRPERM = 0755 # VARDIR may also appear in unixconf.h as "VAR_PLAYGROUND" else HACKDIR -@@ -39,10 +39,11 @@ +@@ -41,10 +41,11 @@ # therefore there should not be anything in HACKDIR that you want to keep # (if there is, you'll have to do the installation by hand or modify the # instructions) @@ -39,25 +39,23 @@ # per discussion in Install.X11 and Install.Qt #VARDATND = -@@ -53,7 +54,7 @@ +@@ -55,7 +56,7 @@ # for BeOS # VARDATND = beostiles # for Gnome --# VARDATND = x11tiles pet_mark.xbm pilemark.xpm rip.xpm mapbg.xpm +-# VARDATND = x11tiles pet_mark.xbm pilemark.xbm rip.xpm mapbg.xpm +VARDATND = x11tiles pet_mark.xbm pilemark.xbm rip.xpm mapbg.xpm VARDATD = bogusmon data engrave epitaph oracles options quest.dat rumors VARDAT = $(VARDATD) $(VARDATND) -@@ -201,56 +202,34 @@ +@@ -203,52 +204,33 @@ -e '}' \ -e '$$s/.*/nodlb/p' < dat/options` ; \ $(MAKE) dofiles-$${target-nodlb} -- (cd dat ; cp symbols $(INSTDIR) ) - cp src/$(GAME) $(INSTDIR) - cp util/recover $(INSTDIR) - -if test -n '$(SHELLDIR)'; then rm -f $(SHELLDIR)/$(GAME); fi -+ (cd dat ; cp symbols ${DESTDIR}$(INSTDIR) ) -+ cp src/$(GAME) ${DESTDIR}$(INSTDIR)/$(GAME) ++ cp src/$(GAME) ${DESTDIR}$(INSTDIR)/$(GAME) + cp util/recover ${DESTDIR}$(INSTDIR) + -if test -n '${DESTDIR}$(SHELLDIR)'; then rm -f ${DESTDIR}$(SHELLDIR)/$(GAME); fi if test -n '$(SHELLDIR)'; then \ @@ -75,10 +73,7 @@ - if test -n '$(SHELLDIR)'; then \ - $(CHGRP) $(GAMEGRP) $(SHELLDIR)/$(GAME); \ - chmod $(EXEPERM) $(SHELLDIR)/$(GAME); fi -- -( cd $(INSTDIR) ; $(CHOWN) $(GAMEUID) symbols ; \ -- $(CHGRP) $(GAMEGRP) symbols ; \ -- chmod $(FILEPERM) symbols ) -+ > ${DESTDIR}$(SHELLDIR)/$(GAME) ; fi ++ > ${DESTDIR}$(SHELLDIR)/$(GAME) ; fi dofiles-dlb: check-dlb - ( cd dat ; cp nhdat $(DATNODLB) $(INSTDIR) ) @@ -115,7 +110,7 @@ touch $(VARDIR)/perm $(VARDIR)/record # and a reminder @echo You may also want to install the man pages via the doc Makefile. -@@ -262,23 +241,16 @@ +@@ -260,23 +242,16 @@ true; $(PREINSTALL) # set up the directories # not all mkdirs have -p; those that don't will create a -p directory diff --git a/games/nethack36/files/patch-sys-unix-setup.sh b/games/nethack36/files/patch-sys-unix-setup.sh new file mode 100644 index 00000000000..08b973677ea --- /dev/null +++ b/games/nethack36/files/patch-sys-unix-setup.sh @@ -0,0 +1,11 @@ +--- sys/unix/setup.sh.orig 2019-03-12 15:54:29.880771000 -0700 ++++ sys/unix/setup.sh 2019-03-12 15:55:10.991928000 -0700 +@@ -26,7 +26,7 @@ + ;; + esac + +-if [ ! -f "$hints" ]; then ++if [ ! -f "$hints" -a "$hints" != "/dev/null" ]; then + echo "Cannot find hints file $hfile" + exit 1 + fi diff --git a/graphics/py-svgwrite/Makefile b/graphics/py-svgwrite/Makefile index b3ec849f645..39e62b6d9da 100644 --- a/graphics/py-svgwrite/Makefile +++ b/graphics/py-svgwrite/Makefile @@ -1,12 +1,12 @@ # $FreeBSD$ PORTNAME= svgwrite -PORTVERSION= 1.1.12 +PORTVERSION= 1.2.1 CATEGORIES= graphics python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} -MAINTAINER= lwhsu@FreeBSD.org +MAINTAINER= george@m5p.com COMMENT= Python library to create SVG drawings LICENSE= MIT diff --git a/graphics/py-svgwrite/distinfo b/graphics/py-svgwrite/distinfo index 42898e100f9..5210e60d8f5 100644 --- a/graphics/py-svgwrite/distinfo +++ b/graphics/py-svgwrite/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1530783355 -SHA256 (svgwrite-1.1.12.zip) = 968c99f193f34f0fa7f0b3e82f49b93789c7c45cd89ce190480f16020d41ab79 -SIZE (svgwrite-1.1.12.zip) = 171947 +TIMESTAMP = 1552416920 +SHA256 (svgwrite-1.2.1.zip) = 72ef66c9fe367989823cb237ab7f012ac809dd3ba76c1b5ebd9aa61580e2e75e +SIZE (svgwrite-1.2.1.zip) = 176795 diff --git a/graphics/rubygem-clutter-gdk/Makefile b/graphics/rubygem-clutter-gdk/Makefile index 38117e0152d..591241c76ab 100644 --- a/graphics/rubygem-clutter-gdk/Makefile +++ b/graphics/rubygem-clutter-gdk/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= clutter-gdk -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= graphics rubygems MASTER_SITES= RG diff --git a/graphics/rubygem-clutter-gdk/distinfo b/graphics/rubygem-clutter-gdk/distinfo index e8e3c32526b..2dab133f1bf 100644 --- a/graphics/rubygem-clutter-gdk/distinfo +++ b/graphics/rubygem-clutter-gdk/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209311 -SHA256 (rubygem/clutter-gdk-3.3.3.gem) = 0c497ed8963e53f51fd0482e9407cc95a87dfe89156c74d0acf5614c98b77778 -SIZE (rubygem/clutter-gdk-3.3.3.gem) = 14848 +TIMESTAMP = 1552410025 +SHA256 (rubygem/clutter-gdk-3.3.4.gem) = f022c1f0757c8f0b99d14e80aeded3579b7650ff5c28dc144e655221bed008b9 +SIZE (rubygem/clutter-gdk-3.3.4.gem) = 14848 diff --git a/graphics/rubygem-clutter-gtk/Makefile b/graphics/rubygem-clutter-gtk/Makefile index 2e91404ee01..5baef4094b3 100644 --- a/graphics/rubygem-clutter-gtk/Makefile +++ b/graphics/rubygem-clutter-gtk/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= clutter-gtk -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= graphics rubygems MASTER_SITES= RG diff --git a/graphics/rubygem-clutter-gtk/distinfo b/graphics/rubygem-clutter-gtk/distinfo index d7e7d91c305..91d6a521d1a 100644 --- a/graphics/rubygem-clutter-gtk/distinfo +++ b/graphics/rubygem-clutter-gtk/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209314 -SHA256 (rubygem/clutter-gtk-3.3.3.gem) = ed7143c13c1f46d10fc2e714a2d48ef91a980bee8c8b600eb702aa3c53584d38 -SIZE (rubygem/clutter-gtk-3.3.3.gem) = 31232 +TIMESTAMP = 1552410027 +SHA256 (rubygem/clutter-gtk-3.3.4.gem) = 735b234341002b04d2770dd0f929869290e8703e5fceade4e6bdfe3b48905514 +SIZE (rubygem/clutter-gtk-3.3.4.gem) = 31232 diff --git a/graphics/rubygem-clutter/Makefile b/graphics/rubygem-clutter/Makefile index b5fad300c0b..cbe3b729b33 100644 --- a/graphics/rubygem-clutter/Makefile +++ b/graphics/rubygem-clutter/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= clutter -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= graphics rubygems MASTER_SITES= RG diff --git a/graphics/rubygem-clutter/distinfo b/graphics/rubygem-clutter/distinfo index 990f5b65f2b..3a1c1fff320 100644 --- a/graphics/rubygem-clutter/distinfo +++ b/graphics/rubygem-clutter/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209308 -SHA256 (rubygem/clutter-3.3.3.gem) = d421c6e32f87335579bc52197b82dc3db6537d3f6fd1b95d06c7f524eb87e9ba -SIZE (rubygem/clutter-3.3.3.gem) = 43008 +TIMESTAMP = 1552410022 +SHA256 (rubygem/clutter-3.3.4.gem) = 1ea006e5ef457bbb17f064a9efdab673b2a90abf4b8cc6027acd5370b945c4b6 +SIZE (rubygem/clutter-3.3.4.gem) = 43008 diff --git a/graphics/rubygem-gdk_pixbuf2/Makefile b/graphics/rubygem-gdk_pixbuf2/Makefile index fcb9d5520a1..6e054bc1c30 100644 --- a/graphics/rubygem-gdk_pixbuf2/Makefile +++ b/graphics/rubygem-gdk_pixbuf2/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= gdk_pixbuf2 -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= graphics rubygems MASTER_SITES= RG diff --git a/graphics/rubygem-gdk_pixbuf2/distinfo b/graphics/rubygem-gdk_pixbuf2/distinfo index a25c05541f6..7d643d141e1 100644 --- a/graphics/rubygem-gdk_pixbuf2/distinfo +++ b/graphics/rubygem-gdk_pixbuf2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209316 -SHA256 (rubygem/gdk_pixbuf2-3.3.3.gem) = 8bc10afd723552d413a111654a5d1802a59e598928c6f72a73e4b42826ec80a1 -SIZE (rubygem/gdk_pixbuf2-3.3.3.gem) = 34816 +TIMESTAMP = 1552410030 +SHA256 (rubygem/gdk_pixbuf2-3.3.4.gem) = ce38fd772aa23e7a813af828b04fcf1407b6fe14aeed24516dadfabe73566810 +SIZE (rubygem/gdk_pixbuf2-3.3.4.gem) = 34816 diff --git a/graphics/rubygem-rsvg2/Makefile b/graphics/rubygem-rsvg2/Makefile index 9dbace6c5e1..e72480a677b 100644 --- a/graphics/rubygem-rsvg2/Makefile +++ b/graphics/rubygem-rsvg2/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= rsvg2 -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= graphics rubygems MASTER_SITES= RG diff --git a/graphics/rubygem-rsvg2/distinfo b/graphics/rubygem-rsvg2/distinfo index e7b3e649fa8..1cd91f35b6f 100644 --- a/graphics/rubygem-rsvg2/distinfo +++ b/graphics/rubygem-rsvg2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209320 -SHA256 (rubygem/rsvg2-3.3.3.gem) = 31677afb75691ac47bc30069134568d2c357dcfba4dd1f3883e5dab5f1bf6b8c -SIZE (rubygem/rsvg2-3.3.3.gem) = 29696 +TIMESTAMP = 1552410033 +SHA256 (rubygem/rsvg2-3.3.4.gem) = 329c2c16922a72248d3dc405c805b35eb05d599d6c1e0d6f4c808684965839f6 +SIZE (rubygem/rsvg2-3.3.4.gem) = 29696 diff --git a/java/Makefile b/java/Makefile index 161395accad..dea70d748e1 100644 --- a/java/Makefile +++ b/java/Makefile @@ -9,6 +9,7 @@ SUBDIR += bluej SUBDIR += bootstrap-openjdk6 SUBDIR += bootstrap-openjdk8 + SUBDIR += bootstrap-openjdk11 SUBDIR += bouncycastle SUBDIR += bouncycastle15 SUBDIR += castor diff --git a/java/bootstrap-openjdk11/Makefile b/java/bootstrap-openjdk11/Makefile new file mode 100644 index 00000000000..1237c59e234 --- /dev/null +++ b/java/bootstrap-openjdk11/Makefile @@ -0,0 +1,33 @@ +# $FreeBSD$ + +PORTNAME= openjdk11 +PORTVERSION= 11.0.2 +CATEGORIES= java devel +MASTER_SITES= LOCAL/glewis/bootstrap-openjdk11 +PKGNAMEPREFIX= bootstrap- +DISTNAME= ${JDK_PORT}-${JDK_ARCH}-${PORTVERSION} + +MAINTAINER= jkim@FreeBSD.org +COMMENT= Java Development Kit 8 + +LICENSE= GPLv2 + +ONLY_FOR_ARCHS= amd64 + +USES= tar:xz + +NO_BUILD= yes +PLIST_SUB= JDK_ROOT=${JDK_ROOT} +WRKSRC= ${WRKDIR}/${JDK_ROOT} + +JDK_PORT= ${PKGNAMEPREFIX}${PORTNAME} +JDK_ROOT= ${PKGNAMEPREFIX}${PORTNAME} +JDK_ARCH= ${ARCH} + +INSTALLDIR= ${STAGEDIR}${PREFIX}/${JDK_ROOT} + +do-install: + @cd ${WRKSRC} && ${COPYTREE_SHARE} . ${INSTALLDIR} + @cd ${WRKSRC} && ${COPYTREE_BIN} bin ${INSTALLDIR} + +.include diff --git a/java/bootstrap-openjdk11/distinfo b/java/bootstrap-openjdk11/distinfo new file mode 100644 index 00000000000..0a9f303ee96 --- /dev/null +++ b/java/bootstrap-openjdk11/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1552326905 +SHA256 (bootstrap-openjdk11-amd64-11.0.2.tar.xz) = 75c4eddc660919bbebf287749b1d1b1eebcd0f75a1455a9657a5c4669da5e9b9 +SIZE (bootstrap-openjdk11-amd64-11.0.2.tar.xz) = 106228032 diff --git a/java/bootstrap-openjdk11/pkg-descr b/java/bootstrap-openjdk11/pkg-descr new file mode 100644 index 00000000000..74c5ea8d924 --- /dev/null +++ b/java/bootstrap-openjdk11/pkg-descr @@ -0,0 +1,7 @@ +OpenJDK is an open-source implementation of the Java Platform, Standard Edition. + +Much of the OpenJDK code is licensed under the GPL version 2 with the +Classpath exception. The Java Hotspot virtual machine source code is +licensed under the GPL version 2 only. + +WWW: http://openjdk.java.net/ diff --git a/java/bootstrap-openjdk11/pkg-message b/java/bootstrap-openjdk11/pkg-message new file mode 100644 index 00000000000..4dbc389a630 --- /dev/null +++ b/java/bootstrap-openjdk11/pkg-message @@ -0,0 +1,19 @@ +====================================================================== + +WARNING: This port only exists for bootstrapping java/openjdk11. +You are advised to remove this port as soon as a stable JDK is built. + +This OpenJDK implementation requires fdescfs(5) mounted on /dev/fd and +procfs(5) mounted on /proc. + +If you have not done it yet, please do the following: + + mount -t fdescfs fdesc /dev/fd + mount -t procfs proc /proc + +To make it permanent, you need the following lines in /etc/fstab: + + fdesc /dev/fd fdescfs rw 0 0 + proc /proc procfs rw 0 0 + +====================================================================== diff --git a/java/bootstrap-openjdk11/pkg-plist b/java/bootstrap-openjdk11/pkg-plist new file mode 100644 index 00000000000..0f5f57f2769 --- /dev/null +++ b/java/bootstrap-openjdk11/pkg-plist @@ -0,0 +1,216 @@ +%%JDK_ROOT%%/bin/jaotc +%%JDK_ROOT%%/bin/jar +%%JDK_ROOT%%/bin/jarsigner +%%JDK_ROOT%%/bin/java +%%JDK_ROOT%%/bin/javac +%%JDK_ROOT%%/bin/javadoc +%%JDK_ROOT%%/bin/javap +%%JDK_ROOT%%/bin/jcmd +%%JDK_ROOT%%/bin/jconsole +%%JDK_ROOT%%/bin/jdb +%%JDK_ROOT%%/bin/jdeprscan +%%JDK_ROOT%%/bin/jdeps +%%JDK_ROOT%%/bin/jimage +%%JDK_ROOT%%/bin/jinfo +%%JDK_ROOT%%/bin/jjs +%%JDK_ROOT%%/bin/jlink +%%JDK_ROOT%%/bin/jmap +%%JDK_ROOT%%/bin/jmod +%%JDK_ROOT%%/bin/jps +%%JDK_ROOT%%/bin/jrunscript +%%JDK_ROOT%%/bin/jshell +%%JDK_ROOT%%/bin/jstack +%%JDK_ROOT%%/bin/jstat +%%JDK_ROOT%%/bin/jstatd +%%JDK_ROOT%%/bin/keytool +%%JDK_ROOT%%/bin/pack200 +%%JDK_ROOT%%/bin/rmic +%%JDK_ROOT%%/bin/rmid +%%JDK_ROOT%%/bin/rmiregistry +%%JDK_ROOT%%/bin/serialver +%%JDK_ROOT%%/bin/unpack200 +%%JDK_ROOT%%/conf/logging.properties +%%JDK_ROOT%%/conf/management/jmxremote.access +%%JDK_ROOT%%/conf/management/jmxremote.password.template +%%JDK_ROOT%%/conf/management/management.properties +%%JDK_ROOT%%/conf/net.properties +%%JDK_ROOT%%/conf/security/java.policy +%%JDK_ROOT%%/conf/security/java.security +%%JDK_ROOT%%/conf/security/policy/limited/default_local.policy +%%JDK_ROOT%%/conf/security/policy/limited/default_US_export.policy +%%JDK_ROOT%%/conf/security/policy/limited/exempt_local.policy +%%JDK_ROOT%%/conf/security/policy/README.txt +%%JDK_ROOT%%/conf/security/policy/unlimited/default_local.policy +%%JDK_ROOT%%/conf/security/policy/unlimited/default_US_export.policy +%%JDK_ROOT%%/conf/sound.properties +%%JDK_ROOT%%/include/bsd/jawt_md.h +%%JDK_ROOT%%/include/bsd/jni_md.h +%%JDK_ROOT%%/include/classfile_constants.h +%%JDK_ROOT%%/include/jawt.h +%%JDK_ROOT%%/include/jdwpTransport.h +%%JDK_ROOT%%/include/jni.h +%%JDK_ROOT%%/include/jvmti.h +%%JDK_ROOT%%/include/jvmticmlr.h +%%JDK_ROOT%%/jmods/java.base.jmod +%%JDK_ROOT%%/jmods/java.compiler.jmod +%%JDK_ROOT%%/jmods/java.datatransfer.jmod +%%JDK_ROOT%%/jmods/java.desktop.jmod +%%JDK_ROOT%%/jmods/java.instrument.jmod +%%JDK_ROOT%%/jmods/java.logging.jmod +%%JDK_ROOT%%/jmods/java.management.jmod +%%JDK_ROOT%%/jmods/java.management.rmi.jmod +%%JDK_ROOT%%/jmods/java.naming.jmod +%%JDK_ROOT%%/jmods/java.net.http.jmod +%%JDK_ROOT%%/jmods/java.prefs.jmod +%%JDK_ROOT%%/jmods/java.rmi.jmod +%%JDK_ROOT%%/jmods/java.scripting.jmod +%%JDK_ROOT%%/jmods/java.se.jmod +%%JDK_ROOT%%/jmods/java.security.jgss.jmod +%%JDK_ROOT%%/jmods/java.security.sasl.jmod +%%JDK_ROOT%%/jmods/java.smartcardio.jmod +%%JDK_ROOT%%/jmods/java.sql.jmod +%%JDK_ROOT%%/jmods/java.sql.rowset.jmod +%%JDK_ROOT%%/jmods/java.transaction.xa.jmod +%%JDK_ROOT%%/jmods/java.xml.crypto.jmod +%%JDK_ROOT%%/jmods/java.xml.jmod +%%JDK_ROOT%%/jmods/jdk.accessibility.jmod +%%JDK_ROOT%%/jmods/jdk.aot.jmod +%%JDK_ROOT%%/jmods/jdk.attach.jmod +%%JDK_ROOT%%/jmods/jdk.charsets.jmod +%%JDK_ROOT%%/jmods/jdk.compiler.jmod +%%JDK_ROOT%%/jmods/jdk.crypto.cryptoki.jmod +%%JDK_ROOT%%/jmods/jdk.crypto.ec.jmod +%%JDK_ROOT%%/jmods/jdk.dynalink.jmod +%%JDK_ROOT%%/jmods/jdk.editpad.jmod +%%JDK_ROOT%%/jmods/jdk.httpserver.jmod +%%JDK_ROOT%%/jmods/jdk.internal.ed.jmod +%%JDK_ROOT%%/jmods/jdk.internal.jvmstat.jmod +%%JDK_ROOT%%/jmods/jdk.internal.le.jmod +%%JDK_ROOT%%/jmods/jdk.internal.opt.jmod +%%JDK_ROOT%%/jmods/jdk.internal.vm.ci.jmod +%%JDK_ROOT%%/jmods/jdk.internal.vm.compiler.jmod +%%JDK_ROOT%%/jmods/jdk.internal.vm.compiler.management.jmod +%%JDK_ROOT%%/jmods/jdk.jartool.jmod +%%JDK_ROOT%%/jmods/jdk.javadoc.jmod +%%JDK_ROOT%%/jmods/jdk.jcmd.jmod +%%JDK_ROOT%%/jmods/jdk.jconsole.jmod +%%JDK_ROOT%%/jmods/jdk.jdeps.jmod +%%JDK_ROOT%%/jmods/jdk.jdi.jmod +%%JDK_ROOT%%/jmods/jdk.jdwp.agent.jmod +%%JDK_ROOT%%/jmods/jdk.jfr.jmod +%%JDK_ROOT%%/jmods/jdk.jlink.jmod +%%JDK_ROOT%%/jmods/jdk.jshell.jmod +%%JDK_ROOT%%/jmods/jdk.jsobject.jmod +%%JDK_ROOT%%/jmods/jdk.jstatd.jmod +%%JDK_ROOT%%/jmods/jdk.localedata.jmod +%%JDK_ROOT%%/jmods/jdk.management.agent.jmod +%%JDK_ROOT%%/jmods/jdk.management.jfr.jmod +%%JDK_ROOT%%/jmods/jdk.management.jmod +%%JDK_ROOT%%/jmods/jdk.naming.dns.jmod +%%JDK_ROOT%%/jmods/jdk.naming.rmi.jmod +%%JDK_ROOT%%/jmods/jdk.net.jmod +%%JDK_ROOT%%/jmods/jdk.pack.jmod +%%JDK_ROOT%%/jmods/jdk.rmic.jmod +%%JDK_ROOT%%/jmods/jdk.scripting.nashorn.jmod +%%JDK_ROOT%%/jmods/jdk.scripting.nashorn.shell.jmod +%%JDK_ROOT%%/jmods/jdk.sctp.jmod +%%JDK_ROOT%%/jmods/jdk.security.auth.jmod +%%JDK_ROOT%%/jmods/jdk.security.jgss.jmod +%%JDK_ROOT%%/jmods/jdk.unsupported.desktop.jmod +%%JDK_ROOT%%/jmods/jdk.unsupported.jmod +%%JDK_ROOT%%/jmods/jdk.xml.dom.jmod +%%JDK_ROOT%%/jmods/jdk.zipfs.jmod +%%JDK_ROOT%%/legal/java.base/ADDITIONAL_LICENSE_INFO +%%JDK_ROOT%%/legal/java.base/aes.md +%%JDK_ROOT%%/legal/java.base/asm.md +%%JDK_ROOT%%/legal/java.base/ASSEMBLY_EXCEPTION +%%JDK_ROOT%%/legal/java.base/c-libutl.md +%%JDK_ROOT%%/legal/java.base/cldr.md +%%JDK_ROOT%%/legal/java.base/icu.md +%%JDK_ROOT%%/legal/java.base/LICENSE +%%JDK_ROOT%%/legal/java.base/public_suffix.md +%%JDK_ROOT%%/legal/java.base/unicode.md +%%JDK_ROOT%%/legal/java.desktop/colorimaging.md +%%JDK_ROOT%%/legal/java.desktop/harfbuzz.md +%%JDK_ROOT%%/legal/java.desktop/jpeg.md +%%JDK_ROOT%%/legal/java.desktop/lcms.md +%%JDK_ROOT%%/legal/java.desktop/libpng.md +%%JDK_ROOT%%/legal/java.desktop/mesa3d.md +%%JDK_ROOT%%/legal/java.desktop/opengl.md +%%JDK_ROOT%%/legal/java.desktop/xwindows.md +%%JDK_ROOT%%/legal/java.smartcardio/pcsclite.md +%%JDK_ROOT%%/legal/java.xml.crypto/santuario.md +%%JDK_ROOT%%/legal/java.xml/bcel.md +%%JDK_ROOT%%/legal/java.xml/dom.md +%%JDK_ROOT%%/legal/java.xml/jcup.md +%%JDK_ROOT%%/legal/java.xml/xalan.md +%%JDK_ROOT%%/legal/java.xml/xerces.md +%%JDK_ROOT%%/legal/jdk.crypto.cryptoki/pkcs11cryptotoken.md +%%JDK_ROOT%%/legal/jdk.crypto.cryptoki/pkcs11wrapper.md +%%JDK_ROOT%%/legal/jdk.crypto.ec/ecc.md +%%JDK_ROOT%%/legal/jdk.dynalink/dynalink.md +%%JDK_ROOT%%/legal/jdk.internal.le/jline.md +%%JDK_ROOT%%/legal/jdk.internal.opt/jopt-simple.md +%%JDK_ROOT%%/legal/jdk.javadoc/jquery-migrate.md +%%JDK_ROOT%%/legal/jdk.javadoc/jquery.md +%%JDK_ROOT%%/legal/jdk.javadoc/jqueryUI.md +%%JDK_ROOT%%/legal/jdk.javadoc/jszip.md +%%JDK_ROOT%%/legal/jdk.javadoc/pako.md +%%JDK_ROOT%%/legal/jdk.localedata/thaidict.md +%%JDK_ROOT%%/legal/jdk.scripting.nashorn/double-conversion.md +%%JDK_ROOT%%/legal/jdk.scripting.nashorn/joni.md +%%JDK_ROOT%%/lib/classlist +%%JDK_ROOT%%/lib/ct.sym +%%JDK_ROOT%%/lib/fontconfig.bfc +%%JDK_ROOT%%/lib/fontconfig.properties.src +%%JDK_ROOT%%/lib/jfr/default.jfc +%%JDK_ROOT%%/lib/jfr/profile.jfc +%%JDK_ROOT%%/lib/jli/libjli.so +%%JDK_ROOT%%/lib/jrt-fs.jar +%%JDK_ROOT%%/lib/jspawnhelper +%%JDK_ROOT%%/lib/jvm.cfg +%%JDK_ROOT%%/lib/libattach.so +%%JDK_ROOT%%/lib/libawt_headless.so +%%JDK_ROOT%%/lib/libawt_xawt.so +%%JDK_ROOT%%/lib/libawt.so +%%JDK_ROOT%%/lib/libdt_socket.so +%%JDK_ROOT%%/lib/libextnet.so +%%JDK_ROOT%%/lib/libfontmanager.so +%%JDK_ROOT%%/lib/libinstrument.so +%%JDK_ROOT%%/lib/libj2gss.so +%%JDK_ROOT%%/lib/libj2pcsc.so +%%JDK_ROOT%%/lib/libj2pkcs11.so +%%JDK_ROOT%%/lib/libjaas.so +%%JDK_ROOT%%/lib/libjava.so +%%JDK_ROOT%%/lib/libjavajpeg.so +%%JDK_ROOT%%/lib/libjawt.so +%%JDK_ROOT%%/lib/libjdwp.so +%%JDK_ROOT%%/lib/libjimage.so +%%JDK_ROOT%%/lib/libjsig.so +%%JDK_ROOT%%/lib/libjsound.so +%%JDK_ROOT%%/lib/liblcms.so +%%JDK_ROOT%%/lib/libmanagement_agent.so +%%JDK_ROOT%%/lib/libmanagement_ext.so +%%JDK_ROOT%%/lib/libmanagement.so +%%JDK_ROOT%%/lib/libmlib_image.so +%%JDK_ROOT%%/lib/libnet.so +%%JDK_ROOT%%/lib/libnio.so +%%JDK_ROOT%%/lib/libprefs.so +%%JDK_ROOT%%/lib/librmi.so +%%JDK_ROOT%%/lib/libsplashscreen.so +%%JDK_ROOT%%/lib/libsunec.so +%%JDK_ROOT%%/lib/libunpack.so +%%JDK_ROOT%%/lib/libverify.so +%%JDK_ROOT%%/lib/libzip.so +%%JDK_ROOT%%/lib/modules +%%JDK_ROOT%%/lib/psfont.properties.ja +%%JDK_ROOT%%/lib/psfontj2d.properties +%%JDK_ROOT%%/lib/security/blacklisted.certs +%%JDK_ROOT%%/lib/security/cacerts +%%JDK_ROOT%%/lib/security/default.policy +%%JDK_ROOT%%/lib/security/public_suffix_list.dat +%%JDK_ROOT%%/lib/server/libjsig.so +%%JDK_ROOT%%/lib/server/libjvm.so +%%JDK_ROOT%%/lib/server/Xusage.txt +%%JDK_ROOT%%/lib/tzdb.dat +%%JDK_ROOT%%/release diff --git a/lang/gcc6/Makefile b/lang/gcc6/Makefile index d33c3f5b4e5..5f1552faa8e 100644 --- a/lang/gcc6/Makefile +++ b/lang/gcc6/Makefile @@ -177,9 +177,8 @@ post-stage: ${RM} ${WRKDIR}/PLIST.lib .if ${ARCH} == powerpc64 && ${PORT_OPTIONS:MMULTILIB} - ${MKDIR} ${STAGEDIR}${TARGLIB32}/gcc${SUFFIX} - ${MV} ${STAGEDIR}${PREFIX}/lib/lib32/* ${STAGEDIR}${TARGLIB32}/gcc${SUFFIX} - ${RMDIR} ${STAGEDIR}${PREFIX}/lib/lib32 + ${MKDIR} ${STAGEDIR}${TARGLIB32} + ${MV} ${STAGEDIR}${PREFIX}/lib/lib32 ${STAGEDIR}${TARGLIB32}/gcc${SUFFIX} .endif .for d in ${TARGLIB:S/^${PREFIX}\///} ${TARGLIB32:S/^${PREFIX}\///} ${LIBEXEC:S/^${PREFIX}\///} include/gcj include/gnu include/java include/javax diff --git a/lang/perl5-devel/Makefile b/lang/perl5-devel/Makefile index b01755f91ea..92dbe7cf8b7 100644 --- a/lang/perl5-devel/Makefile +++ b/lang/perl5-devel/Makefile @@ -7,7 +7,7 @@ PORTNAME= perl DISTVERSIONPREFIX= v DISTVERSION= ${GH_TAGNAME:C/^v//:C/-g[0-9a-f]*$//} DISTVERSIONSUFFIX= ${GH_TAGNAME:C/.*-g/-g/} -PORTREVISION= 0 +PORTREVISION= 1 CATEGORIES= lang devel perl5 # XXX Leave only CPAN. MASTER_SITES= LOCAL/mat/perl GH diff --git a/lang/perl5-devel/files/patch-cpan_Pod-Perldoc_lib_Pod_Perldoc.pm b/lang/perl5-devel/files/patch-cpan_Pod-Perldoc_lib_Pod_Perldoc.pm new file mode 100644 index 00000000000..8a9479cc751 --- /dev/null +++ b/lang/perl5-devel/files/patch-cpan_Pod-Perldoc_lib_Pod_Perldoc.pm @@ -0,0 +1,16 @@ +Put back some non dumb outputter by default + +--- cpan/Pod-Perldoc/lib/Pod/Perldoc.pm.orig 2019-03-12 16:47:18 UTC ++++ cpan/Pod-Perldoc/lib/Pod/Perldoc.pm +@@ -486,6 +486,11 @@ sub init_formatter_class_list { + + $self->opt_M_with('Pod::Perldoc::ToPod'); # the always-there fallthru + $self->opt_o_with('text'); ++ $self->opt_o_with('man') ++ unless $self->is_mswin32 || $self->is_dos || $self->is_amigaos ++ || !($ENV{TERM} && ( ++ ($ENV{TERM} || '') !~ /dumb|emacs|none|unknown/i ++ )); + + return; + } diff --git a/lang/perl5-devel/files/patch-cpan_Pod-Perldoc_lib_Pod_Perldoc_ToMan.pm b/lang/perl5-devel/files/patch-cpan_Pod-Perldoc_lib_Pod_Perldoc_ToMan.pm index cf800afbf95..d807041754d 100644 --- a/lang/perl5-devel/files/patch-cpan_Pod-Perldoc_lib_Pod_Perldoc_ToMan.pm +++ b/lang/perl5-devel/files/patch-cpan_Pod-Perldoc_lib_Pod_Perldoc_ToMan.pm @@ -1,4 +1,7 @@ ---- cpan/Pod-Perldoc/lib/Pod/Perldoc/ToMan.pm.orig 2017-04-03 07:28:44 UTC +- Handle MANWIDTH=tty +- Reset $? before opening mandoc so that the outputter works. + +--- cpan/Pod-Perldoc/lib/Pod/Perldoc/ToMan.pm.orig 2019-03-11 04:03:26 UTC +++ cpan/Pod-Perldoc/lib/Pod/Perldoc/ToMan.pm @@ -108,6 +108,8 @@ sub _get_columns_from_manwidth { @@ -9,3 +12,13 @@ unless( $ENV{MANWIDTH} =~ m/\A\d+\z/ ) { $self->warn( "Ignoring non-numeric MANWIDTH ($ENV{MANWIDTH})\n" ); return 0; +@@ -309,6 +311,9 @@ sub _filter_through_nroff { + require Symbol; + require IPC::Open3; + require IO::Handle; ++ ++ # Reset this??? ++ $?=0; + + my $pid = IPC::Open3::open3( + my $writer, diff --git a/lang/seed7/Makefile b/lang/seed7/Makefile index fc86e7e3411..fa22fc5f843 100644 --- a/lang/seed7/Makefile +++ b/lang/seed7/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= seed7 -DISTVERSION= 05_20190107 +DISTVERSION= 05_20190303 PORTREVISION= 0 CATEGORIES= lang MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${DISTNAME}/ diff --git a/lang/seed7/distinfo b/lang/seed7/distinfo index 86d2e939d87..3401e92dd92 100644 --- a/lang/seed7/distinfo +++ b/lang/seed7/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1546953818 -SHA256 (seed7_05_20190107.tgz) = 553bc5764b13d2ac61ac667d7514d61c10357d62ea4b26fe54fbd3d638fabeca -SIZE (seed7_05_20190107.tgz) = 2881609 +TIMESTAMP = 1552394132 +SHA256 (seed7_05_20190303.tgz) = e243ca550747aa9e168afa746d2bac56970a8ec2b852996f901fe5a47d14323f +SIZE (seed7_05_20190303.tgz) = 2935981 diff --git a/lang/seed7/pkg-plist b/lang/seed7/pkg-plist index a0bea3c0d16..dc2e4f947f7 100644 --- a/lang/seed7/pkg-plist +++ b/lang/seed7/pkg-plist @@ -87,6 +87,7 @@ lib/seed7/lib/console.s7i lib/seed7/lib/crc32.s7i lib/seed7/lib/cronos16.s7i lib/seed7/lib/cronos27.s7i +lib/seed7/lib/csv.s7i lib/seed7/lib/deflate.s7i lib/seed7/lib/des.s7i lib/seed7/lib/dialog.s7i diff --git a/math/octave/Makefile b/math/octave/Makefile index 6152f1ec5df..1251203ce8b 100644 --- a/math/octave/Makefile +++ b/math/octave/Makefile @@ -3,6 +3,7 @@ PORTNAME= octave PORTVERSION= ${OCTAVE_VERSION} +PORTREVISION= 1 CATEGORIES= math java MASTER_SITES= GNU @@ -37,7 +38,9 @@ LIB_DEPENDS= libGraphicsMagick.so:graphics/GraphicsMagick \ libfreetype.so:print/freetype2 \ libdrm.so:graphics/libdrm \ libOSMesa.so:graphics/libosmesa \ - libsundials_arkode.so:math/sundials + libsundials_arkode.so:math/sundials \ + libportaudio.so:audio/portaudio +# libsndfile.so:audio/libsndfile # Commented out until this port no longer has vulnerabilities. USES= charsetfix fortran gmake libtool perl5 pkgconfig qt:5 readline \ tar:xz compiler:c++14-lang \ diff --git a/math/speedcrunch/Makefile b/math/speedcrunch/Makefile index f34de3d0dbd..6a43d66f9c1 100644 --- a/math/speedcrunch/Makefile +++ b/math/speedcrunch/Makefile @@ -13,7 +13,7 @@ COMMENT= Keyboard-oriented desktop scientific calculator LICENSE= GPLv2+ -USES= cmake qt:5 +USES= cmake compiler:c++11-lang qt:5 BB_ACCOUNT= heldercorreia BB_PROJECT= ${PORTNAME} diff --git a/math/ump/Makefile b/math/ump/Makefile index d4cdc44c989..e952ec895e0 100644 --- a/math/ump/Makefile +++ b/math/ump/Makefile @@ -13,7 +13,7 @@ COMMENT= Graphical, easy to use math program LICENSE= GPLv2 -USES= gmake pkgconfig tar:bzip2 +USES= compiler:c++11-lang gmake pkgconfig tar:bzip2 USE_GNOME= gtk20 USE_GL= glu diff --git a/math/zegrapher/Makefile b/math/zegrapher/Makefile index 2fbe2cff2e8..02ecb693ce5 100644 --- a/math/zegrapher/Makefile +++ b/math/zegrapher/Makefile @@ -14,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${LOCALBASE}/include/boost/math/special_functions/binomial.hpp:devel/boost-libs -USES= desktop-file-utils qmake qt:5 +USES= compiler:c++11-lang desktop-file-utils qmake qt:5 USE_GITHUB= yes GH_ACCOUNT= AdelKS USE_QT= core gui network printsupport widgets buildtools_build diff --git a/misc/crosti/Makefile b/misc/crosti/Makefile index 7419d466d8d..1d418487eaf 100644 --- a/misc/crosti/Makefile +++ b/misc/crosti/Makefile @@ -12,7 +12,8 @@ COMMENT= Convert custom image to cross stitch design, edit stitch designs LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/gpl.txt -USES= desktop-file-utils dos2unix gl qmake qt:5 shared-mime-info zip +USES= compiler:c++11-lang desktop-file-utils dos2unix gl qmake qt:5 \ + shared-mime-info zip DOS2UNIX_GLOB= *.cpp *.csc *.h *.pro *.txt *.xml USE_GL= gl USE_QT= concurrent core gui printsupport svg widgets buildtools_build diff --git a/misc/iso-codes/Makefile b/misc/iso-codes/Makefile index 5201d8e8503..ffc16dfb5d6 100644 --- a/misc/iso-codes/Makefile +++ b/misc/iso-codes/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= iso-codes -PORTVERSION= 4.1 -PORTREVISION= 1 +PORTVERSION= 4.2 CATEGORIES= misc MAINTAINER= kwm@FreeBSD.org @@ -19,7 +18,7 @@ NO_ARCH= yes USE_GITLAB= yes GL_SITE= https://salsa.debian.org GL_ACCOUNT= iso-codes-team -GL_COMMIT= 164802d5fd8c7a8167816fd86a62b286680619f0 +GL_COMMIT= 58a4f20f8e6f4d8f9545333f3eae4cfe5678de16 BINARY_ALIAS= python3=${PYTHON_VERSION} diff --git a/misc/iso-codes/distinfo b/misc/iso-codes/distinfo index f8430101f37..c96c03d01af 100644 --- a/misc/iso-codes/distinfo +++ b/misc/iso-codes/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1544286461 -SHA256 (iso-codes-team-iso-codes-164802d5fd8c7a8167816fd86a62b286680619f0_GL0.tar.gz) = d3efe022e730f286d1094bbbee99ed0531f1ad3b3f5c84d23d6cc2ba745d8efb -SIZE (iso-codes-team-iso-codes-164802d5fd8c7a8167816fd86a62b286680619f0_GL0.tar.gz) = 13092037 +TIMESTAMP = 1552422827 +SHA256 (iso-codes-team-iso-codes-58a4f20f8e6f4d8f9545333f3eae4cfe5678de16_GL0.tar.gz) = 859eb551fb0c1aeb357bc362cbcae4be591e05a1db325993b072492654e22c1f +SIZE (iso-codes-team-iso-codes-58a4f20f8e6f4d8f9545333f3eae4cfe5678de16_GL0.tar.gz) = 13107777 diff --git a/misc/iso-codes/pkg-plist b/misc/iso-codes/pkg-plist index 7897f6529f9..ed0c1966708 100644 --- a/misc/iso-codes/pkg-plist +++ b/misc/iso-codes/pkg-plist @@ -971,6 +971,8 @@ share/locale/zh_HK/LC_MESSAGES/iso_3166.mo share/locale/zh_HK/LC_MESSAGES/iso_4217.mo share/locale/zh_HK/LC_MESSAGES/iso_639-2.mo share/locale/zh_HK/LC_MESSAGES/iso_639.mo +share/locale/zh_Hant/LC_MESSAGES/iso_639-5.mo +share/locale/zh_Hant/LC_MESSAGES/iso_639_5.mo share/locale/zh_TW/LC_MESSAGES/iso_15924.mo share/locale/zh_TW/LC_MESSAGES/iso_3166-1.mo share/locale/zh_TW/LC_MESSAGES/iso_3166-2.mo diff --git a/misc/kde-thumbnailer-fb2/Makefile b/misc/kde-thumbnailer-fb2/Makefile index 74749f6e7c4..ec3a6f77e9f 100644 --- a/misc/kde-thumbnailer-fb2/Makefile +++ b/misc/kde-thumbnailer-fb2/Makefile @@ -12,7 +12,7 @@ COMMENT= KDE thumbnail generator for fb2 files LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING -USES= cmake kde:5 qt:5 +USES= cmake compiler:c++11-lang kde:5 qt:5 USE_KDE= archive ecm_build kio USE_QT= buildtools_build qmake_build gui diff --git a/misc/qbrew/Makefile b/misc/qbrew/Makefile index 93c2bd9481e..f45e641fbe9 100644 --- a/misc/qbrew/Makefile +++ b/misc/qbrew/Makefile @@ -13,7 +13,7 @@ COMMENT= Homebrewer's recipe calculator LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -USES= qmake qt:5 +USES= compiler:c++11-lang gl qmake qt:5 USE_GL= gl USE_QT= buildtools_build qmake_build \ core gui printsupport widgets xml diff --git a/misc/tellico/Makefile b/misc/tellico/Makefile index 288a38c99fa..2b192e58ab7 100644 --- a/misc/tellico/Makefile +++ b/misc/tellico/Makefile @@ -22,8 +22,8 @@ LIB_DEPENDS= libbtparse.so:textproc/btparse \ libtag.so:audio/taglib \ libyaz.so:net/yaz -USES= cmake desktop-file-utils gettext kde:5 pkgconfig python:run \ - qt:5 shared-mime-info shebangfix tar:xz +USES= cmake compiler:c++11-lang desktop-file-utils gettext kde:5 \ + pkgconfig python:run qt:5 shared-mime-info shebangfix tar:xz USE_GNOME= libxml2 libxslt USE_KDE= archive attica5 auth bookmarks codecs completion config \ configwidgets coreaddons crash ecm filemetadata guiaddons \ diff --git a/multimedia/bino/Makefile b/multimedia/bino/Makefile index 7e949fe7004..2894342bc24 100644 --- a/multimedia/bino/Makefile +++ b/multimedia/bino/Makefile @@ -17,7 +17,8 @@ LIB_DEPENDS= libass.so:multimedia/libass \ libavformat.so:multimedia/ffmpeg \ libopenal.so:audio/openal-soft -USES= autoreconf desktop-file-utils gmake iconv pkgconfig qt:5 tar:xz +USES= autoreconf compiler:c++11-lang desktop-file-utils gl gmake \ + iconv pkgconfig qt:5 tar:xz USE_GL= gl glu glew GNU_CONFIGURE= yes INSTALLS_ICONS= yes diff --git a/multimedia/dav1d/Makefile b/multimedia/dav1d/Makefile index ac23cad6458..8b9052b3eec 100644 --- a/multimedia/dav1d/Makefile +++ b/multimedia/dav1d/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= dav1d -DISTVERSION= 0.2.0 +DISTVERSION= 0.2.1 CATEGORIES= multimedia MAINTAINER= jbeich@FreeBSD.org @@ -22,7 +22,7 @@ USE_GITLAB= yes USE_LDCONFIG= yes GL_SITE= https://code.videolan.org GL_ACCOUNT= videolan -GL_COMMIT= 8e379f1d64bf09224ce2863b0d8aeb7cbfde92d6 +GL_COMMIT= 408d0486889f4f6d92f73abdeaef250659a10bc7 CONFIGURE_ENV= UNAME_m=${ARCH} # XXX cpu_family() CFLAGS_aarch64= -no-integrated-as CFLAGS_armv6= -no-integrated-as -B${LOCALBASE}/bin diff --git a/multimedia/dav1d/distinfo b/multimedia/dav1d/distinfo index 96ae57e234c..34e9e308f1d 100644 --- a/multimedia/dav1d/distinfo +++ b/multimedia/dav1d/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1551709314 -SHA256 (videolan-dav1d-8e379f1d64bf09224ce2863b0d8aeb7cbfde92d6_GL0.tar.gz) = 6ab01cd7a1f173832a35064db69cef14302c15d0c84241b23a0e8e3b880d79f4 -SIZE (videolan-dav1d-8e379f1d64bf09224ce2863b0d8aeb7cbfde92d6_GL0.tar.gz) = 528914 +TIMESTAMP = 1552400916 +SHA256 (videolan-dav1d-408d0486889f4f6d92f73abdeaef250659a10bc7_GL0.tar.gz) = 9a8366c4c56f779a431f4cb0aab0cc165dc6de0aedcada076d2b7e5efc110c24 +SIZE (videolan-dav1d-408d0486889f4f6d92f73abdeaef250659a10bc7_GL0.tar.gz) = 533128 SHA256 (videolan-dav1d-test-data-3ccdd3df4fb8583d58bcc0101e315b00ec3ae130_GL0.tar.gz) = 4ac0c3fa7993f53c6e5f03fda28252269ecd6ca11bcd96f6026cb0c2edb64d41 SIZE (videolan-dav1d-test-data-3ccdd3df4fb8583d58bcc0101e315b00ec3ae130_GL0.tar.gz) = 31340228 diff --git a/multimedia/dav1d/pkg-plist b/multimedia/dav1d/pkg-plist index d434bb6b8ba..a665956f519 100644 --- a/multimedia/dav1d/pkg-plist +++ b/multimedia/dav1d/pkg-plist @@ -7,5 +7,5 @@ include/dav1d/picture.h include/dav1d/version.h lib/libdav1d.so lib/libdav1d.so.1 -lib/libdav1d.so.1.0.0 +lib/libdav1d.so.1.0.1 libdata/pkgconfig/dav1d.pc diff --git a/multimedia/dvbcut/Makefile b/multimedia/dvbcut/Makefile index 401dd606333..3be880096db 100644 --- a/multimedia/dvbcut/Makefile +++ b/multimedia/dvbcut/Makefile @@ -20,12 +20,13 @@ LIB_DEPENDS= liba52.so:audio/liba52 \ libavutil.so:multimedia/ffmpeg RUN_DEPENDS:= ${BUILD_DEPENDS} +USES= compiler:c++11-lang desktop-file-utils pkgconfig \ + qmake:outsource shared-mime-info + USE_GITHUB= yes GH_ACCOUNT= bernhardu GH_PROJECT= dvbcut-deb -USES= qmake:outsource pkgconfig desktop-file-utils shared-mime-info - CXXFLAGS+= -I${LOCALBASE}/include \ -I${LOCALBASE}/include/libavcodec \ -I${LOCALBASE}/include/libavformat \ diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile index cb2482f8cfa..97d890efacc 100644 --- a/multimedia/ffmpeg/Makefile +++ b/multimedia/ffmpeg/Makefile @@ -3,7 +3,7 @@ PORTNAME= ffmpeg PORTVERSION= 4.1.1 -PORTREVISION= 6 +PORTREVISION= 7 PORTEPOCH= 1 CATEGORIES= multimedia audio ipv6 net MASTER_SITES= https://ffmpeg.org/releases/ diff --git a/multimedia/ffmpeg/files/patch-dav1d b/multimedia/ffmpeg/files/patch-dav1d index be546d43e2e..f9feef0eee9 100644 --- a/multimedia/ffmpeg/files/patch-dav1d +++ b/multimedia/ffmpeg/files/patch-dav1d @@ -7,6 +7,12 @@ https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/0fca2f60da https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/e695b0beba https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/0e833f615b https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/10931a0661 +https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/dcf64b599d +https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/2a31bf2a35 +https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/28746a0e20 +https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/36bb2cc200 +https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/38a4132132 +https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/f6803cfbd2 --- configure.orig 2018-11-05 23:22:33 UTC +++ configure @@ -38,7 +44,7 @@ https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/10931a0661 die "ERROR: libcelt must be installed and version must be >= 0.11.0."; } enabled libcaca && require_pkg_config libcaca caca caca.h caca_create_canvas enabled libcodec2 && require libcodec2 codec2/codec2.h codec2_create -lcodec2 -+enabled libdav1d && require_pkg_config libdav1d "dav1d >= 0.0.1" "dav1d/dav1d.h" dav1d_version ++enabled libdav1d && require_pkg_config libdav1d "dav1d >= 0.2.1" "dav1d/dav1d.h" dav1d_version enabled libdavs2 && require_pkg_config libdavs2 "davs2 >= 1.5.115" davs2.h davs2_decoder_open enabled libdc1394 && require_pkg_config libdc1394 libdc1394-2 dc1394/dc1394.h dc1394_new enabled libdrm && require_pkg_config libdrm libdrm xf86drm.h drmGetVersion @@ -77,7 +83,7 @@ https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/10931a0661 extern AVCodec ff_libfdk_aac_decoder; --- libavcodec/libdav1d.c.orig 2018-12-16 07:22:28 UTC +++ libavcodec/libdav1d.c -@@ -0,0 +1,251 @@ +@@ -0,0 +1,356 @@ +/* + * Copyright (c) 2018 Ronald S. Bultje + * Copyright (c) 2018 James Almer @@ -102,6 +108,8 @@ https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/10931a0661 +#include + +#include "libavutil/avassert.h" ++#include "libavutil/mastering_display_metadata.h" ++#include "libavutil/imgutils.h" +#include "libavutil/opt.h" + +#include "avcodec.h" @@ -111,12 +119,81 @@ https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/10931a0661 +typedef struct Libdav1dContext { + AVClass *class; + Dav1dContext *c; ++ AVBufferPool *pool; ++ int pool_size; + + Dav1dData data; + int tile_threads; + int apply_grain; +} Libdav1dContext; + ++static const enum AVPixelFormat pix_fmt[][3] = { ++ [DAV1D_PIXEL_LAYOUT_I400] = { AV_PIX_FMT_GRAY8, AV_PIX_FMT_GRAY10, AV_PIX_FMT_GRAY12 }, ++ [DAV1D_PIXEL_LAYOUT_I420] = { AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUV420P10, AV_PIX_FMT_YUV420P12 }, ++ [DAV1D_PIXEL_LAYOUT_I422] = { AV_PIX_FMT_YUV422P, AV_PIX_FMT_YUV422P10, AV_PIX_FMT_YUV422P12 }, ++ [DAV1D_PIXEL_LAYOUT_I444] = { AV_PIX_FMT_YUV444P, AV_PIX_FMT_YUV444P10, AV_PIX_FMT_YUV444P12 }, ++}; ++ ++static void libdav1d_log_callback(void *opaque, const char *fmt, va_list vl) ++{ ++ AVCodecContext *c = opaque; ++ ++ av_vlog(c, AV_LOG_ERROR, fmt, vl); ++} ++ ++static int libdav1d_picture_allocator(Dav1dPicture *p, void *cookie) ++{ ++ Libdav1dContext *dav1d = cookie; ++ enum AVPixelFormat format = pix_fmt[p->p.layout][p->seq_hdr->hbd]; ++ int ret, linesize[4], h = FFALIGN(p->p.h, 128); ++ uint8_t *aligned_ptr, *data[4]; ++ AVBufferRef *buf; ++ ++ ret = av_image_fill_arrays(data, linesize, NULL, format, FFALIGN(p->p.w, 128), ++ h, DAV1D_PICTURE_ALIGNMENT); ++ if (ret < 0) ++ return ret; ++ ++ if (ret != dav1d->pool_size) { ++ av_buffer_pool_uninit(&dav1d->pool); ++ // Use twice the amount of required padding bytes for aligned_ptr below. ++ dav1d->pool = av_buffer_pool_init(ret + DAV1D_PICTURE_ALIGNMENT * 2, NULL); ++ if (!dav1d->pool) ++ return AVERROR(ENOMEM); ++ dav1d->pool_size = ret; ++ } ++ buf = av_buffer_pool_get(dav1d->pool); ++ if (!buf) ++ return AVERROR(ENOMEM); ++ ++ // libdav1d requires DAV1D_PICTURE_ALIGNMENT aligned buffers, which av_malloc() ++ // doesn't guarantee for example when AVX is disabled at configure time. ++ // Use the extra DAV1D_PICTURE_ALIGNMENT padding bytes in the buffer to align it ++ // if required. ++ aligned_ptr = (uint8_t *)FFALIGN((uintptr_t)buf->data, DAV1D_PICTURE_ALIGNMENT); ++ ret = av_image_fill_pointers(data, format, h, aligned_ptr, linesize); ++ if (ret < 0) { ++ av_buffer_unref(&buf); ++ return ret; ++ } ++ ++ p->data[0] = data[0]; ++ p->data[1] = data[1]; ++ p->data[2] = data[2]; ++ p->stride[0] = linesize[0]; ++ p->stride[1] = linesize[1]; ++ p->allocator_data = buf; ++ ++ return 0; ++} ++ ++static void libdav1d_picture_release(Dav1dPicture *p, void *cookie) ++{ ++ AVBufferRef *buf = p->allocator_data; ++ ++ av_buffer_unref(&buf); ++} ++ +static av_cold int libdav1d_init(AVCodecContext *c) +{ + Libdav1dContext *dav1d = c->priv_data; @@ -126,6 +203,11 @@ https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/10931a0661 + av_log(c, AV_LOG_INFO, "libdav1d %s\n", dav1d_version()); + + dav1d_default_settings(&s); ++ s.logger.cookie = c; ++ s.logger.callback = libdav1d_log_callback; ++ s.allocator.cookie = dav1d; ++ s.allocator.alloc_picture_callback = libdav1d_picture_allocator; ++ s.allocator.release_picture_callback = libdav1d_picture_release; + s.n_tile_threads = dav1d->tile_threads; + s.apply_grain = dav1d->apply_grain; + s.n_frame_threads = FFMIN(c->thread_count ? c->thread_count : av_cpu_count(), DAV1D_MAX_FRAME_THREADS); @@ -158,13 +240,6 @@ https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/10931a0661 + av_free(p); +} + -+static const enum AVPixelFormat pix_fmt[][3] = { -+ [DAV1D_PIXEL_LAYOUT_I400] = { AV_PIX_FMT_GRAY8, AV_PIX_FMT_GRAY10, AV_PIX_FMT_GRAY12 }, -+ [DAV1D_PIXEL_LAYOUT_I420] = { AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUV420P10, AV_PIX_FMT_YUV420P12 }, -+ [DAV1D_PIXEL_LAYOUT_I422] = { AV_PIX_FMT_YUV422P, AV_PIX_FMT_YUV422P10, AV_PIX_FMT_YUV422P12 }, -+ [DAV1D_PIXEL_LAYOUT_I444] = { AV_PIX_FMT_YUV444P, AV_PIX_FMT_YUV444P10, AV_PIX_FMT_YUV444P12 }, -+}; -+ +static int libdav1d_receive_frame(AVCodecContext *c, AVFrame *frame) +{ + Libdav1dContext *dav1d = c->priv_data; @@ -197,9 +272,9 @@ https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/10931a0661 + + res = dav1d_send_data(dav1d->c, data); + if (res < 0) { -+ if (res == -EINVAL) ++ if (res == AVERROR(EINVAL)) + res = AVERROR_INVALIDDATA; -+ if (res != -EAGAIN) ++ if (res != AVERROR(EAGAIN)) + return res; + } + @@ -209,9 +284,9 @@ https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/10931a0661 + + res = dav1d_get_picture(dav1d->c, p); + if (res < 0) { -+ if (res == -EINVAL) ++ if (res == AVERROR(EINVAL)) + res = AVERROR_INVALIDDATA; -+ else if (res == -EAGAIN && c->internal->draining) ++ else if (res == AVERROR(EAGAIN) && c->internal->draining) + res = AVERROR_EOF; + + av_free(p); @@ -242,7 +317,7 @@ https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/10931a0661 + if (c->width != p->p.w || c->height != p->p.h) { + res = ff_set_dimensions(c, p->p.w, p->p.h); + if (res < 0) -+ return res; ++ goto fail; + } + + switch (p->seq_hdr->chr) { @@ -283,16 +358,52 @@ https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/10931a0661 + frame->pict_type = AV_PICTURE_TYPE_SP; + break; + default: -+ return AVERROR_INVALIDDATA; ++ res = AVERROR_INVALIDDATA; ++ goto fail; + } + -+ return 0; ++ if (p->mastering_display) { ++ AVMasteringDisplayMetadata *mastering = av_mastering_display_metadata_create_side_data(frame); ++ if (!mastering) { ++ res = AVERROR(ENOMEM); ++ goto fail; ++ } ++ ++ for (int i = 0; i < 3; i++) { ++ mastering->display_primaries[i][0] = av_make_q(p->mastering_display->primaries[i][0], 1 << 16); ++ mastering->display_primaries[i][1] = av_make_q(p->mastering_display->primaries[i][1], 1 << 16); ++ } ++ mastering->white_point[0] = av_make_q(p->mastering_display->white_point[0], 1 << 16); ++ mastering->white_point[1] = av_make_q(p->mastering_display->white_point[1], 1 << 16); ++ ++ mastering->max_luminance = av_make_q(p->mastering_display->max_luminance, 1 << 8); ++ mastering->min_luminance = av_make_q(p->mastering_display->min_luminance, 1 << 14); ++ ++ mastering->has_primaries = 1; ++ mastering->has_luminance = 1; ++ } ++ if (p->content_light) { ++ AVContentLightMetadata *light = av_content_light_metadata_create_side_data(frame); ++ if (!light) { ++ res = AVERROR(ENOMEM); ++ goto fail; ++ } ++ light->MaxCLL = p->content_light->max_content_light_level; ++ light->MaxFALL = p->content_light->max_frame_average_light_level; ++ } ++ ++ res = 0; ++fail: ++ if (res < 0) ++ av_frame_unref(frame); ++ return res; +} + +static av_cold int libdav1d_close(AVCodecContext *c) +{ + Libdav1dContext *dav1d = c->priv_data; + ++ av_buffer_pool_uninit(&dav1d->pool); + dav1d_data_unref(&dav1d->data); + dav1d_close(&dav1d->c); + diff --git a/multimedia/gst123/Makefile b/multimedia/gst123/Makefile index 11c79d7bd97..3119010d2d8 100644 --- a/multimedia/gst123/Makefile +++ b/multimedia/gst123/Makefile @@ -13,7 +13,7 @@ COMMENT= Command-line tool to play audio and video files LICENSE= LGPL20 GNU_CONFIGURE= yes -USES= gmake ncurses pkgconfig tar:bzip2 +USES= compiler:c++11-lang gmake ncurses pkgconfig tar:bzip2 USE_GNOME= gtk20 CONFIGURE_ENV= NCURSES5_CONFIG=/usr/bin/true LDFLAGS+= -lncurses -L${LOCALBASE}/lib diff --git a/multimedia/libva-intel-driver/Makefile b/multimedia/libva-intel-driver/Makefile index e6852bdf213..fbabec6bb7a 100644 --- a/multimedia/libva-intel-driver/Makefile +++ b/multimedia/libva-intel-driver/Makefile @@ -27,12 +27,19 @@ GH_ACCOUNT= intel GH_PROJECT= intel-vaapi-driver PLIST_FILES= lib/dri/i915_drv_video.so lib/dri/i965_drv_video.so -OPTIONS_DEFINE= HYBRID +OPTIONS_DEFINE= HYBRID WAYLAND X11 +OPTIONS_DEFAULT= WAYLAND X11 HYBRID_DESC= Hybrid VP8 encoding on Gen7/8 and VP9 decoding on Gen7/8/9 HYBRID_RUN_DEPENDS= ${LOCALBASE}/lib/dri/hybrid_drv_video.so:multimedia/libva-intel-hybrid-driver HYBRID_MESON_TRUE= enable_hybrid_codec +WAYLAND_LIB_DEPENDS= libva-wayland.so:multimedia/libva +WAYLAND_MESON_YES= with_wayland + +X11_LIB_DEPENDS= libva-x11.so:multimedia/libva +X11_MESON_YES= with_x11 + post-install: ${LN} -sf i965_drv_video.so ${STAGEDIR}${PREFIX}/lib/dri/i915_drv_video.so diff --git a/multimedia/libva-intel-hybrid-driver/Makefile b/multimedia/libva-intel-hybrid-driver/Makefile index 0a38e479b91..10ac357820e 100644 --- a/multimedia/libva-intel-hybrid-driver/Makefile +++ b/multimedia/libva-intel-hybrid-driver/Makefile @@ -29,6 +29,15 @@ GNU_CONFIGURE= yes INSTALL_TARGET= install-strip PLIST_FILES= lib/dri/hybrid_drv_video.so +OPTIONS_DEFINE= WAYLAND X11 +OPTIONS_DEFAULT=WAYLAND X11 + +WAYLAND_LIB_DEPENDS= libva-wayland.so:multimedia/libva +WAYLAND_CONFIGURE_ENABLE= wayland + +X11_LIB_DEPENDS= libva-x11.so:multimedia/libva +X11_CONFIGURE_ENABLE= x11 + post-patch: @${REINPLACE_CMD} -e '/__linux__/d; /LINUX/d' \ ${WRKSRC}/src/vp9hdec/Makefile.am diff --git a/multimedia/libva-intel-media-driver/Makefile b/multimedia/libva-intel-media-driver/Makefile index 7f993401d06..83193c502ae 100644 --- a/multimedia/libva-intel-media-driver/Makefile +++ b/multimedia/libva-intel-media-driver/Makefile @@ -6,6 +6,9 @@ DISTVERSION= 18.4.1 CATEGORIES= multimedia PKGNAMEPREFIX= libva-intel- +PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ +PATCHFILES= 95549679029d.patch:-p1 + MAINTAINER= jbeich@FreeBSD.org COMMENT= VAAPI driver for Intel HD 5000 (Gen8) or newer @@ -32,12 +35,15 @@ CMAKE_ARGS= -DBUILD_TYPE:STRING="${CMAKE_BUILD_TYPE}" \ -DUFO_MARCH:STRING="${CPUTYPE}" PLIST_FILES= lib/dri/iHD_drv_video.so -OPTIONS_DEFINE= TEST +OPTIONS_DEFINE= TEST X11 +OPTIONS_DEFAULT=X11 # XXX Unbundle googletest TEST_CMAKE_BOOL= MEDIA_RUN_TEST_SUITE TEST_TEST_TARGET= RunULT +X11_LIB_DEPENDS= libva-x11.so:multimedia/libva + post-patch: @${REINPLACE_CMD} -e '/-D__linux__/d' \ ${WRKSRC}/media_driver/cmake/linux/media_compile_flags_linux.cmake @@ -49,4 +55,8 @@ post-patch: @${REINPLACE_CMD} -e '/__fastcall/d' \ ${WRKSRC}/media_driver/linux/common/cm/cm_mem_os.h +post-patch-X11-off: + @${REINPLACE_CMD} -i .nox11 '/find_package.*X11/d' \ + ${WRKSRC}/media_driver/media_top_cmake.cmake + .include diff --git a/multimedia/libva-intel-media-driver/distinfo b/multimedia/libva-intel-media-driver/distinfo index 590a6dc0941..9251115c888 100644 --- a/multimedia/libva-intel-media-driver/distinfo +++ b/multimedia/libva-intel-media-driver/distinfo @@ -1,3 +1,5 @@ TIMESTAMP = 1549187390 SHA256 (intel-media-driver-intel-media-18.4.1_GH0.tar.gz) = f04467e725a530c2fb80e081a45d5b7910d1b3ccbf89ff2d0b1ea7996dd93ce1 SIZE (intel-media-driver-intel-media-18.4.1_GH0.tar.gz) = 14657816 +SHA256 (95549679029d.patch) = 348ec62564031f994669da4f70c735061bbedbe7057db68185798826989cf75b +SIZE (95549679029d.patch) = 1005 diff --git a/multimedia/libva-utils/Makefile b/multimedia/libva-utils/Makefile index 28970528308..d9d19c97811 100644 --- a/multimedia/libva-utils/Makefile +++ b/multimedia/libva-utils/Makefile @@ -14,15 +14,15 @@ LIB_DEPENDS= libva.so:multimedia/libva \ libdrm.so:graphics/libdrm USES= autoreconf compiler:c++11-lang gmake libtool pkgconfig tar:bzip2 -USE_XORG= x11 xext xfixes + GNU_CONFIGURE= yes INSTALL_TARGET= install-strip USE_GITHUB= yes GH_ACCOUNT= intel -OPTIONS_DEFINE= DEBUG WAYLAND -OPTIONS_DEFAULT=WAYLAND +OPTIONS_DEFINE= DEBUG WAYLAND X11 +OPTIONS_DEFAULT=WAYLAND X11 WAYLAND_DESC= Support wayland protocol OPTIONS_SUB= yes @@ -32,4 +32,7 @@ DEBUG_CFLAGS_OFF= -DNDEBUG WAYLAND_CONFIGURE_ENABLE= wayland WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland +X11_CONFIGURE_ENABLE= x11 +X11_USE= XORG=x11,xext,xfixes + .include diff --git a/multimedia/libva-utils/files/patch-Makefile.am b/multimedia/libva-utils/files/patch-Makefile.am new file mode 100644 index 00000000000..62ae428f4ba --- /dev/null +++ b/multimedia/libva-utils/files/patch-Makefile.am @@ -0,0 +1,15 @@ +--- Makefile.am.orig 2019-02-01 23:11:33 UTC ++++ Makefile.am +@@ -24,10 +24,10 @@ ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} + + AUTOMAKE_OPTIONS = foreign + +-SUBDIRS = common decode encode vainfo videoprocess vendor/intel vendor/intel/sfcsample ++SUBDIRS = common decode encode vainfo videoprocess vendor/intel + + if USE_X11 +-SUBDIRS += putsurface ++SUBDIRS += putsurface vendor/intel/sfcsample + else + if USE_WAYLAND + SUBDIRS += putsurface diff --git a/multimedia/libva-utils/pkg-plist b/multimedia/libva-utils/pkg-plist index b5b71634152..1bada8e7b79 100644 --- a/multimedia/libva-utils/pkg-plist +++ b/multimedia/libva-utils/pkg-plist @@ -6,9 +6,9 @@ bin/jpegenc bin/loadjpeg bin/mpeg2vaenc bin/mpeg2vldemo -bin/putsurface +%%X11%%bin/putsurface %%WAYLAND%%bin/putsurface_wayland -bin/sfcsample +%%X11%%bin/sfcsample bin/vainfo bin/vavpp bin/vp8enc diff --git a/multimedia/minitube/Makefile b/multimedia/minitube/Makefile index 99510622a9a..595a3cd3951 100644 --- a/multimedia/minitube/Makefile +++ b/multimedia/minitube/Makefile @@ -11,7 +11,7 @@ COMMENT= TV-like client for YouTube LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING -USES= qmake qt:5 +USES= compiler:c++11-lang qmake qt:5 USE_GITHUB= yes GH_ACCOUNT= flaviotordini USE_GL= gl diff --git a/multimedia/rubygem-clutter-gstreamer/Makefile b/multimedia/rubygem-clutter-gstreamer/Makefile index e76b8e7b8e5..be21b520c53 100644 --- a/multimedia/rubygem-clutter-gstreamer/Makefile +++ b/multimedia/rubygem-clutter-gstreamer/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= clutter-gstreamer -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= multimedia rubygems MASTER_SITES= RG diff --git a/multimedia/rubygem-clutter-gstreamer/distinfo b/multimedia/rubygem-clutter-gstreamer/distinfo index 1db170221e4..2883b07b81e 100644 --- a/multimedia/rubygem-clutter-gstreamer/distinfo +++ b/multimedia/rubygem-clutter-gstreamer/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209322 -SHA256 (rubygem/clutter-gstreamer-3.3.3.gem) = dd897ecc50ecbef0fb51c423aaa19c7c041ee129531ed81c8b0112000c6e63f0 -SIZE (rubygem/clutter-gstreamer-3.3.3.gem) = 125440 +TIMESTAMP = 1552410037 +SHA256 (rubygem/clutter-gstreamer-3.3.4.gem) = 85f6c3ada7bf53955d648dec85c604c69db67f9fc95b39cbce34d964f6a17e2d +SIZE (rubygem/clutter-gstreamer-3.3.4.gem) = 125440 diff --git a/multimedia/rubygem-gstreamer/Makefile b/multimedia/rubygem-gstreamer/Makefile index edc1f8b95ae..93055e1d3e7 100644 --- a/multimedia/rubygem-gstreamer/Makefile +++ b/multimedia/rubygem-gstreamer/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= gstreamer -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= multimedia rubygems MASTER_SITES= RG diff --git a/multimedia/rubygem-gstreamer/distinfo b/multimedia/rubygem-gstreamer/distinfo index b961ead3315..b6d69df50ee 100644 --- a/multimedia/rubygem-gstreamer/distinfo +++ b/multimedia/rubygem-gstreamer/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209325 -SHA256 (rubygem/gstreamer-3.3.3.gem) = f1247153837caf9370fc20b8462f059e8e6ecf68c7df775a396a88b7f34322a3 -SIZE (rubygem/gstreamer-3.3.3.gem) = 30208 +TIMESTAMP = 1552410039 +SHA256 (rubygem/gstreamer-3.3.4.gem) = 4474ef8bfc02d9edd051553c5022966d318d5b25f3d26bde157c7cef0ca4133e +SIZE (rubygem/gstreamer-3.3.4.gem) = 30208 diff --git a/net-p2p/amule-devel/Makefile b/net-p2p/amule-devel/Makefile index f94a40df0ae..baa0f4a5e74 100644 --- a/net-p2p/amule-devel/Makefile +++ b/net-p2p/amule-devel/Makefile @@ -19,8 +19,8 @@ LIB_DEPENDS= libcryptopp.so:security/cryptopp CONFLICTS= amule-[0-9]* -USES= bison desktop-file-utils desktop-file-utils gmake \ - localbase:ldflags perl5 pkgconfig shebangfix tar:bzip2 +USES= bison compiler:c++11-lang desktop-file-utils desktop-file-utils \ + gmake localbase:ldflags perl5 pkgconfig shebangfix tar:bzip2 USE_PERL5= build USE_WX= 2.8 WX_CONF_ARGS= absolute diff --git a/net/measurement-kit/Makefile b/net/measurement-kit/Makefile index be40f29a515..8c7e23a9273 100644 --- a/net/measurement-kit/Makefile +++ b/net/measurement-kit/Makefile @@ -2,7 +2,7 @@ PORTNAME= measurement-kit DISTVERSIONPREFIX= v -DISTVERSION= 0.9.3 +DISTVERSION= 0.9.4 CATEGORIES= net devel MAINTAINER= egypcio@FreeBSD.org diff --git a/net/measurement-kit/distinfo b/net/measurement-kit/distinfo index a8afb7bd848..4984bca4434 100644 --- a/net/measurement-kit/distinfo +++ b/net/measurement-kit/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1550314557 -SHA256 (measurement-kit-measurement-kit-v0.9.3_GH0.tar.gz) = 6203be7b3a64d6dd5cd9ca630efbc06e1e413f65f6482dffb92ed70e91dde73b -SIZE (measurement-kit-measurement-kit-v0.9.3_GH0.tar.gz) = 700060 +TIMESTAMP = 1552393403 +SHA256 (measurement-kit-measurement-kit-v0.9.4_GH0.tar.gz) = d095c28fa7283c546dcf513b9c60156f5ab7690f33f2de346372cd5328072d36 +SIZE (measurement-kit-measurement-kit-v0.9.4_GH0.tar.gz) = 700157 diff --git a/net/mosquitto/Makefile b/net/mosquitto/Makefile index 4b390c5ef0a..7a440f5eff0 100644 --- a/net/mosquitto/Makefile +++ b/net/mosquitto/Makefile @@ -2,18 +2,17 @@ # $FreeBSD$ PORTNAME= mosquitto -PORTVERSION= 1.5.5 +PORTVERSION= 1.5.8 CATEGORIES= net MASTER_SITES= http://mosquitto.org/files/source/ MAINTAINER= joe@thrallingpenguin.com -COMMENT= Open-Source MQTT Broker +COMMENT= Open source MQTT broker LICENSE= EPL -LIB_DEPENDS= libcares.so:dns/c-ares \ - libuuid.so:misc/e2fsprogs-libuuid -BUILD_DEPENDS= xsltproc:textproc/libxslt +LIB_DEPENDS= libuuid.so:misc/e2fsprogs-libuuid +RUN_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss USES= cmake ssl USE_RC_SUBR= mosquitto @@ -24,23 +23,30 @@ USERS= nobody PLIST_SUB= PORTVERSION=${PORTVERSION} -OPTIONS_DEFINE= WS +OPTIONS_DEFINE= CARES WS +OPTIONS_DEFAULT= CARES + +CARES_LIB_DEPENDS= libcares.so:dns/c-ares +CARES_CMAKE_ON= -DWITH_SRV:BOOL=ON WS_DESC= MQTT over Websockets support WS_LIB_DEPENDS= libwebsockets.so:net/libwebsockets -WS_CMAKE_ON= -DWITH_WEBSOCKETS=ON +WS_CMAKE_ON= -DWITH_WEBSOCKETS:BOOL=ON post-patch: - @${REINPLACE_CMD} -e '45s,^,#include ,' \ - ${WRKSRC}/src/websockets.c @${REINPLACE_CMD} -e '/ldconfig/d' ${WRKSRC}/src/CMakeLists.txt \ ${WRKSRC}/lib/CMakeLists.txt ${WRKSRC}/lib/cpp/CMakeLists.txt @${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/CMakeLists.txt post-install: - ${MV} ${STAGEDIR}${ETCDIR}/mosquitto.conf ${STAGEDIR}${ETCDIR}/mosquitto.conf.sample - ${MV} ${STAGEDIR}${ETCDIR}/pwfile.example ${STAGEDIR}${ETCDIR}/pwfile.sample - ${MV} ${STAGEDIR}${ETCDIR}/pskfile.example ${STAGEDIR}${ETCDIR}/pskfile.sample - ${MV} ${STAGEDIR}${ETCDIR}/aclfile.example ${STAGEDIR}${ETCDIR}/aclfile.sample + ${SED} -e '/cafile/s,/usr/local,${LOCALBASE},' \ + ${STAGEDIR}${ETCDIR}/mosquitto.conf > \ + ${STAGEDIR}${ETCDIR}/mosquitto.conf.sample + ${MV} ${STAGEDIR}${ETCDIR}/pwfile.example \ + ${STAGEDIR}${ETCDIR}/pwfile.sample + ${MV} ${STAGEDIR}${ETCDIR}/pskfile.example \ + ${STAGEDIR}${ETCDIR}/pskfile.sample + ${MV} ${STAGEDIR}${ETCDIR}/aclfile.example \ + ${STAGEDIR}${ETCDIR}/aclfile.sample .include diff --git a/net/mosquitto/distinfo b/net/mosquitto/distinfo index 2eb26e8a4dc..fda2e31c2c3 100644 --- a/net/mosquitto/distinfo +++ b/net/mosquitto/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1545122205 -SHA256 (mosquitto-1.5.5.tar.gz) = fcdb47e340864c545146681af7253399cc292e41775afd76400fda5b0d23d668 -SIZE (mosquitto-1.5.5.tar.gz) = 431998 +TIMESTAMP = 1551386128 +SHA256 (mosquitto-1.5.8.tar.gz) = 78d7e70c3794dc3a1d484b4f2f8d3addebe9c2da3f5a1cebe557f7d13beb0da4 +SIZE (mosquitto-1.5.8.tar.gz) = 442834 diff --git a/net/mosquitto/files/patch-mosquitto.conf b/net/mosquitto/files/patch-mosquitto.conf index 39a0fef7cd6..e31c8f98455 100644 --- a/net/mosquitto/files/patch-mosquitto.conf +++ b/net/mosquitto/files/patch-mosquitto.conf @@ -1,4 +1,4 @@ ---- mosquitto.conf.orig 2018-08-16 16:05:26 UTC +--- mosquitto.conf.orig 2019-02-06 15:54:59 UTC +++ mosquitto.conf @@ -28,7 +28,7 @@ # This should be set to /var/run/mosquitto.pid if mosquitto is @@ -18,7 +18,7 @@ # The maximum number of QoS 1 and 2 messages currently inflight per # client. -@@ -160,7 +160,7 @@ +@@ -173,7 +173,7 @@ #bind_address # Port to use for the default listener. @@ -27,3 +27,12 @@ # The maximum number of client connections to allow. This is # a per listener setting. +@@ -224,7 +224,7 @@ + # containing the CA certificates. For capath to work correctly, the + # certificate files must have ".crt" as the file ending and you must run + # "openssl rehash " each time you add/remove a certificate. +-#cafile ++cafile /usr/local/share/certs/ca-root-nss.crt + #capath + + # Path to the PEM encoded server certificate. diff --git a/net/mosquitto/files/patch-src_mosquitto__passwd.c b/net/mosquitto/files/patch-src_mosquitto__passwd.c index bbd83b08020..9dd0659dd75 100644 --- a/net/mosquitto/files/patch-src_mosquitto__passwd.c +++ b/net/mosquitto/files/patch-src_mosquitto__passwd.c @@ -1,33 +1,20 @@ - lib/mosquitto_internal.h | 3 +++ - src/mosquitto_passwd.c | 4 ++-- - src/security_default.c | 2 +- - 3 files changed, 6 insertions(+), 3 deletions(-) - ---- src/mosquitto_passwd.c.orig 2018-10-11 00:27:05 UTC +--- src/mosquitto_passwd.c.orig 2019-02-28 17:18:59 UTC +++ src/mosquitto_passwd.c -@@ -17,6 +17,7 @@ Contributors: - #include "config.h" - - #include -+#include - #include - #include - #include -@@ -99,7 +100,7 @@ int output_new_password(FILE *fptr, const char *userna +@@ -100,7 +100,7 @@ int output_new_password(FILE *fptr, const char *userna unsigned char hash[EVP_MAX_MD_SIZE]; unsigned int hash_len; const EVP_MD *digest; -#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#ifdef HAVE_OPENSSL_OPAQUE_STRUCTS ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(HAVE_OPENSSL_OPAQUE_STRUCTS) EVP_MD_CTX context; #else EVP_MD_CTX *context; -@@ -126,7 +127,7 @@ int output_new_password(FILE *fptr, const char *userna +@@ -127,7 +127,7 @@ int output_new_password(FILE *fptr, const char *userna return 1; } -#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(HAVE_OPENSSL_OPAQUE_STRUCTS) EVP_MD_CTX_init(&context); EVP_DigestInit_ex(&context, digest, NULL); EVP_DigestUpdate(&context, password, strlen(password)); diff --git a/net/rubygem-fog-aws/Makefile b/net/rubygem-fog-aws/Makefile index edc7c6197bb..106a9751360 100644 --- a/net/rubygem-fog-aws/Makefile +++ b/net/rubygem-fog-aws/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= fog-aws -PORTVERSION= 3.3.0 +PORTVERSION= 3.4.0 CATEGORIES= net rubygems MASTER_SITES= RG diff --git a/net/rubygem-fog-aws/distinfo b/net/rubygem-fog-aws/distinfo index fa3c3145b8e..aaec22fdfdc 100644 --- a/net/rubygem-fog-aws/distinfo +++ b/net/rubygem-fog-aws/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1537456658 -SHA256 (rubygem/fog-aws-3.3.0.gem) = 9aa162ac84fbba48cda0a725000c7e0296ecf2781f102743cc73eeabc1ebf9fe -SIZE (rubygem/fog-aws-3.3.0.gem) = 542720 +TIMESTAMP = 1552404272 +SHA256 (rubygem/fog-aws-3.4.0.gem) = afb52d3e5e0a58b071fba24a1584e15fdf400eff7a78d364a69e7cab8ccad668 +SIZE (rubygem/fog-aws-3.4.0.gem) = 545280 diff --git a/net/socketw/files/patch-src_sw__ssl.cxx b/net/socketw/files/patch-src_sw__ssl.cxx new file mode 100644 index 00000000000..620a936bd27 --- /dev/null +++ b/net/socketw/files/patch-src_sw__ssl.cxx @@ -0,0 +1,83 @@ +--- src/sw_ssl.cxx.orig 2018-09-18 09:32:11 UTC ++++ src/sw_ssl.cxx +@@ -4,7 +4,7 @@ + // Started 020316 + // + // License: LGPL v2.1+ (see the file LICENSE) +-// (c)2002-2003 Anders Lindström ++// (c)2002-2003 Anders Lindström + + /*********************************************************************** + * This library is free software; you can redistribute it and/or * +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + + using namespace std; + +@@ -31,7 +32,25 @@ extern int close(int fd); + extern int fcntl(int fd, int cmd, long arg); + #endif + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + ++int X509_get_signature_nid(const X509* peer) ++{ ++ return OBJ_obj2nid(peer->sig_alg->algorithm); ++} ++int X509_certificate_type(const X509 *, const EVP_PKEY *pubkey) ++{ ++ return pubkey->type; ++} ++ ++int SSL_CTX_up_ref(SSL_CTX *ctx) ++{ ++ return ctx->references++; ++} ++ ++#endif ++ ++ + //==================================================================== + //== Helper functions + //==================================================================== +@@ -557,7 +576,8 @@ bool SWSSLSocket::get_peerCert_info(SWSSLSocket::peerC + info->version = X509_get_version(peer); + + // Signature algorithm +- int nid = OBJ_obj2nid(peer->sig_alg->algorithm); ++ ++ int nid = X509_get_signature_nid(peer); + if( nid != NID_undef ) + info->sgnAlgorithm = OBJ_nid2sn(nid); + else +@@ -566,7 +586,7 @@ bool SWSSLSocket::get_peerCert_info(SWSSLSocket::peerC + // Key algorithm + EVP_PKEY *pkey = X509_get_pubkey(peer); + if( pkey ){ +- info->keyAlgorithm = OBJ_nid2sn(pkey->type); ++ info->keyAlgorithm = OBJ_nid2sn(X509_certificate_type(peer, pkey)); + info->keySize = 8 * EVP_PKEY_size(pkey); + }else{ + info->keyAlgorithm = ""; +@@ -689,7 +709,8 @@ bool SWSSLSocket::check_cert(SWBaseError *error) + } + } + +- if( !(cert = BuildCertificate("SocketW session cert", NULL, NULL, evp_pkey)) ){ ++ char certificateName[22] = "SocketW session cert\0"; ++ if( !(cert = BuildCertificate(certificateName, NULL, NULL, evp_pkey)) ){ + handle_ERRerror(error, fatal, "SWSSLSocket::handle_crypto_data() "); + return false; + } +@@ -718,7 +739,7 @@ SWBaseSocket* SWSSLSocket::create(int socketdescriptor + // Copy CTX object pointer + remoteClass->ctx = ctx; + if( ctx ) +- ctx->references++; // We don't want our destructor to delete ctx if still in use ++ SSL_CTX_up_ref(ctx); + + remoteClass->have_cert = have_cert; // Do CTX have cert loaded? + diff --git a/ports-mgmt/Makefile b/ports-mgmt/Makefile index 2f352ebe80f..c86f47b99ce 100644 --- a/ports-mgmt/Makefile +++ b/ports-mgmt/Makefile @@ -47,6 +47,7 @@ SUBDIR += portell SUBDIR += portest SUBDIR += portfind + SUBDIR += portfmt SUBDIR += portgraph SUBDIR += portless SUBDIR += portlint diff --git a/ports-mgmt/portfmt/Makefile b/ports-mgmt/portfmt/Makefile new file mode 100644 index 00000000000..00c49db9a89 --- /dev/null +++ b/ports-mgmt/portfmt/Makefile @@ -0,0 +1,27 @@ +# $FreeBSD$ + +PORTNAME= portfmt +PORTVERSION= g20190312 +CATEGORIES= ports-mgmt + +MAINTAINER= tobik@FreeBSD.org +COMMENT= Format FreeBSD Ports Makefiles + +LICENSE= BSD2CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +USE_GITHUB= yes +GH_ACCOUNT= t6 +GH_TAGNAME= 139c92e5b9cf18218a7799fdd0e8adcf3dd3cd93 + +HAS_CONFIGURE= yes +CONFIGURE_ARGS= LDFLAGS="${LDFLAGS}" \ + PREFIX="${PREFIX}" +MAKE_ARGS= INSTALL_MAN="${INSTALL_MAN}" \ + INSTALL_PROGRAM="${INSTALL_PROGRAM}" +TEST_TARGET= test + +PLIST_FILES= bin/portfmt \ + man/man1/portfmt.1.gz + +.include diff --git a/ports-mgmt/portfmt/distinfo b/ports-mgmt/portfmt/distinfo new file mode 100644 index 00000000000..3ec0c89d8db --- /dev/null +++ b/ports-mgmt/portfmt/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1552368607 +SHA256 (t6-portfmt-g20190312-139c92e5b9cf18218a7799fdd0e8adcf3dd3cd93_GH0.tar.gz) = 72654304025929b18958d0558f25bfed9836b291dcaa325cef427dc1e49ea77c +SIZE (t6-portfmt-g20190312-139c92e5b9cf18218a7799fdd0e8adcf3dd3cd93_GH0.tar.gz) = 41013 diff --git a/ports-mgmt/portfmt/pkg-descr b/ports-mgmt/portfmt/pkg-descr new file mode 100644 index 00000000000..8c5a0fe2ff7 --- /dev/null +++ b/ports-mgmt/portfmt/pkg-descr @@ -0,0 +1,6 @@ +Portfmt is a tool for formatting FreeBSD Ports Collection Makefiles. + +For the time being portfmt concentrates on formatting individual +variables as such it does not move variables to preferred positions. + +WWW: https://github.com/t6/portfmt diff --git a/print/photoprint/Makefile b/print/photoprint/Makefile index d106c6d7d71..7827bb743f0 100644 --- a/print/photoprint/Makefile +++ b/print/photoprint/Makefile @@ -21,7 +21,7 @@ LIB_DEPENDS= libcups.so:print/cups \ libtiff.so:graphics/tiff GNU_CONFIGURE= yes -USES= desktop-file-utils gettext jpeg libtool localbase pkgconfig +USES= compiler:c++11-lang desktop-file-utils gettext jpeg libtool localbase pkgconfig USE_GNOME= cairo gdkpixbuf2 gtk20 USE_XORG= x11 USE_CXXSTD= gnu++98 diff --git a/security/krb5-115/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c b/security/krb5-115/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c index 55afe026808..7acc1a4ede2 100644 --- a/security/krb5-115/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c +++ b/security/krb5-115/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c @@ -1,6 +1,6 @@ ---- plugins/preauth/pkinit/pkinit_crypto_openssl.c.orig 2018-05-03 07:34:47.000000000 -0700 -+++ plugins/preauth/pkinit/pkinit_crypto_openssl.c 2018-06-12 18:38:30.978823000 -0700 -@@ -188,7 +188,8 @@ +--- plugins/preauth/pkinit/pkinit_crypto_openssl.c.orig 2018-11-01 23:51:07 UTC ++++ plugins/preauth/pkinit/pkinit_crypto_openssl.c +@@ -188,7 +188,8 @@ pkinit_pkcs11_code_to_text(int err); (*_x509_pp) = PKCS7_cert_from_signer_info(_p7,_si) #endif @@ -10,13 +10,14 @@ /* 1.1 standardizes constructor and destructor names, renaming * EVP_MD_CTX_{create,destroy} and deprecating ASN1_STRING_data. */ -@@ -3040,7 +3041,8 @@ +@@ -3040,7 +3041,9 @@ cleanup: return retval; } -#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if (defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L) && \ -+ !defined(LIBRESSL_VERSION_NUMBER) ++#if ((defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L) && \ ++ !defined(LIBRESSL_VERSION_NUMBER)) || \ ++ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x20900000L) /* * We need to decode DomainParameters from RFC 3279 section 2.3.3. We would diff --git a/security/krb5-115/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h b/security/krb5-115/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h index e364ee63217..0cc2e38a4f5 100644 --- a/security/krb5-115/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h +++ b/security/krb5-115/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h @@ -1,12 +1,13 @@ ---- plugins/preauth/pkinit/pkinit_crypto_openssl.h.orig 2018-05-03 07:34:47.000000000 -0700 -+++ plugins/preauth/pkinit/pkinit_crypto_openssl.h 2018-06-12 18:35:23.603366000 -0700 -@@ -46,7 +46,8 @@ +--- plugins/preauth/pkinit/pkinit_crypto_openssl.h.orig 2018-11-01 23:51:07 UTC ++++ plugins/preauth/pkinit/pkinit_crypto_openssl.h +@@ -46,7 +46,9 @@ #include #include -#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if (defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L) && \ -+ !defined(LIBRESSL_VERSION_NUMBER) ++#if ((defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L) && \ ++ !defined(LIBRESSL_VERSION_NUMBER)) || \ ++ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x20900000L) #include #else #include diff --git a/security/krb5-116/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c b/security/krb5-116/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c index 55afe026808..7acc1a4ede2 100644 --- a/security/krb5-116/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c +++ b/security/krb5-116/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c @@ -1,6 +1,6 @@ ---- plugins/preauth/pkinit/pkinit_crypto_openssl.c.orig 2018-05-03 07:34:47.000000000 -0700 -+++ plugins/preauth/pkinit/pkinit_crypto_openssl.c 2018-06-12 18:38:30.978823000 -0700 -@@ -188,7 +188,8 @@ +--- plugins/preauth/pkinit/pkinit_crypto_openssl.c.orig 2018-11-01 23:51:07 UTC ++++ plugins/preauth/pkinit/pkinit_crypto_openssl.c +@@ -188,7 +188,8 @@ pkinit_pkcs11_code_to_text(int err); (*_x509_pp) = PKCS7_cert_from_signer_info(_p7,_si) #endif @@ -10,13 +10,14 @@ /* 1.1 standardizes constructor and destructor names, renaming * EVP_MD_CTX_{create,destroy} and deprecating ASN1_STRING_data. */ -@@ -3040,7 +3041,8 @@ +@@ -3040,7 +3041,9 @@ cleanup: return retval; } -#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if (defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L) && \ -+ !defined(LIBRESSL_VERSION_NUMBER) ++#if ((defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L) && \ ++ !defined(LIBRESSL_VERSION_NUMBER)) || \ ++ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x20900000L) /* * We need to decode DomainParameters from RFC 3279 section 2.3.3. We would diff --git a/security/krb5-116/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h b/security/krb5-116/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h index e364ee63217..0cc2e38a4f5 100644 --- a/security/krb5-116/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h +++ b/security/krb5-116/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h @@ -1,12 +1,13 @@ ---- plugins/preauth/pkinit/pkinit_crypto_openssl.h.orig 2018-05-03 07:34:47.000000000 -0700 -+++ plugins/preauth/pkinit/pkinit_crypto_openssl.h 2018-06-12 18:35:23.603366000 -0700 -@@ -46,7 +46,8 @@ +--- plugins/preauth/pkinit/pkinit_crypto_openssl.h.orig 2018-11-01 23:51:07 UTC ++++ plugins/preauth/pkinit/pkinit_crypto_openssl.h +@@ -46,7 +46,9 @@ #include #include -#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if (defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L) && \ -+ !defined(LIBRESSL_VERSION_NUMBER) ++#if ((defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L) && \ ++ !defined(LIBRESSL_VERSION_NUMBER)) || \ ++ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x20900000L) #include #else #include diff --git a/security/krb5-devel/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c b/security/krb5-devel/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c index 0bd73cf499b..7acc1a4ede2 100644 --- a/security/krb5-devel/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c +++ b/security/krb5-devel/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c @@ -1,20 +1,23 @@ ---- plugins/preauth/pkinit/pkinit_crypto_openssl.c.orig 2016-12-01 22:31:25 UTC +--- plugins/preauth/pkinit/pkinit_crypto_openssl.c.orig 2018-11-01 23:51:07 UTC +++ plugins/preauth/pkinit/pkinit_crypto_openssl.c -@@ -191,7 +191,7 @@ pkinit_pkcs11_code_to_text(int err); +@@ -188,7 +188,8 @@ pkinit_pkcs11_code_to_text(int err); (*_x509_pp) = PKCS7_cert_from_signer_info(_p7,_si) #endif -#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) ++#if (defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER < 0x10100000L) || \ ++ defined(LIBRESSL_VERSION_NUMBER) /* 1.1 standardizes constructor and destructor names, renaming * EVP_MD_CTX_{create,destroy} and deprecating ASN1_STRING_data. */ -@@ -3059,7 +3059,7 @@ cleanup: +@@ -3040,7 +3041,9 @@ cleanup: return retval; } -#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) ++#if ((defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L) && \ ++ !defined(LIBRESSL_VERSION_NUMBER)) || \ ++ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x20900000L) /* * We need to decode DomainParameters from RFC 3279 section 2.3.3. We would diff --git a/security/krb5-devel/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h b/security/krb5-devel/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h index 1f5ae1b6158..0cc2e38a4f5 100644 --- a/security/krb5-devel/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h +++ b/security/krb5-devel/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.h @@ -1,11 +1,13 @@ ---- plugins/preauth/pkinit/pkinit_crypto_openssl.h.orig 2016-12-01 22:31:25 UTC +--- plugins/preauth/pkinit/pkinit_crypto_openssl.h.orig 2018-11-01 23:51:07 UTC +++ plugins/preauth/pkinit/pkinit_crypto_openssl.h -@@ -46,7 +46,7 @@ +@@ -46,7 +46,9 @@ #include #include -#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L ++#if ((defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10100000L) && \ ++ !defined(LIBRESSL_VERSION_NUMBER)) || \ ++ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x20900000L) #include #else #include diff --git a/security/openconnect-gui/Makefile b/security/openconnect-gui/Makefile index 1d375441203..2c78bb0c23a 100644 --- a/security/openconnect-gui/Makefile +++ b/security/openconnect-gui/Makefile @@ -3,8 +3,8 @@ PORTNAME= openconnect-gui PORTVERSION= 1.4.1 -PORTREVISION= 2 DISTVERSIONPREFIX=v +PORTREVISION= 2 CATEGORIES= security MAINTAINER= pkubaj@anongoth.pl @@ -18,10 +18,10 @@ LIB_DEPENDS= libgnutls.so:security/gnutls RUN_DEPENDS= openconnect:security/openconnect \ vpnc-scripts>=0:sysutils/vpnc-scripts +USES= cmake:insource compiler:c++11-lang pkgconfig qt:5 USE_GITHUB= yes GH_ACCOUNT= ${PORTNAME:C/-gui//} -USES= cmake:insource pkgconfig qt:5 USE_QT= buildtools_build concurrent core gui network qmake_build widgets CMAKE_ARGS+= -DCMAKE_BUILD_TYPE=Release PLIST_FILES= bin/openconnect-gui diff --git a/security/py-scp/Makefile b/security/py-scp/Makefile index 66ec7dace7e..073e9f73e11 100644 --- a/security/py-scp/Makefile +++ b/security/py-scp/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= scp -DISTVERSION= 0.13.0 +DISTVERSION= 0.13.1 CATEGORIES= security python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/security/py-scp/distinfo b/security/py-scp/distinfo index bf2956f6772..867c0000460 100644 --- a/security/py-scp/distinfo +++ b/security/py-scp/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1542704435 -SHA256 (scp-0.13.0.tar.gz) = cfcc275c249ae59480f88fa55c4bd7795ce8b48d3a9b8fd635d82958084b4124 -SIZE (scp-0.13.0.tar.gz) = 11323 +TIMESTAMP = 1552385048 +SHA256 (scp-0.13.1.tar.gz) = 4320ad188d3b8216352fb6c3647e0080ca14ced217735afc053256f86cd65159 +SIZE (scp-0.13.1.tar.gz) = 11430 diff --git a/security/py-yubikey-manager/Makefile b/security/py-yubikey-manager/Makefile index 5f78df5b042..ccfd9a30739 100644 --- a/security/py-yubikey-manager/Makefile +++ b/security/py-yubikey-manager/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= yubikey-manager -PORTVERSION= 2.0.0 +PORTVERSION= 2.1.0 CATEGORIES= security python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/security/py-yubikey-manager/distinfo b/security/py-yubikey-manager/distinfo index 608e3f91fac..27c5842ccab 100644 --- a/security/py-yubikey-manager/distinfo +++ b/security/py-yubikey-manager/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1547631549 -SHA256 (yubikey-manager-2.0.0.tar.gz) = e95b4c4e956e105780e59ca2e4f159b4e974da38cdc810d4157e8d979ebf66f4 -SIZE (yubikey-manager-2.0.0.tar.gz) = 97689 +TIMESTAMP = 1552394111 +SHA256 (yubikey-manager-2.1.0.tar.gz) = d59d5cd9b5b040077ef7741250476d8583bf961519b6576af163022315ab3a87 +SIZE (yubikey-manager-2.1.0.tar.gz) = 132797 diff --git a/security/yubikey-manager-qt/Makefile b/security/yubikey-manager-qt/Makefile index d360d25e389..de507bb5ac9 100644 --- a/security/yubikey-manager-qt/Makefile +++ b/security/yubikey-manager-qt/Makefile @@ -14,11 +14,11 @@ LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}yubikey-manager>0:security/py-yubikey-manager@${PY_FLAVOR} \ pyotherside-qt5>0:devel/pyotherside-qt5 - RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}yubikey-manager>0:security/py-yubikey-manager@${PY_FLAVOR} \ pyotherside-qt5>0:devel/pyotherside-qt5 -USES= gl pkgconfig python:3.5+ qt:5 qmake shebangfix +USES= compiler:c++11-lang gl pkgconfig python:3.5+ qt:5 qmake \ + shebangfix USE_GL= gl USE_QT= core declarative graphicaleffects gui network quickcontrols \ quickcontrols2 svg widgets buildtools_build diff --git a/security/yubioath-desktop/Makefile b/security/yubioath-desktop/Makefile index 23dfcc465e3..da76780d348 100644 --- a/security/yubioath-desktop/Makefile +++ b/security/yubioath-desktop/Makefile @@ -19,7 +19,8 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}yubikey-manager>=0.7.0:security/py-yubikey-m pcscd:devel/pcsc-lite \ swig30>0:devel/swig30 -USES= desktop-file-utils gl python:3.5+ qmake qt:5 shebangfix ssl +USES= compiler:c++11-lang desktop-file-utils gl python:3.5+ qmake qt:5 \ + shebangfix ssl USE_GL= gl USE_QT= core declarative gui network quickcontrols svg widgets buildtools_build diff --git a/shells/fish/files/patch-cmake_Install.cmake b/shells/fish/files/patch-cmake_Install.cmake index ed75de06a5c..1e63bfd091b 100644 --- a/shells/fish/files/patch-cmake_Install.cmake +++ b/shells/fish/files/patch-cmake_Install.cmake @@ -1,15 +1,28 @@ ---- cmake/Install.cmake.orig 2018-12-29 16:18:12 UTC +--- cmake/Install.cmake.orig 2019-02-19 13:39:17 UTC +++ cmake/Install.cmake -@@ -113,7 +113,7 @@ INSTALL(FILES share/config.fish +@@ -53,9 +53,7 @@ ENDIF() + # Define a function to help us create directories. + FUNCTION(FISH_CREATE_DIRS) + FOREACH(dir ${ARGV}) +- IF(NOT EXISTS ${CMAKE_INSTALL_PREFIX}/${dir}) +- INSTALL(DIRECTORY DESTINATION ${dir}) +- ENDIF() ++ INSTALL(DIRECTORY DESTINATION ${dir}) + ENDFOREACH(dir) + ENDFUNCTION(FISH_CREATE_DIRS) + +@@ -113,9 +111,9 @@ INSTALL(FILES share/config.fish # -$v $(INSTALL) -m 755 -d $(DESTDIR)$(extra_completionsdir) # -$v $(INSTALL) -m 755 -d $(DESTDIR)$(extra_functionsdir) # -$v $(INSTALL) -m 755 -d $(DESTDIR)$(extra_confdir) -FISH_CREATE_DIRS(${rel_datadir}/pkgconfig) -+FISH_CREATE_DIRS(${rel_datadir}/../libdata/pkgconfig) # Don't try too hard to create these directories as they may be outside our writeable area # https://github.com/Homebrew/homebrew-core/pull/2813 ++FISH_TRY_CREATE_DIRS(${rel_datadir}/../libdata/pkgconfig) FISH_TRY_CREATE_DIRS(${extra_completionsdir} ${extra_functionsdir} ${extra_confdir}) -@@ -132,7 +132,7 @@ ADD_CUSTOM_COMMAND(OUTPUT fish.pc + + # @echo "Installing pkgconfig file" +@@ -132,7 +130,7 @@ ADD_CUSTOM_COMMAND(OUTPUT fish.pc ADD_CUSTOM_TARGET(build_fish_pc ALL DEPENDS fish.pc) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/fish.pc diff --git a/shells/ksh93/Makefile b/shells/ksh93/Makefile index 22868dd0f83..b99d099f66b 100644 --- a/shells/ksh93/Makefile +++ b/shells/ksh93/Makefile @@ -26,6 +26,8 @@ LICENSE= EPL USE_HARDENING= pie:off relro:off +BROKEN_aarch64= Fails to compile: needs sbrk + CONFLICTS= ksh93-devel-* OPTIONS_DEFINE= EXAMPLES STATIC @@ -40,8 +42,6 @@ KSHVERSION= 2012-08-01 STATIC_MAKE_ENV= LDFLAGS+=-static -BROKEN_aarch64= Fails to compile: needs sbrk - post-patch: @${REINPLACE_CMD} -e 's|SF_FLAGS|SFIO_FLAGS|g' ${WRKSRC}/src/lib/libast/include/sfio*.h ${WRKSRC}/src/lib/libast/sfio/*.c diff --git a/sysutils/digdag/Makefile b/sysutils/digdag/Makefile index d2817d81dfc..5a7a4784f49 100644 --- a/sysutils/digdag/Makefile +++ b/sysutils/digdag/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= digdag -DISTVERSION= 0.9.34 +DISTVERSION= 0.9.35 CATEGORIES= sysutils java MASTER_SITES= https://dl.bintray.com/digdag/maven/ \ LOCAL/ehaupt diff --git a/sysutils/digdag/distinfo b/sysutils/digdag/distinfo index acd0de0169e..2f2a0c01c8c 100644 --- a/sysutils/digdag/distinfo +++ b/sysutils/digdag/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1551349674 -SHA256 (digdag-0.9.34.jar) = 7d36427fa04fb88ba4ac6194d117a5c0a451e7ad36b02556915d009cd6c24de3 -SIZE (digdag-0.9.34.jar) = 34074578 +TIMESTAMP = 1552405341 +SHA256 (digdag-0.9.35.jar) = 9d2e69a9f604c2eecc5759c6d2ca32bb33ddbe0f47eac1ce79788b09f106600d +SIZE (digdag-0.9.35.jar) = 34084107 diff --git a/sysutils/dsblogoutmgr/Makefile b/sysutils/dsblogoutmgr/Makefile index 544138fe610..37c481748ba 100644 --- a/sysutils/dsblogoutmgr/Makefile +++ b/sysutils/dsblogoutmgr/Makefile @@ -1,8 +1,7 @@ # $FreeBSD$ PORTNAME= dsblogoutmgr -PORTVERSION= 1.3 -PORTREVISION= 1 +PORTVERSION= 1.3.1 CATEGORIES= sysutils MASTER_SITES= http://freeshell.de/~mk/download/ @@ -12,7 +11,7 @@ COMMENT= Graphical logout manager LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -USES= gl qmake qt:5 tar:tgz +USES= compiler:c++11-lang gl qmake qt:5 tar:tgz USE_GL= gl USE_QT= buildtools_build core gui linguisttools_build widgets diff --git a/sysutils/dsblogoutmgr/distinfo b/sysutils/dsblogoutmgr/distinfo index 1b9f6d0fcc0..1a66c85f0b6 100644 --- a/sysutils/dsblogoutmgr/distinfo +++ b/sysutils/dsblogoutmgr/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1545084141 -SHA256 (dsblogoutmgr-1.3.tgz) = b712f7efeb0195f02a1b55547fe4a9e8bf192e4ad61d5202d6e256f4c2914816 -SIZE (dsblogoutmgr-1.3.tgz) = 18031 +TIMESTAMP = 1552345392 +SHA256 (dsblogoutmgr-1.3.1.tgz) = 88b198728f0e44734717b06baaf4b3fd55a6b43f1db83136e0aae68f5b02fa27 +SIZE (dsblogoutmgr-1.3.1.tgz) = 18034 diff --git a/sysutils/glogg/Makefile b/sysutils/glogg/Makefile index 4f420fdfddb..0b3a7ad13ba 100644 --- a/sysutils/glogg/Makefile +++ b/sysutils/glogg/Makefile @@ -15,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING LIB_DEPENDS= libboost_program_options.so:devel/boost-libs -USES= qmake desktop-file-utils qt:5 +USES= compiler:c++11-lang desktop-file-utils qmake qt:5 USE_QT= core gui widgets dbus buildtools_build LDFLAGS+= -Wl,--as-needed # prevents stray USE_GL=gl, see bug#224488 diff --git a/sysutils/kdirstat/Makefile b/sysutils/kdirstat/Makefile index 5ca4b146beb..ec03bdc669d 100644 --- a/sysutils/kdirstat/Makefile +++ b/sysutils/kdirstat/Makefile @@ -13,7 +13,8 @@ COMMENT= KDE utility that sums up disk usage for directory trees LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING -USES= cmake cpe desktop-file-utils gettext-tools kde:5 qt:5 tar:bzip2 +USES= cmake compiler:c++11-lang cpe desktop-file-utils gettext-tools \ + kde:5 qt:5 tar:bzip2 WRKSRC= ${WRKDIR}/jeromerobert-k4dirstat-0fd87f361645 diff --git a/sysutils/krename/Makefile b/sysutils/krename/Makefile index afdda6ca83f..823ca13ac62 100644 --- a/sysutils/krename/Makefile +++ b/sysutils/krename/Makefile @@ -17,7 +17,7 @@ LIB_DEPENDS= libtag.so:audio/taglib \ libpodofo.so:graphics/podofo \ libfreetype.so:print/freetype2 -USES= cmake gettext kde:5 qt:5 tar:xz +USES= cmake compiler:c++11-lang gettext kde:5 qt:5 tar:xz USE_KDE= auth bookmarks codecs completion config configwidgets \ coreaddons crash i18n iconthemes itemviews jobwidgets \ js kio service solid widgetsaddons xmlgui diff --git a/sysutils/py-psutil/Makefile b/sysutils/py-psutil/Makefile index a1d13c6f959..858778ec850 100644 --- a/sysutils/py-psutil/Makefile +++ b/sysutils/py-psutil/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= psutil -PORTVERSION= 5.6.0 +PORTVERSION= 5.6.1 CATEGORIES= sysutils python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/sysutils/py-psutil/distinfo b/sysutils/py-psutil/distinfo index b6c8208c354..4c64c89519c 100644 --- a/sysutils/py-psutil/distinfo +++ b/sysutils/py-psutil/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1551888553 -SHA256 (psutil-5.6.0.tar.gz) = dca71c08335fbfc6929438fe3a502f169ba96dd20e50b3544053d6be5cb19d82 -SIZE (psutil-5.6.0.tar.gz) = 426596 +TIMESTAMP = 1552404254 +SHA256 (psutil-5.6.1.tar.gz) = fa0a570e0a30b9dd618bffbece590ae15726b47f9f1eaf7518dfb35f4d7dcd21 +SIZE (psutil-5.6.1.tar.gz) = 427472 diff --git a/sysutils/sysadm-client/Makefile b/sysutils/sysadm-client/Makefile index 859ae202c2e..4b7d2bac948 100644 --- a/sysutils/sysadm-client/Makefile +++ b/sysutils/sysadm-client/Makefile @@ -13,8 +13,8 @@ LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/../LICENSE WRKSRC_SUBDIR= src-qt5 +USES= compiler:c++11-lang gmake pkgconfig qmake ssl qt:5 tar:xz USE_QT= core buildtools_build gui network qmake websockets widgets svg concurrent -USES= gmake pkgconfig qt:5 tar:xz qmake ssl USE_GL+= gl MAKE_ARGS= PREFIX=${STAGEDIR}${PREFIX} diff --git a/sysutils/sysadm/Makefile b/sysutils/sysadm/Makefile index f805f2e512e..a91fb45c2ff 100644 --- a/sysutils/sysadm/Makefile +++ b/sysutils/sysadm/Makefile @@ -13,8 +13,8 @@ LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/../LICENSE WRKSRC_SUBDIR= src +USES= compiler:c++11-lang pkgconfig qmake qt:5 ssl tar:xz USE_QT= concurrent core network buildtools qmake gui websockets sql -USES= pkgconfig qt:5 tar:xz qmake ssl MAKE_ARGS= PREFIX=${STAGEDIR}${PREFIX} USE_GITHUB= yes diff --git a/sysutils/twmn/Makefile b/sysutils/twmn/Makefile index a7ff393b42b..289dd3d6f1b 100644 --- a/sysutils/twmn/Makefile +++ b/sysutils/twmn/Makefile @@ -13,7 +13,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE LIB_DEPENDS= libboost_system.so:devel/boost-libs -USES= qmake qt:5 +USES= compiler:c++11-lang qmake qt:5 USE_GITHUB= yes GH_ACCOUNT= sboli GH_TAGNAME= 5b92ac5 diff --git a/sysutils/xen-tools/Makefile b/sysutils/xen-tools/Makefile index 507b946376a..3eb7d071782 100644 --- a/sysutils/xen-tools/Makefile +++ b/sysutils/xen-tools/Makefile @@ -3,7 +3,7 @@ PORTNAME= xen PKGNAMESUFFIX= -tools PORTVERSION= 4.11.1 -PORTREVISION= 0 +PORTREVISION= 1 CATEGORIES= sysutils emulators MASTER_SITES= http://downloads.xenproject.org/release/xen/${PORTVERSION}/ @@ -23,6 +23,7 @@ DOCS_BUILD_DEPENDS=markdown:textproc/markdown OPTIONS_DEFINE= DOCS SPICE OPTIONS_DEFAULT= DOCS +OPTIONS_SUB= yes SPICE_DESC= Enable SPICE protocol for QEMU SPICE_CONFIGURE_WITH= extra-qemuu-configure-args="--enable-spice" @@ -49,7 +50,8 @@ EXTRA_PATCHES+= ${FILESDIR}/0001-docs-use-the-make-wildcard-function-instead-of- # Fix hvmloader build with LLVM LD EXTRA_PATCHES+= ${FILESDIR}/0001-hvmloader-fix-build-with-LLVM-Linker.patch:-p1 -CONFIGURE_ARGS+= --with-system-seabios=${LOCALBASE}/share/seabios/bios.bin +CONFIGURE_ARGS+= --with-system-seabios=${LOCALBASE}/share/seabios/bios.bin \ + --mandir=${MANPREFIX}/man SHEBANG_FILES= tools/misc/xen-ringwatch \ tools/misc/xencov_split \ diff --git a/sysutils/xen-tools/pkg-plist b/sysutils/xen-tools/pkg-plist index 515d2c3d1a1..2fbbc9714d4 100644 --- a/sysutils/xen-tools/pkg-plist +++ b/sysutils/xen-tools/pkg-plist @@ -555,24 +555,24 @@ sbin/xl %%PORTDOCS%%%%DOCSDIR%%/html/misc/xenstore.txt %%PORTDOCS%%%%DOCSDIR%%/html/misc/xl-psr.html %%PORTDOCS%%%%DOCSDIR%%/html/misc/xsm-flask.txt -share/man/man1/xenstore-chmod.1 -share/man/man1/xenstore-ls.1 -share/man/man1/xenstore.1 -share/man/man1/xentop.1 -share/man/man1/xentrace_format.1 -share/man/man1/xl.1 -share/man/man5/xl-disk-configuration.5 -share/man/man5/xl-network-configuration.5 -share/man/man5/xl.cfg.5 -share/man/man5/xl.conf.5 -share/man/man5/xlcpupool.cfg.5 -share/man/man7/xen-pci-device-reservations.7 -share/man/man7/xen-pv-channel.7 -share/man/man7/xen-tscmode.7 -share/man/man7/xen-vtpm.7 -share/man/man7/xen-vtpmmgr.7 -share/man/man7/xl-numa-placement.7 -share/man/man8/xentrace.8 +%%DOCS%%man/man1/xenstore-chmod.1.gz +%%DOCS%%man/man1/xenstore-ls.1.gz +%%DOCS%%man/man1/xenstore.1.gz +%%DOCS%%man/man1/xentop.1.gz +%%DOCS%%man/man1/xentrace_format.1.gz +%%DOCS%%man/man1/xl.1.gz +%%DOCS%%man/man5/xl-disk-configuration.5.gz +%%DOCS%%man/man5/xl-network-configuration.5.gz +%%DOCS%%man/man5/xl.cfg.5.gz +%%DOCS%%man/man5/xl.conf.5.gz +%%DOCS%%man/man5/xlcpupool.cfg.5.gz +%%DOCS%%man/man7/xen-pci-device-reservations.7.gz +%%DOCS%%man/man7/xen-pv-channel.7.gz +%%DOCS%%man/man7/xen-tscmode.7.gz +%%DOCS%%man/man7/xen-vtpm.7.gz +%%DOCS%%man/man7/xen-vtpmmgr.7.gz +%%DOCS%%man/man7/xl-numa-placement.7.gz +%%DOCS%%man/man8/xentrace.8.gz share/qemu-xen/qemu/QEMU,cgthree.bin share/qemu-xen/qemu/QEMU,tcx.bin share/qemu-xen/qemu/acpi-dsdt.aml diff --git a/textproc/dikt/Makefile b/textproc/dikt/Makefile index 00c080a575b..b7fe81791e0 100644 --- a/textproc/dikt/Makefile +++ b/textproc/dikt/Makefile @@ -14,7 +14,7 @@ COMMENT= Dictionary for KDE LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -USES= cmake kde:5 qt:5 tar:txz +USES= cmake compiler:c++11-lang kde:5 qt:5 tar:txz USE_KDE= auth bookmarks codecs completion config configwidgets coreaddons dbusaddons guiaddons i18n \ iconthemes itemviews jobwidgets kio service solid widgetsaddons xmlgui USE_QT= concurrent core dbus gui network printsupport svg widgets xml \ diff --git a/textproc/py-jsonslicer/Makefile b/textproc/py-jsonslicer/Makefile index 3ff226f067f..da68c307de0 100644 --- a/textproc/py-jsonslicer/Makefile +++ b/textproc/py-jsonslicer/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= jsonslicer -PORTVERSION= 0.1.3 +PORTVERSION= 0.1.4 CATEGORIES= textproc python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/textproc/py-jsonslicer/distinfo b/textproc/py-jsonslicer/distinfo index 074edc27e28..c1073c157d0 100644 --- a/textproc/py-jsonslicer/distinfo +++ b/textproc/py-jsonslicer/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1551980899 -SHA256 (jsonslicer-0.1.3.tar.gz) = 1cc9a731bdce316afcf04e938e959b7d0b7620bf580dcb1d98872603bbb365b8 -SIZE (jsonslicer-0.1.3.tar.gz) = 29100 +TIMESTAMP = 1552397648 +SHA256 (jsonslicer-0.1.4.tar.gz) = b2db201723f954887ae45c87ec27a97f219c6dd2db1796543e27d44044f8a240 +SIZE (jsonslicer-0.1.4.tar.gz) = 22911 diff --git a/textproc/py-nltk/Makefile b/textproc/py-nltk/Makefile index a41c2b3dba5..3991cfdeab6 100644 --- a/textproc/py-nltk/Makefile +++ b/textproc/py-nltk/Makefile @@ -1,8 +1,7 @@ # $FreeBSD$ PORTNAME= nltk -PORTVERSION= 3.2.1 -PORTREVISION= 1 +PORTVERSION= 3.4 PORTEPOCH= 2 CATEGORIES= textproc python MASTER_SITES= CHEESESHOP @@ -13,11 +12,20 @@ COMMENT= Natural language toolkit written in python LICENSE= APACHE20 -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}tkinter>=0:x11-toolkits/py-tkinter@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}tkinter>=0:x11-toolkits/py-tkinter@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}yaml>=3.09:devel/py-yaml@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}sqlite3>=0:databases/py-sqlite3@${PY_FLAVOR} -USES= python +USES= python zip USE_PYTHON= distutils autoplist -.include +NO_ARCH= yes + +.include + +.if ${PYTHON_REL} < 3400 +RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}singledispatch>0:devel/py-singledispatch@${PY_FLAVOR} +.endif + +.include diff --git a/textproc/py-nltk/distinfo b/textproc/py-nltk/distinfo index 1ac826636b4..114859f83b3 100644 --- a/textproc/py-nltk/distinfo +++ b/textproc/py-nltk/distinfo @@ -1,2 +1,3 @@ -SHA256 (nltk-3.2.1.tar.gz) = d5533b2d7106ba33d1431a3e77b903c58f07433f0ea8f7a7bc9af2ea2d5c7d6a -SIZE (nltk-3.2.1.tar.gz) = 1121639 +TIMESTAMP = 1552416797 +SHA256 (nltk-3.4.zip) = 286f6797204ffdb52525a1d21ec0a221ec68b8e3fa4f2d25f412ac8e63c70e8d +SIZE (nltk-3.4.zip) = 1432008 diff --git a/textproc/re-flex/Makefile b/textproc/re-flex/Makefile index a095e7e12c7..0ebc8de246d 100644 --- a/textproc/re-flex/Makefile +++ b/textproc/re-flex/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= re-flex -PORTVERSION= 1.1.2 +PORTVERSION= 1.1.3 DISTVERSIONPREFIX= v CATEGORIES= textproc diff --git a/textproc/re-flex/distinfo b/textproc/re-flex/distinfo index 32d8d2b1945..38f1fb52e96 100644 --- a/textproc/re-flex/distinfo +++ b/textproc/re-flex/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552039367 -SHA256 (Genivia-RE-flex-v1.1.2_GH0.tar.gz) = 89022d215be79e5b9d846711de44f7ac5176bab959f7c6ff456f00714c5783c3 -SIZE (Genivia-RE-flex-v1.1.2_GH0.tar.gz) = 3935483 +TIMESTAMP = 1552397938 +SHA256 (Genivia-RE-flex-v1.1.3_GH0.tar.gz) = f46b87db2c39cee8f36282a69b3b63559189bc84c8af5f893ef381b575ed35cd +SIZE (Genivia-RE-flex-v1.1.3_GH0.tar.gz) = 3969994 diff --git a/www/cutelyst/Makefile b/www/cutelyst/Makefile index b5da25feaf7..78b27ef328f 100644 --- a/www/cutelyst/Makefile +++ b/www/cutelyst/Makefile @@ -11,7 +11,7 @@ COMMENT= C++/Qt web framework LICENSE= LGPL21 LICENSE_FILE= ${WRKSRC}/COPYING -USES= cmake localbase qt:5 +USES= cmake compiler:c++11-lang localbase qt:5 USE_GITHUB= yes USE_LDCONFIG= yes USE_QT= qmake_build buildtools_build \ diff --git a/www/fancybox/Makefile b/www/fancybox/Makefile index 8ff256cd7d3..7a3ac3d591c 100644 --- a/www/fancybox/Makefile +++ b/www/fancybox/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= fancybox -PORTVERSION= 3.5.6 +PORTVERSION= 3.5.7 DISTVERSIONPREFIX= v CATEGORIES= www diff --git a/www/fancybox/distinfo b/www/fancybox/distinfo index 91dbbad9fbb..3532ea788ea 100644 --- a/www/fancybox/distinfo +++ b/www/fancybox/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1546255411 -SHA256 (fancyapps-fancybox-v3.5.6_GH0.tar.gz) = 2ea652bff5b443f12a50d9a2aab5a2476d182dec5fb4bb79eb5361f745db4cdb -SIZE (fancyapps-fancybox-v3.5.6_GH0.tar.gz) = 130748 +TIMESTAMP = 1552404232 +SHA256 (fancyapps-fancybox-v3.5.7_GH0.tar.gz) = 223941bcc9b2a5f2309f7eb555309aa79ded875a236bbd0bd3306e90cc5546fa +SIZE (fancyapps-fancybox-v3.5.7_GH0.tar.gz) = 130785 diff --git a/www/flashplayer/Makefile b/www/flashplayer/Makefile index 02037b15a07..72630ec4e8c 100644 --- a/www/flashplayer/Makefile +++ b/www/flashplayer/Makefile @@ -2,7 +2,7 @@ PORTNAME= flashplayer PORTVERSION= 32.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= www multimedia DISTFILES= diff --git a/www/linux-flashplayer/Makefile b/www/linux-flashplayer/Makefile index f2bc57436c7..775539cb405 100644 --- a/www/linux-flashplayer/Makefile +++ b/www/linux-flashplayer/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= flashplayer -PORTVERSION= 32.0.0.142 +PORTVERSION= 32.0.0.156 CATEGORIES= www multimedia linux MASTER_SITES= https://fpdownload.macromedia.com/get/flashplayer/pdc/${PORTVERSION}/ PKGNAMEPREFIX= linux- diff --git a/www/linux-flashplayer/distinfo b/www/linux-flashplayer/distinfo index 2afc8c62695..ee1118d0050 100644 --- a/www/linux-flashplayer/distinfo +++ b/www/linux-flashplayer/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1549984770 -SHA256 (flashplayer/32.0.0.142/flash_player_npapi_linux.i386.tar.gz) = 35b625cc2540590ecc226b7625a332096038770f969fd2173df0b04e961be0c1 -SIZE (flashplayer/32.0.0.142/flash_player_npapi_linux.i386.tar.gz) = 8530350 +TIMESTAMP = 1552414478 +SHA256 (flashplayer/32.0.0.156/flash_player_npapi_linux.i386.tar.gz) = 1e52104984f8c05774d0a93819103671693e9ea1c2bab492060910bd69e60d0f +SIZE (flashplayer/32.0.0.156/flash_player_npapi_linux.i386.tar.gz) = 8530759 diff --git a/www/node10/Makefile b/www/node10/Makefile index a9740b7ead5..3c933819037 100644 --- a/www/node10/Makefile +++ b/www/node10/Makefile @@ -13,7 +13,6 @@ COMMENT= V8 JavaScript for client and server LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -BROKEN_powerpc64= fails to build: KeyError: 'action' BROKEN_SSL= openssl libressl libressl-devel BROKEN_SSL_REASON= Node.js 10.x LTS requires OpenSSL 1.1.x or the BUNDLED_SSL option enabled ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 powerpc64 @@ -32,6 +31,7 @@ OPTIONS_EXCLUDE_aarch64= DTRACE # dt_modtext:/usr/src/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c(820): arm not implemented OPTIONS_EXCLUDE_armv6= DTRACE OPTIONS_EXCLUDE_armv7= DTRACE +OPTIONS_EXCLUDE_powerpc64= DTRACE BUNDLED_SSL_DESC= Use node.js's bundled OpenSSL implementation BUNDLED_SSL_USES_OFF= ssl @@ -61,7 +61,9 @@ SHEBANG_FILES= tools/specialize_node_d.py tools/genv8constants.py PREFIX_RELDEST= ${PREFIX:S,^${DESTDIR},,} REINPLACE_ARGS= -i '' -MAKE_ENV+= CC.host=${CC} CXX.host=${CXX} LINK.host=${CXX} LINK.target=${CXX} +MAKE_ENV+= CC.host=${CC} CFLAGS.host="${CFLAGS}" \ + CXX.host=${CXX} CXXFLAGS.host="${CXXFLAGS}" \ + LINK.host=${CXX} LDFLAGS.host="${LDFLAGS}" LIB_DEPENDS+= libcares.so:dns/c-ares\ libuv.so:devel/libuv \ diff --git a/www/node6/Makefile b/www/node6/Makefile index 6afd18fc3f1..b51747f6959 100644 --- a/www/node6/Makefile +++ b/www/node6/Makefile @@ -59,7 +59,9 @@ SHEBANG_FILES= tools/specialize_node_d.py tools/genv8constants.py PREFIX_RELDEST= ${PREFIX:S,^${DESTDIR},,} REINPLACE_ARGS= -i '' -MAKE_ENV+= CC.host=${CC} CXX.host=${CXX} LINK.host=${CXX} LINK.target=${CXX} +MAKE_ENV+= CC.host=${CC} CFLAGS.host="${CFLAGS}" \ + CXX.host=${CXX} CXXFLAGS.host="${CXXFLAGS}" \ + LINK.host=${CXX} LDFLAGS.host="${LDFLAGS}" LIB_DEPENDS+= libcares.so:dns/c-ares\ libuv.so:devel/libuv diff --git a/www/node8/Makefile b/www/node8/Makefile index 90bd1ff6261..0e61c537dc7 100644 --- a/www/node8/Makefile +++ b/www/node8/Makefile @@ -59,7 +59,9 @@ SHEBANG_FILES= tools/specialize_node_d.py tools/genv8constants.py PREFIX_RELDEST= ${PREFIX:S,^${DESTDIR},,} REINPLACE_ARGS= -i '' -MAKE_ENV+= CC.host=${CC} CXX.host=${CXX} LINK.host=${CXX} LINK.target=${CXX} +MAKE_ENV+= CC.host=${CC} CFLAGS.host="${CFLAGS}" \ + CXX.host=${CXX} CXXFLAGS.host="${CXXFLAGS}" \ + LINK.host=${CXX} LDFLAGS.host="${LDFLAGS}" LIB_DEPENDS+= libcares.so:dns/c-ares\ libuv.so:devel/libuv \ diff --git a/www/p5-AnyEvent-SCGI/Makefile b/www/p5-AnyEvent-SCGI/Makefile index 2db67a7a485..6db24aa94ee 100644 --- a/www/p5-AnyEvent-SCGI/Makefile +++ b/www/p5-AnyEvent-SCGI/Makefile @@ -10,11 +10,15 @@ PKGNAMEPREFIX= p5- MAINTAINER= kuriyama@FreeBSD.org COMMENT= Perl extension for Event based SCGI server +LICENSE= ART10 GPLv1+ +LICENSE_COMB= dual + BUILD_DEPENDS= ${RUN_DEPENDS} RUN_DEPENDS= \ p5-AnyEvent>=5.2:devel/p5-AnyEvent USES= perl5 USE_PERL5= configure +NO_ARCH= yes .include diff --git a/x11-toolkits/rubygem-gdk3/Makefile b/x11-toolkits/rubygem-gdk3/Makefile index cd1decf9cad..4415a7f178d 100644 --- a/x11-toolkits/rubygem-gdk3/Makefile +++ b/x11-toolkits/rubygem-gdk3/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= gdk3 -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= x11-toolkits rubygems MASTER_SITES= RG diff --git a/x11-toolkits/rubygem-gdk3/distinfo b/x11-toolkits/rubygem-gdk3/distinfo index b4d03205622..29bc6d0c26a 100644 --- a/x11-toolkits/rubygem-gdk3/distinfo +++ b/x11-toolkits/rubygem-gdk3/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209328 -SHA256 (rubygem/gdk3-3.3.3.gem) = fde3a5d73eb3b5984894cba5b2a11b8673932e44dd292157e98407cb9e89b76c -SIZE (rubygem/gdk3-3.3.3.gem) = 35840 +TIMESTAMP = 1552410042 +SHA256 (rubygem/gdk3-3.3.4.gem) = 96711c4003dd7e7eb14850611e8e04a21ad67af23ea9b82b029576c52c985ac7 +SIZE (rubygem/gdk3-3.3.4.gem) = 35840 diff --git a/x11-toolkits/rubygem-gtk2/Makefile b/x11-toolkits/rubygem-gtk2/Makefile index 4cb3c54daa1..f8c5ce747cc 100644 --- a/x11-toolkits/rubygem-gtk2/Makefile +++ b/x11-toolkits/rubygem-gtk2/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= gtk2 -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= x11-toolkits rubygems MASTER_SITES= RG diff --git a/x11-toolkits/rubygem-gtk2/distinfo b/x11-toolkits/rubygem-gtk2/distinfo index 89b5ee54008..8aa4c65d411 100644 --- a/x11-toolkits/rubygem-gtk2/distinfo +++ b/x11-toolkits/rubygem-gtk2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209332 -SHA256 (rubygem/gtk2-3.3.3.gem) = 547fef6d4d82f47d566165fa09a8cf6f9d2505b589e735f75b00c5003ef52269 -SIZE (rubygem/gtk2-3.3.3.gem) = 476160 +TIMESTAMP = 1552410046 +SHA256 (rubygem/gtk2-3.3.4.gem) = 31fc8c72c8c73aa6b513ce4225fcb08657b487bc2191eceb57f61c178dede108 +SIZE (rubygem/gtk2-3.3.4.gem) = 476160 diff --git a/x11-toolkits/rubygem-gtk3/Makefile b/x11-toolkits/rubygem-gtk3/Makefile index 57f640dd4ed..f611d23fc5d 100644 --- a/x11-toolkits/rubygem-gtk3/Makefile +++ b/x11-toolkits/rubygem-gtk3/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= gtk3 -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= x11-toolkits rubygems MASTER_SITES= RG diff --git a/x11-toolkits/rubygem-gtk3/distinfo b/x11-toolkits/rubygem-gtk3/distinfo index e0d15029c17..f88732d8d2f 100644 --- a/x11-toolkits/rubygem-gtk3/distinfo +++ b/x11-toolkits/rubygem-gtk3/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209337 -SHA256 (rubygem/gtk3-3.3.3.gem) = 60b4ba054afd456b5f744588910bbd83c91e95171b2fb752779c49cea9bd08a5 -SIZE (rubygem/gtk3-3.3.3.gem) = 865792 +TIMESTAMP = 1552410051 +SHA256 (rubygem/gtk3-3.3.4.gem) = 4ffa0d7f3aa460088efb590d4bbc318057b9d654315f32763f0aaad72474fe57 +SIZE (rubygem/gtk3-3.3.4.gem) = 865792 diff --git a/x11-toolkits/rubygem-gtksourceview2/Makefile b/x11-toolkits/rubygem-gtksourceview2/Makefile index e65273d09a2..2cd717e06e4 100644 --- a/x11-toolkits/rubygem-gtksourceview2/Makefile +++ b/x11-toolkits/rubygem-gtksourceview2/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= gtksourceview2 -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= x11-toolkits rubygems MASTER_SITES= RG diff --git a/x11-toolkits/rubygem-gtksourceview2/distinfo b/x11-toolkits/rubygem-gtksourceview2/distinfo index 9b3a799fb74..98da592a88f 100644 --- a/x11-toolkits/rubygem-gtksourceview2/distinfo +++ b/x11-toolkits/rubygem-gtksourceview2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209341 -SHA256 (rubygem/gtksourceview2-3.3.3.gem) = ca4fd16b32add79da01d9d8786ac3a00a242062513955c8c659c564dc54e3de8 -SIZE (rubygem/gtksourceview2-3.3.3.gem) = 25088 +TIMESTAMP = 1552410054 +SHA256 (rubygem/gtksourceview2-3.3.4.gem) = 2b23f8c8ce052ebc1d75b1e3b39f93a521f00c35a55f469649cd49c3d852794a +SIZE (rubygem/gtksourceview2-3.3.4.gem) = 25088 diff --git a/x11-toolkits/rubygem-gtksourceview3/Makefile b/x11-toolkits/rubygem-gtksourceview3/Makefile index 0c6eb5535b3..236e16d7c9d 100644 --- a/x11-toolkits/rubygem-gtksourceview3/Makefile +++ b/x11-toolkits/rubygem-gtksourceview3/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= gtksourceview3 -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= x11-toolkits rubygems MASTER_SITES= RG diff --git a/x11-toolkits/rubygem-gtksourceview3/distinfo b/x11-toolkits/rubygem-gtksourceview3/distinfo index a3996d411c5..15a4f167072 100644 --- a/x11-toolkits/rubygem-gtksourceview3/distinfo +++ b/x11-toolkits/rubygem-gtksourceview3/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209343 -SHA256 (rubygem/gtksourceview3-3.3.3.gem) = 60b990d5bc1eeaee0c3b27b1203532a3629ec4602d3adb3de67610f4722235fa -SIZE (rubygem/gtksourceview3-3.3.3.gem) = 17408 +TIMESTAMP = 1552410057 +SHA256 (rubygem/gtksourceview3-3.3.4.gem) = 8049b5a7a24f7112d41836624e4a6703b1fb91f166e5536728e31ab8593ac379 +SIZE (rubygem/gtksourceview3-3.3.4.gem) = 17408 diff --git a/x11-toolkits/rubygem-pango/Makefile b/x11-toolkits/rubygem-pango/Makefile index 8a8090a701f..45a1a01061b 100644 --- a/x11-toolkits/rubygem-pango/Makefile +++ b/x11-toolkits/rubygem-pango/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= pango -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= x11-toolkits rubygems MASTER_SITES= RG diff --git a/x11-toolkits/rubygem-pango/distinfo b/x11-toolkits/rubygem-pango/distinfo index bc4d8060fb7..756f56b7f6b 100644 --- a/x11-toolkits/rubygem-pango/distinfo +++ b/x11-toolkits/rubygem-pango/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209346 -SHA256 (rubygem/pango-3.3.3.gem) = adeeafdd2a9643223ff23847cb845961e1ee8fc046980d8318f50b7d43d3f7f2 -SIZE (rubygem/pango-3.3.3.gem) = 27648 +TIMESTAMP = 1552410059 +SHA256 (rubygem/pango-3.3.4.gem) = e25b752129abda45ff25ad3dcbb23266e80e09ed579fa061460175c4b7380a0f +SIZE (rubygem/pango-3.3.4.gem) = 27648 diff --git a/x11-toolkits/rubygem-poppler/Makefile b/x11-toolkits/rubygem-poppler/Makefile index ee4d47901cf..87b79f7366c 100644 --- a/x11-toolkits/rubygem-poppler/Makefile +++ b/x11-toolkits/rubygem-poppler/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= poppler -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= x11-toolkits rubygems MASTER_SITES= RG diff --git a/x11-toolkits/rubygem-poppler/distinfo b/x11-toolkits/rubygem-poppler/distinfo index 39cec2cb159..cdbf398bc95 100644 --- a/x11-toolkits/rubygem-poppler/distinfo +++ b/x11-toolkits/rubygem-poppler/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209349 -SHA256 (rubygem/poppler-3.3.3.gem) = 3f1cad256a17b2f2c97a65aedd9eaa065da8b2a48f7e1cb23c9fa53064e44b7c -SIZE (rubygem/poppler-3.3.3.gem) = 95232 +TIMESTAMP = 1552410062 +SHA256 (rubygem/poppler-3.3.4.gem) = 7264e50217c694da96d38271cd0607d5e09db7498b564b507a9701f3788230d4 +SIZE (rubygem/poppler-3.3.4.gem) = 95232 diff --git a/x11-toolkits/rubygem-vte/Makefile b/x11-toolkits/rubygem-vte/Makefile index 7b672b968ac..c62e26ff2dd 100644 --- a/x11-toolkits/rubygem-vte/Makefile +++ b/x11-toolkits/rubygem-vte/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= vte -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= x11-toolkits rubygems MASTER_SITES= RG diff --git a/x11-toolkits/rubygem-vte/distinfo b/x11-toolkits/rubygem-vte/distinfo index a148c03b8c1..8acd0f8768a 100644 --- a/x11-toolkits/rubygem-vte/distinfo +++ b/x11-toolkits/rubygem-vte/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209352 -SHA256 (rubygem/vte-3.3.3.gem) = 91ad35314246370faad9f0e09abef73a54b6c6510b317aacb526c55973ee4698 -SIZE (rubygem/vte-3.3.3.gem) = 24064 +TIMESTAMP = 1552410064 +SHA256 (rubygem/vte-3.3.4.gem) = edfb92222eb5ff84c710b1069467842ab692aae78283b6462ca78845c34e3f3d +SIZE (rubygem/vte-3.3.4.gem) = 24064 diff --git a/x11-toolkits/rubygem-vte3/Makefile b/x11-toolkits/rubygem-vte3/Makefile index 0e0fbb175af..414cfc1361c 100644 --- a/x11-toolkits/rubygem-vte3/Makefile +++ b/x11-toolkits/rubygem-vte3/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= vte3 -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= x11-toolkits rubygems MASTER_SITES= RG diff --git a/x11-toolkits/rubygem-vte3/distinfo b/x11-toolkits/rubygem-vte3/distinfo index 1451c8def33..5f5b5d09258 100644 --- a/x11-toolkits/rubygem-vte3/distinfo +++ b/x11-toolkits/rubygem-vte3/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552209354 -SHA256 (rubygem/vte3-3.3.3.gem) = c7274a6110959d77faf344e01b3fa91c4abaab15b4cd9a4b35b8176b70ba8c91 -SIZE (rubygem/vte3-3.3.3.gem) = 18944 +TIMESTAMP = 1552410067 +SHA256 (rubygem/vte3-3.3.4.gem) = e957908968533d6a194c8612a129501e720a79ebd536e8ac50e6289490e74b07 +SIZE (rubygem/vte3-3.3.4.gem) = 18944 diff --git a/x11/hs-xmobar/Makefile b/x11/hs-xmobar/Makefile index 0992d0d2062..1111cda7a6d 100644 --- a/x11/hs-xmobar/Makefile +++ b/x11/hs-xmobar/Makefile @@ -3,7 +3,7 @@ PORTNAME= xmobar PORTVERSION= 0.29.4 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= x11 haskell MAINTAINER= haskell@FreeBSD.org @@ -11,9 +11,9 @@ COMMENT= Minimalistic text-based status bar LICENSE= BSD3CLAUSE -USE_CABAL= HTTP>=4000.2.4 async extensible-exceptions mtl>=2.1 regex-compat\ - X11>=1.6.1 parsec-numbers -USE_XORG= xpm +USE_CABAL= HTTP>=4000.2.4 async extensible-exceptions http-conduit \ + mtl>=2.1 regex-compat X11>=1.6.1 parsec-numbers +USE_XORG= x11 xext xinerama xpm xrandr xrender EXECUTABLE= xmobar @@ -30,6 +30,7 @@ FLAGS_DEFAULT= XFT UTF8 XFT_DESC= Use Xft to render text (UTF-8 support included) XFT_FLAG_ENABLE= with_xft XFT_FLAG_CABAL= utf8-string X11-xft>=0.2 +XFT_USE_XORG= xft UTF8_DESC= UTF-8 support UTF8_FLAG_ENABLE= with_utf8 @@ -50,7 +51,8 @@ DATEZONE_FLAG_CABAL= timezone-olson>=0.1 timezone-series>=0.1 THREADED_DESC= Use threaded runtime THREADED_FLAG_ENABLE= with_threaded -# Disable unsupported options +# Disable unsupported options and enable new default ones +FLAGS_ENABLE= with_weather FLAGS_DISABLE= with_mpris with_dbus with_iwlib with_alsa post-extract: diff --git a/x11/rubygem-gnome2/Makefile b/x11/rubygem-gnome2/Makefile index 94f40fbff68..b536414379d 100644 --- a/x11/rubygem-gnome2/Makefile +++ b/x11/rubygem-gnome2/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= gnome2 -PORTVERSION= 3.3.3 +PORTVERSION= 3.3.4 CATEGORIES= x11 gnome rubygems PKGNAMEPREFIX= rubygem-