From owner-svn-src-vendor@freebsd.org Wed May 16 08:43:09 2018 Return-Path: Delivered-To: svn-src-vendor@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 29F1AEAEFC0; Wed, 16 May 2018 08:43:09 +0000 (UTC) (envelope-from slavash@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id CE7377E501; Wed, 16 May 2018 08:43:08 +0000 (UTC) (envelope-from slavash@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id ADF9517F80; Wed, 16 May 2018 08:43:08 +0000 (UTC) (envelope-from slavash@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w4G8h8Hd050801; Wed, 16 May 2018 08:43:08 GMT (envelope-from slavash@FreeBSD.org) Received: (from slavash@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w4G8h8oW050800; Wed, 16 May 2018 08:43:08 GMT (envelope-from slavash@FreeBSD.org) Message-Id: <201805160843.w4G8h8oW050800@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: slavash set sender to slavash@FreeBSD.org using -f From: Slava Shwartsman Date: Wed, 16 May 2018 08:43:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r333668 - vendor/tcpdump/dist X-SVN-Group: vendor X-SVN-Commit-Author: slavash X-SVN-Commit-Paths: vendor/tcpdump/dist X-SVN-Commit-Revision: 333668 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 May 2018 08:43:09 -0000 Author: slavash Date: Wed May 16 08:43:08 2018 New Revision: 333668 URL: https://svnweb.freebsd.org/changeset/base/333668 Log: Vendor import two upstream commits: c1bb8784abd3ca978e376b0d10e324db0491237b 9c4af7213cc2543a1f5586d8f2c19f86aa0cbe72 When using tcpdump -I -i wlanN and wlanN is not a monitor mode VAP, tcpdump will print an error message saying rfmon is not supported. Give a concise explanation as to how one might solve this problem by creating a monitor mode VAP. Approved by: hselasky (mentor), kib (mentor) Sponsored by: Mellanox Technologies Modified: vendor/tcpdump/dist/tcpdump.c Modified: vendor/tcpdump/dist/tcpdump.c ============================================================================== --- vendor/tcpdump/dist/tcpdump.c Wed May 16 06:52:08 2018 (r333667) +++ vendor/tcpdump/dist/tcpdump.c Wed May 16 08:43:08 2018 (r333668) @@ -108,6 +108,10 @@ The Regents of the University of California. All righ #endif /* HAVE_CAP_NG_H */ #endif /* HAVE_LIBCAP_NG */ +#ifdef __FreeBSD__ +#include +#endif /* __FreeBSD__ */ + #include "netdissect.h" #include "interface.h" #include "addrtoname.h" @@ -1044,6 +1048,30 @@ open_interface(const char *device, netdissect_options } else if (status == PCAP_ERROR_PERM_DENIED && *cp != '\0') error("%s: %s\n(%s)", device, pcap_statustostr(status), cp); +#ifdef __FreeBSD__ + else if (status == PCAP_ERROR_RFMON_NOTSUP && + strncmp(device, "wlan", 4) == 0) { + char parent[8], newdev[8]; + char sysctl[32]; + size_t s = sizeof(parent); + + snprintf(sysctl, sizeof(sysctl), + "net.wlan.%d.%%parent", atoi(device + 4)); + sysctlbyname(sysctl, parent, &s, NULL, 0); + strlcpy(newdev, device, sizeof(newdev)); + /* Suggest a new wlan device. */ + /* FIXME: incrementing the index this way is not going to work well + * when the index is 9 or greater but the only consequence in this + * specific case would be an error message that looks a bit odd. + */ + newdev[strlen(newdev)-1]++; + error("%s is not a monitor mode VAP\n" + "To create a new monitor mode VAP use:\n" + " ifconfig %s create wlandev %s wlanmode monitor\n" + "and use %s as the tcpdump interface", + device, newdev, parent, newdev); + } +#endif else error("%s: %s", device, pcap_statustostr(status)); From owner-svn-src-vendor@freebsd.org Wed May 16 13:59:59 2018 Return-Path: Delivered-To: svn-src-vendor@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 042CCEE4252; Wed, 16 May 2018 13:59:59 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9EC6F6A06E; Wed, 16 May 2018 13:59:58 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7940E1B0FC; Wed, 16 May 2018 13:59:58 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w4GDxwhq007098; Wed, 16 May 2018 13:59:58 GMT (envelope-from des@FreeBSD.org) Received: (from des@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w4GDxwvr007097; Wed, 16 May 2018 13:59:58 GMT (envelope-from des@FreeBSD.org) Message-Id: <201805161359.w4GDxwvr007097@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: des set sender to des@FreeBSD.org using -f From: =?UTF-8?Q?Dag-Erling_Sm=c3=b8rgrav?= Date: Wed, 16 May 2018 13:59:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r333676 - vendor-crypto/openssh/dist/openbsd-compat X-SVN-Group: vendor-crypto X-SVN-Commit-Author: des X-SVN-Commit-Paths: vendor-crypto/openssh/dist/openbsd-compat X-SVN-Commit-Revision: 333676 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 May 2018 13:59:59 -0000 Author: des Date: Wed May 16 13:59:58 2018 New Revision: 333676 URL: https://svnweb.freebsd.org/changeset/base/333676 Log: Import upstream commit cfb1d9b, which fixes tunnel forwarding. Modified: vendor-crypto/openssh/dist/openbsd-compat/port-net.c Modified: vendor-crypto/openssh/dist/openbsd-compat/port-net.c ============================================================================== --- vendor-crypto/openssh/dist/openbsd-compat/port-net.c Wed May 16 13:52:24 2018 (r333675) +++ vendor-crypto/openssh/dist/openbsd-compat/port-net.c Wed May 16 13:59:58 2018 (r333676) @@ -185,7 +185,7 @@ sys_tun_open(int tun, int mode, char **ifname) else debug("%s: %s mode %d fd %d", __func__, ifr.ifr_name, mode, fd); - if (ifname != NULL && (*ifname = strdup(ifr.ifr_name))) + if (ifname != NULL && (*ifname = strdup(ifr.ifr_name)) == NULL) goto failed; return (fd); @@ -272,7 +272,7 @@ sys_tun_open(int tun, int mode, char **ifname) goto failed; } - if (ifname != NULL && (*ifname = strdup(ifr.ifr_name))) + if (ifname != NULL && (*ifname = strdup(ifr.ifr_name)) == NULL) goto failed; close(sock); From owner-svn-src-vendor@freebsd.org Thu May 17 20:57:31 2018 Return-Path: Delivered-To: svn-src-vendor@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2DBFAEE0392; Thu, 17 May 2018 20:57:31 +0000 (UTC) (envelope-from cognet@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C57FE75D1A; Thu, 17 May 2018 20:57:30 +0000 (UTC) (envelope-from cognet@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A27646A22; Thu, 17 May 2018 20:57:30 +0000 (UTC) (envelope-from cognet@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w4HKvU1Y063258; Thu, 17 May 2018 20:57:30 GMT (envelope-from cognet@FreeBSD.org) Received: (from cognet@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w4HKvUW0063256; Thu, 17 May 2018 20:57:30 GMT (envelope-from cognet@FreeBSD.org) Message-Id: <201805172057.w4HKvUW0063256@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cognet set sender to cognet@FreeBSD.org using -f From: Olivier Houchard Date: Thu, 17 May 2018 20:57:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r333762 - in vendor-sys/ck/dist: include src X-SVN-Group: vendor-sys X-SVN-Commit-Author: cognet X-SVN-Commit-Paths: in vendor-sys/ck/dist: include src X-SVN-Commit-Revision: 333762 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 May 2018 20:57:31 -0000 Author: cognet Date: Thu May 17 20:57:30 2018 New Revision: 333762 URL: https://svnweb.freebsd.org/changeset/base/333762 Log: Import CK as of commit deca119d14bfffd440770eb67cbdbeaf7b57eb7b This brings us ck_epoch_deferred, which is used by the new facility epoch(9). Modified: vendor-sys/ck/dist/include/ck_epoch.h vendor-sys/ck/dist/src/ck_epoch.c Modified: vendor-sys/ck/dist/include/ck_epoch.h ============================================================================== --- vendor-sys/ck/dist/include/ck_epoch.h Thu May 17 19:57:07 2018 (r333761) +++ vendor-sys/ck/dist/include/ck_epoch.h Thu May 17 20:57:30 2018 (r333762) @@ -266,6 +266,7 @@ void ck_epoch_register(ck_epoch_t *, ck_epoch_record_t void ck_epoch_unregister(ck_epoch_record_t *); bool ck_epoch_poll(ck_epoch_record_t *); +bool ck_epoch_poll_deferred(struct ck_epoch_record *record, ck_stack_t *deferred); void ck_epoch_synchronize(ck_epoch_record_t *); void ck_epoch_synchronize_wait(ck_epoch_t *, ck_epoch_wait_cb_t *, void *); void ck_epoch_barrier(ck_epoch_record_t *); Modified: vendor-sys/ck/dist/src/ck_epoch.c ============================================================================== --- vendor-sys/ck/dist/src/ck_epoch.c Thu May 17 19:57:07 2018 (r333761) +++ vendor-sys/ck/dist/src/ck_epoch.c Thu May 17 20:57:30 2018 (r333762) @@ -349,7 +349,7 @@ ck_epoch_scan(struct ck_epoch *global, } static void -ck_epoch_dispatch(struct ck_epoch_record *record, unsigned int e) +ck_epoch_dispatch(struct ck_epoch_record *record, unsigned int e, ck_stack_t *deferred) { unsigned int epoch = e & (CK_EPOCH_LENGTH - 1); ck_stack_entry_t *head, *next, *cursor; @@ -362,7 +362,10 @@ ck_epoch_dispatch(struct ck_epoch_record *record, unsi ck_epoch_entry_container(cursor); next = CK_STACK_NEXT(cursor); - entry->function(entry); + if (deferred != NULL) + ck_stack_push_spnc(deferred, &entry->stack_entry); + else + entry->function(entry); i++; } @@ -390,7 +393,7 @@ ck_epoch_reclaim(struct ck_epoch_record *record) unsigned int epoch; for (epoch = 0; epoch < CK_EPOCH_LENGTH; epoch++) - ck_epoch_dispatch(record, epoch); + ck_epoch_dispatch(record, epoch, NULL); return; } @@ -551,7 +554,7 @@ ck_epoch_barrier_wait(struct ck_epoch_record *record, * is far from ideal too. */ bool -ck_epoch_poll(struct ck_epoch_record *record) +ck_epoch_poll_deferred(struct ck_epoch_record *record, ck_stack_t *deferred) { bool active; unsigned int epoch; @@ -572,7 +575,7 @@ ck_epoch_poll(struct ck_epoch_record *record) if (active == false) { record->epoch = epoch; for (epoch = 0; epoch < CK_EPOCH_LENGTH; epoch++) - ck_epoch_dispatch(record, epoch); + ck_epoch_dispatch(record, epoch, deferred); return true; } @@ -580,6 +583,13 @@ ck_epoch_poll(struct ck_epoch_record *record) /* If an active thread exists, rely on epoch observation. */ (void)ck_pr_cas_uint(&global->epoch, epoch, epoch + 1); - ck_epoch_dispatch(record, epoch + 1); + ck_epoch_dispatch(record, epoch + 1, deferred); return true; +} + +bool +ck_epoch_poll(struct ck_epoch_record *record) +{ + + return ck_epoch_poll_deferred(record, NULL); } From owner-svn-src-vendor@freebsd.org Thu May 17 20:59:19 2018 Return-Path: Delivered-To: svn-src-vendor@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 81CF3EE0444; Thu, 17 May 2018 20:59:19 +0000 (UTC) (envelope-from cognet@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3022A75E8D; Thu, 17 May 2018 20:59:19 +0000 (UTC) (envelope-from cognet@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E80616A23; Thu, 17 May 2018 20:59:18 +0000 (UTC) (envelope-from cognet@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w4HKxIgn063369; Thu, 17 May 2018 20:59:18 GMT (envelope-from cognet@FreeBSD.org) Received: (from cognet@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w4HKxIW3063368; Thu, 17 May 2018 20:59:18 GMT (envelope-from cognet@FreeBSD.org) Message-Id: <201805172059.w4HKxIW3063368@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cognet set sender to cognet@FreeBSD.org using -f From: Olivier Houchard Date: Thu, 17 May 2018 20:59:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r333763 - vendor-sys/ck/20180517 X-SVN-Group: vendor-sys X-SVN-Commit-Author: cognet X-SVN-Commit-Paths: vendor-sys/ck/20180517 X-SVN-Commit-Revision: 333763 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 May 2018 20:59:19 -0000 Author: cognet Date: Thu May 17 20:59:18 2018 New Revision: 333763 URL: https://svnweb.freebsd.org/changeset/base/333763 Log: Tag import as of commit deca119d14bfffd440770eb67cbdbeaf7b57eb7b. Added: vendor-sys/ck/20180517/ - copied from r333762, vendor-sys/ck/dist/ From owner-svn-src-vendor@freebsd.org Fri May 18 04:06:37 2018 Return-Path: Delivered-To: svn-src-vendor@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CF959EE8BAE; Fri, 18 May 2018 04:06:36 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8083A84509; Fri, 18 May 2018 04:06:36 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6181C1304B; Fri, 18 May 2018 04:06:36 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w4I46akH080893; Fri, 18 May 2018 04:06:36 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w4I46ZlL080890; Fri, 18 May 2018 04:06:35 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201805180406.w4I46ZlL080890@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Fri, 18 May 2018 04:06:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r333779 - in vendor/xz/dist: . src/common src/liblzma/api src/liblzma/api/lzma src/liblzma/common src/liblzma/lzma src/liblzma/rangecoder src/xz src/xzdec X-SVN-Group: vendor X-SVN-Commit-Author: delphij X-SVN-Commit-Paths: in vendor/xz/dist: . src/common src/liblzma/api src/liblzma/api/lzma src/liblzma/common src/liblzma/lzma src/liblzma/rangecoder src/xz src/xzdec X-SVN-Commit-Revision: 333779 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 May 2018 04:06:37 -0000 Author: delphij Date: Fri May 18 04:06:35 2018 New Revision: 333779 URL: https://svnweb.freebsd.org/changeset/base/333779 Log: Vendor import of xz-5.2.4 (trimmed). Modified: vendor/xz/dist/COPYING vendor/xz/dist/ChangeLog vendor/xz/dist/README vendor/xz/dist/THANKS vendor/xz/dist/src/common/tuklib_integer.h vendor/xz/dist/src/liblzma/api/lzma.h vendor/xz/dist/src/liblzma/api/lzma/base.h vendor/xz/dist/src/liblzma/api/lzma/container.h vendor/xz/dist/src/liblzma/api/lzma/index.h vendor/xz/dist/src/liblzma/api/lzma/version.h vendor/xz/dist/src/liblzma/common/alone_decoder.c vendor/xz/dist/src/liblzma/common/auto_decoder.c vendor/xz/dist/src/liblzma/common/common.c vendor/xz/dist/src/liblzma/common/index_decoder.c vendor/xz/dist/src/liblzma/common/stream_decoder.c vendor/xz/dist/src/liblzma/lzma/lzma_decoder.c vendor/xz/dist/src/liblzma/rangecoder/range_common.h vendor/xz/dist/src/xz/file_io.c vendor/xz/dist/src/xz/list.c vendor/xz/dist/src/xz/xz.1 vendor/xz/dist/src/xzdec/xzdec.1 Modified: vendor/xz/dist/COPYING ============================================================================== --- vendor/xz/dist/COPYING Fri May 18 03:38:17 2018 (r333778) +++ vendor/xz/dist/COPYING Fri May 18 04:06:35 2018 (r333779) @@ -47,7 +47,7 @@ XZ Utils Licensing naturally it is not legally required. Here is an example of a good notice to put into "about box" or into documentation: - This software includes code from XZ Utils . + This software includes code from XZ Utils . The following license texts are included in the following files: - COPYING.LGPLv2.1: GNU Lesser General Public License version 2.1 Modified: vendor/xz/dist/ChangeLog ============================================================================== --- vendor/xz/dist/ChangeLog Fri May 18 03:38:17 2018 (r333778) +++ vendor/xz/dist/ChangeLog Fri May 18 04:06:35 2018 (r333779) @@ -1,3 +1,284 @@ +commit b5be61cc06088bb07f488f9baf7d447ff47b37c1 +Author: Lasse Collin +Date: 2018-04-29 19:00:06 +0300 + + Bump version and soname for 5.2.4. + + src/liblzma/Makefile.am | 2 +- + src/liblzma/api/lzma/version.h | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +commit c47fa6d06745bb2e99866e76b81ac7a9c5a8bfec +Author: Lasse Collin +Date: 2018-04-29 18:48:00 +0300 + + extra/scanlzma: Fix compiler warnings. + + extra/scanlzma/scanlzma.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +commit 7b350fe21aa4fd6495a3b6188a40e3f1ae7c0edf +Author: Lasse Collin +Date: 2018-04-29 18:15:37 +0300 + + Add NEWS for 5.2.4. + + NEWS | 27 +++++++++++++++++++++++++++ + 1 file changed, 27 insertions(+) + +commit 5801591162a280aa52d156dfde42c531ec7fd8b6 +Author: Lasse Collin +Date: 2018-02-06 19:36:30 +0200 + + Update THANKS. + + THANKS | 2 ++ + 1 file changed, 2 insertions(+) + +commit c4a616f4536146f8906e1b4412eefeec07b28fae +Author: Ben Boeckel +Date: 2018-01-29 13:58:18 -0500 + + nothrow: use noexcept for C++11 and newer + + In C++11, the `throw()` specifier is deprecated and `noexcept` is + preffered instead. + + src/liblzma/api/lzma.h | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +commit 0b8947782ff3c5ef830a7f85412e44dcf3cdeb77 +Author: Lasse Collin +Date: 2018-02-06 18:02:48 +0200 + + liblzma: Remove incorrect #ifdef from range_common.h. + + In most cases it was harmless but it could affect some + custom build systems. + + Thanks to Pippijn van Steenhoven. + + src/liblzma/rangecoder/range_common.h | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +commit 48f3b9f73ffea7f55d5678997aba0e79d2e82168 +Author: Lasse Collin +Date: 2018-01-10 22:10:39 +0200 + + Update THANKS. + + THANKS | 1 + + 1 file changed, 1 insertion(+) + +commit a3ce3e902342be37c626a561ce3d9ffcf27d0f94 +Author: Lasse Collin +Date: 2018-01-10 21:54:27 +0200 + + tuklib_integer: New Intel C compiler needs immintrin.h. + + Thanks to Melanie Blower (Intel) for the patch. + + src/common/tuklib_integer.h | 11 +++++++++++ + 1 file changed, 11 insertions(+) + +commit 4505ca483985f88c6923c05a43b4327feaab83b1 +Author: Lasse Collin +Date: 2017-09-24 20:04:24 +0300 + + Update THANKS. + + THANKS | 1 + + 1 file changed, 1 insertion(+) + +commit 1ef3cc226e3ce173575c218238b71a4eecabc470 +Author: Lasse Collin +Date: 2017-09-16 20:36:20 +0300 + + Windows: Fix paths in VS project files. + + Some paths use slashes instead of backslashes as directory + separators... now it should work (I tested VS2013 version). + + windows/vs2013/liblzma.vcxproj | 12 ++++++------ + windows/vs2013/liblzma_dll.vcxproj | 24 ++++++++++++------------ + windows/vs2017/liblzma.vcxproj | 12 ++++++------ + windows/vs2017/liblzma_dll.vcxproj | 24 ++++++++++++------------ + 4 files changed, 36 insertions(+), 36 deletions(-) + +commit e775d2a8189d24f60470e6e49d8af881df3a1680 +Author: Lasse Collin +Date: 2017-09-16 12:54:23 +0300 + + Windows: Add project files for VS2017. + + These files match the v5.2 branch (no file info decoder). + + windows/vs2017/config.h | 148 ++++++++++++++ + windows/vs2017/liblzma.vcxproj | 355 ++++++++++++++++++++++++++++++++++ + windows/vs2017/liblzma_dll.vcxproj | 384 +++++++++++++++++++++++++++++++++++++ + windows/vs2017/xz_win.sln | 48 +++++ + 4 files changed, 935 insertions(+) + +commit 10e02e0fbb6e2173f8b41f6e39b7b570f47dd74d +Author: Lasse Collin +Date: 2017-09-16 12:39:43 +0300 + + Windows: Move VS2013 files into windows/vs2013 directory. + + windows/{ => vs2013}/config.h | 0 + windows/{ => vs2013}/liblzma.vcxproj | 278 +++++++++++++++--------------- + windows/{ => vs2013}/liblzma_dll.vcxproj | 280 +++++++++++++++---------------- + windows/{ => vs2013}/xz_win.sln | 0 + 4 files changed, 279 insertions(+), 279 deletions(-) + +commit 06eebd4543196ded36fa9b8b9544195b38b24ef2 +Author: Lasse Collin +Date: 2017-08-14 20:08:33 +0300 + + Fix or hide warnings from GCC 7's -Wimplicit-fallthrough. + + src/liblzma/lzma/lzma_decoder.c | 6 ++++++ + src/xz/list.c | 2 ++ + 2 files changed, 8 insertions(+) + +commit ea4ea1dffafebaa8b2770bf3eca46900e4dd22dc +Author: Alexey Tourbin +Date: 2017-05-16 23:56:35 +0300 + + Docs: Fix a typo in a comment in doc/examples/02_decompress.c. + + doc/examples/02_decompress.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit eb2ef4c79bf405ea0d215f3b1df3d0eaf5e1d27b +Author: Lasse Collin +Date: 2017-05-23 18:34:43 +0300 + + xz: Fix "xz --list --robot missing_or_bad_file.xz". + + It ended up printing an uninitialized char-array when trying to + print the check names (column 7) on the "totals" line. + + This also changes the column 12 (minimum xz version) to + 50000002 (xz 5.0.0) instead of 0 when there are no valid + input files. + + Thanks to kidmin for the bug report. + + src/xz/list.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +commit 3ea5dbd9b0d79048e336e40cef3b6d814fb74e13 +Author: Lasse Collin +Date: 2017-04-24 19:48:47 +0300 + + Build: Omit pre-5.0.0 entries from the generated ChangeLog. + + It makes ChangeLog significantly smaller. + + Makefile.am | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +commit bae24675936df99064de1502593c006bd902594b +Author: Lasse Collin +Date: 2017-04-24 19:30:22 +0300 + + Update the Git repository URL to HTTPS in ChangeLog. + + ChangeLog | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 70f479211973b5361f4d7cb08ba5be69b4266e7a +Author: Lasse Collin +Date: 2017-04-19 22:17:35 +0300 + + Update the home page URLs to HTTPS. + + COPYING | 2 +- + README | 2 +- + configure.ac | 2 +- + doc/faq.txt | 4 ++-- + dos/config.h | 2 +- + src/common/common_w32res.rc | 2 +- + src/xz/xz.1 | 6 +++--- + src/xzdec/xzdec.1 | 4 ++-- + windows/README-Windows.txt | 2 +- + windows/config.h | 2 +- + 10 files changed, 14 insertions(+), 14 deletions(-) + +commit 2a4b2fa75d06a097261a02ecd3cf2b6d449bf754 +Author: Lasse Collin +Date: 2017-03-30 22:01:54 +0300 + + xz: Use POSIX_FADV_RANDOM for in "xz --list" mode. + + xz --list is random access so POSIX_FADV_SEQUENTIAL was clearly + wrong. + + src/xz/file_io.c | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +commit eb25743ade39170cffd9566a1aae272098cce216 +Author: Lasse Collin +Date: 2017-03-30 19:47:45 +0300 + + liblzma: Fix lzma_memlimit_set(strm, 0). + + The 0 got treated specially in a buggy way and as a result + the function did nothing. The API doc said that 0 was supposed + to return LZMA_PROG_ERROR but it didn't. + + Now 0 is treated as if 1 had been specified. This is done because + 0 is already used to indicate an error from lzma_memlimit_get() + and lzma_memusage(). + + In addition, lzma_memlimit_set() no longer checks that the new + limit is at least LZMA_MEMUSAGE_BASE. It's counter-productive + for the Index decoder and was actually needed only by the + auto decoder. Auto decoder has now been modified to check for + LZMA_MEMUSAGE_BASE. + + src/liblzma/api/lzma/base.h | 7 ++++++- + src/liblzma/common/auto_decoder.c | 3 +++ + src/liblzma/common/common.c | 6 ++++-- + 3 files changed, 13 insertions(+), 3 deletions(-) + +commit ef36c6362f3f3853f21b8a6359bcd06576ebf207 +Author: Lasse Collin +Date: 2017-03-30 19:16:55 +0300 + + liblzma: Similar memlimit fix for stream_, alone_, and auto_decoder. + + src/liblzma/api/lzma/container.h | 21 +++++++++++++++++---- + src/liblzma/common/alone_decoder.c | 5 +---- + src/liblzma/common/auto_decoder.c | 5 +---- + src/liblzma/common/stream_decoder.c | 5 +---- + 4 files changed, 20 insertions(+), 16 deletions(-) + +commit 57616032650f03840480b696d7878acdd2065521 +Author: Lasse Collin +Date: 2017-03-30 18:58:18 +0300 + + liblzma: Fix handling of memlimit == 0 in lzma_index_decoder(). + + It returned LZMA_PROG_ERROR, which was done to avoid zero as + the limit (because it's a special value elsewhere), but using + LZMA_PROG_ERROR is simply inconvenient and can cause bugs. + + The fix/workaround is to treat 0 as if it were 1 byte. It's + effectively the same thing. The only weird consequence is + that then lzma_memlimit_get() will return 1 even when 0 was + specified as the limit. + + This fixes a very rare corner case in xz --list where a specific + memory usage limit and a multi-stream file could print the + error message "Internal error (bug)" instead of saying that + the memory usage limit is too low. + + src/liblzma/api/lzma/index.h | 18 +++++++++++------- + src/liblzma/common/index_decoder.c | 4 ++-- + 2 files changed, 13 insertions(+), 9 deletions(-) + commit 3d566cd519017eee1a400e7961ff14058dfaf33c Author: Lasse Collin Date: 2016-12-30 13:26:36 +0200 @@ -5332,10037 +5613,3 @@ Date: 2010-10-23 14:02:53 +0300 src/liblzma/Makefile.am | 2 +- src/liblzma/api/lzma/version.h | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) - -commit 8c947e9291691629714dafb4536c718b6cc24fbd -Author: Lasse Collin -Date: 2010-10-23 12:30:54 +0300 - - liblzma: Make lzma_code() check the reserved members in lzma_stream. - - If any of the reserved members in lzma_stream are non-zero - or non-NULL, LZMA_OPTIONS_ERROR is returned. It is possible - that a new feature in the future is indicated by just setting - a reserved member to some other value, so the old liblzma - version need to catch it as an unsupported feature. - - src/liblzma/common/common.c | 14 ++++++++++++++ - 1 file changed, 14 insertions(+) - -commit e61d85e082743ebd2dd0ff28fc0a82482ede0538 -Author: Lasse Collin -Date: 2010-10-23 12:26:33 +0300 - - Windows: Use MinGW's stdio functions. - - The non-standard ones from msvcrt.dll appear to work - most of the time with XZ Utils, but there are some - corner cases where things may go very wrong. So it's - good to use the better replacements provided by - MinGW(-w64) runtime. - - src/common/sysdefs.h | 5 +++++ - 1 file changed, 5 insertions(+) - -commit 23e23f1dc029146714c9a98313ab3ea93d71a2fc -Author: Lasse Collin -Date: 2010-10-23 12:21:32 +0300 - - liblzma: Use 512 as INDEX_GROUP_SIZE. - - This lets compiler use shifting instead of 64-bit division. - - src/liblzma/common/index.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -commit 613939fc82603b75b59eee840871a05bc8dd08e0 -Author: Lasse Collin -Date: 2010-10-23 12:20:11 +0300 - - liblzma: A few ABI tweaks to reserve space in structures. - - src/liblzma/api/lzma/base.h | 7 ++++++- - src/liblzma/api/lzma/lzma.h | 4 ++-- - src/liblzma/api/lzma/stream_flags.h | 4 ---- - 3 files changed, 8 insertions(+), 7 deletions(-) - -commit 68b83f252df3d27480a9f6f03445d16f6506fef1 -Author: Lasse Collin -Date: 2010-10-21 23:16:11 +0300 - - xz: Make sure that message_strm() can never return NULL. - - src/xz/message.c | 7 +++++-- - 1 file changed, 5 insertions(+), 2 deletions(-) - -commit d09c5753e33ff96ee57edb6d1e98e34041203695 -Author: Lasse Collin -Date: 2010-10-21 23:06:31 +0300 - - liblzma: Update the comments in the API headers. - - Adding support for LZMA_FINISH for Index encoding and - decoding needed tiny additions to the relevant .c files too. - - src/liblzma/api/lzma.h | 4 +-- - src/liblzma/api/lzma/base.h | 38 +++++++++++++-------------- - src/liblzma/api/lzma/bcj.h | 4 +-- - src/liblzma/api/lzma/block.h | 4 +-- - src/liblzma/api/lzma/container.h | 26 ++++++++++++------- - src/liblzma/api/lzma/filter.h | 51 ++++++++++++++++++------------------- - src/liblzma/api/lzma/hardware.h | 3 +-- - src/liblzma/api/lzma/index.h | 28 ++++++++++++-------- - src/liblzma/api/lzma/index_hash.h | 2 +- - src/liblzma/api/lzma/lzma.h | 46 ++++++++++++++++++++++----------- - src/liblzma/api/lzma/stream_flags.h | 4 +-- - src/liblzma/api/lzma/vli.h | 31 +++++++++++----------- - src/liblzma/common/index_decoder.c | 1 + - src/liblzma/common/index_encoder.c | 1 + - 14 files changed, 136 insertions(+), 107 deletions(-) - -commit 33c1c0e102eb529588503b8beea0903a45488fad -Author: Lasse Collin -Date: 2010-10-19 12:08:30 +0300 - - Update INSTALL.generic. - - INSTALL.generic | 99 ++++++++++++++++++++++++++++++++++++++++++++++----------- - 1 file changed, 81 insertions(+), 18 deletions(-) - -commit 0076e03641f201c4b77dddd5a6db5880be19a78c -Author: Lasse Collin -Date: 2010-10-19 11:44:37 +0300 - - Clean up a few FIXMEs and TODOs. - - lzma_chunk_size() was commented out because it is - currently useless. - - src/liblzma/common/filter_encoder.c | 2 ++ - src/liblzma/common/filter_encoder.h | 4 ++-- - src/liblzma/lzma/lzma2_decoder.c | 1 - - src/liblzma/lzma/lzma_decoder.c | 4 ++-- - src/liblzma/lzma/lzma_encoder.c | 2 +- - src/xz/message.h | 2 +- - 6 files changed, 8 insertions(+), 7 deletions(-) - -commit ce34ec4f54ff8b753da236f371ad8dd23c8135c9 -Author: Lasse Collin -Date: 2010-10-19 10:21:08 +0300 - - Update docs. - - INSTALL | 192 +++++++++++++++++++++++++++++++++++++++++-------------------- - PACKAGERS | 104 +++++++++------------------------ - TODO | 17 ++++-- - dos/README | 2 +- - 4 files changed, 172 insertions(+), 143 deletions(-) - -commit f0fa880d247e73264d2c04fe31fb3412318a0026 -Author: Lasse Collin -Date: 2010-10-12 15:13:30 +0300 - - xz: Avoid raise() also on OpenVMS. - - This is similar to DOS/DJGPP that killing the program - with a signal will print a backtrace or a similar message. - - src/xz/signals.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -commit ac462b1c47c451f5c62e428306314c4bdad8ae7f -Author: Lasse Collin -Date: 2010-10-11 21:26:19 +0300 - - xz: Avoid SA_RESTART for portability reasons. - - SA_RESTART is not as portable as I had hoped. It's missing - at least from OpenVMS, QNX, and DJGPP). Luckily we can do - fine without SA_RESTART. - - src/xz/message.c | 38 +++++++++++++++----------------------- - src/xz/message.h | 4 ++++ - src/xz/signals.c | 6 ++++++ - 3 files changed, 25 insertions(+), 23 deletions(-) - -commit d52b411716a614c202e89ba732492efb9916cd3f -Author: Lasse Collin -Date: 2010-10-10 17:58:58 +0300 - - xz: Use "%"PRIu32 instead of "%d" in a format string. - - src/xz/message.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -commit ae74d1bdeb075c3beefe76e1136c5741804e7e91 -Author: Lasse Collin -Date: 2010-10-10 17:43:26 +0300 - - test_files.sh: Fix the first line. - - For some reason this prevented running the test only - on OS/2 and even on that it broke only recently. - - Thanks to Elbert Pol. - - tests/test_files.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -commit d492b80ddd6f9a13419de6d102df7374d8f448e8 -Author: Lasse Collin -Date: 2010-10-10 16:49:01 +0300 - - lzmainfo: Use "%"PRIu32 instead of "%u" for uint32_t. - - src/lzmainfo/lzmainfo.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -commit 825e859a9054bd91202e5723c41a17e72f63040a -Author: Lasse Collin -Date: 2010-10-10 16:47:01 +0300 - - lzmainfo: Use fileno(stdin) instead of STDIN_FILENO. - - src/lzmainfo/lzmainfo.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -commit acbc4cdecbeec2a4dfaac04f185ece49b2ff17c8 -Author: Lasse Collin -Date: 2010-10-09 23:20:51 +0300 - - lzmainfo: Use setmode() on DOS-like systems. - - src/lzmainfo/lzmainfo.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -commit ef364d3abc5647111c5424ea0d83a567e184a23b -Author: Lasse Collin -Date: 2010-10-09 21:51:03 +0300 - - OS/2 and DOS: Be less verbose on signals. - - Calling raise() to kill xz when user has pressed C-c - is a bit verbose on OS/2 and DOS/DJGPP. Instead of - calling raise(), set only the exit status to 1. - - src/xz/signals.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -commit 5629c4be07b6c67e79842b2569da1cedc9c0d69a -Author: Lasse Collin -Date: 2010-10-09 19:28:49 +0300 - - DOS: Update the Makefile, config.h and README. - - This is now simpler and builds only xz.exe. - - dos/Makefile | 211 +++++++++++++++-------------------------------------------- - dos/README | 73 +++++++-------------- - dos/config.h | 45 ++++--------- - 3 files changed, 86 insertions(+), 243 deletions(-) - -commit f25a77e6b9bc48a243ddfbbd755b7960eec7e0ac -Author: Lasse Collin -Date: 2010-10-09 18:57:55 +0300 - - Windows: Put some license info into README-Windows.txt. - - windows/README-Windows.txt | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -commit e75100f549f85d231df25c07aa94d63e78e2d668 -Author: Lasse Collin -Date: 2010-10-09 18:57:04 +0300 - - Windows: Fix a diagnostics bug in build.bash. - - windows/build.bash | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -commit efeb998a2b1025df1c1d202cc7d21d866cd1c336 -Author: Lasse Collin -Date: 2010-10-09 13:02:15 +0300 - - lzmainfo: Add Windows resource file. - - src/lzmainfo/Makefile.am | 9 +++++++++ - src/lzmainfo/lzmainfo_w32res.rc | 12 ++++++++++++ - 2 files changed, 21 insertions(+) - -commit 389d418445f1623593dfdbba55d52fbb6d1205f5 -Author: Lasse Collin -Date: 2010-10-09 12:57:25 +0300 - - Add missing public domain notice to lzmadec_w32res.rc. - - src/xzdec/lzmadec_w32res.rc | 7 +++++++ - 1 file changed, 7 insertions(+) - -commit 6389c773a4912dd9f111256d74ba1605230a7957 -Author: Lasse Collin -Date: 2010-10-09 12:52:12 +0300 - - Windows: Update common_w32res.rc. - - src/common/common_w32res.rc | 9 +++------ - 1 file changed, 3 insertions(+), 6 deletions(-) - -commit 71275457ca24c9b01721f5cfc3638cf094daf454 -Author: Lasse Collin -Date: 2010-10-09 12:27:08 +0300 - - Windows: Make build.bash prefer MinGW-w32 over MinGW. - - This is simply for licensing reasons. The 64-bit version - will be built with MinGW-w64 anyway (at least for now), - so using it also for 32-bit build allows using the same - copyright notice about the MinGW-w64/w32 runtime. - - Note that using MinGW would require a copyright notice too, - because its runtime is not in the public domain either even - though MinGW's home page claims that it is public domain. - See . - - windows/build.bash | 18 +++++++++--------- - 1 file changed, 9 insertions(+), 9 deletions(-) - -commit 3ac35719d8433af937af6491383d4a50e343099b -Author: Lasse Collin -Date: 2010-10-09 11:33:21 +0300 - - Windows: Copy COPYING-Windows.txt (if it exists) to the package. - - Also, put README-Windows.txt to the doc directory like - the other documentation files. - - windows/build.bash | 14 ++++++++++++-- - 1 file changed, 12 insertions(+), 2 deletions(-) - -commit 7b5db576fd7a4a67813b8437a9ccd4dbc94bbaae -Author: Lasse Collin -Date: 2010-10-08 21:42:37 +0300 - - Windows: Fix build.bash again. - - 630a8beda34af0ac153c8051b1bf01230558e422 wasn't good. - - windows/build.bash | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -commit d3cd7abe85ec7c2f46cf198b15c00d5d119df3dd -Author: Lasse Collin -Date: 2010-10-08 16:53:20 +0300 - - Use LZMA_VERSION_STRING instead of PACKAGE_VERSION. - - Those are the same thing, and the former makes it a bit - easier to build the code with other build systems, because - one doesn't need to update the version number into custom - config.h. - - This change affects only lzmainfo. Other tools were already - using LZMA_VERSION_STRING. - - src/lzmainfo/lzmainfo.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -commit 084c60d318f2dbaef4078d9b100b4a373d0c3a7f -Author: Lasse Collin -Date: 2010-10-08 15:59:25 +0300 - - configure.ac: Remove two unused defines. - - configure.ac | 4 ---- - 1 file changed, 4 deletions(-) - -commit 11f51b6714357cb67ec7e56ed9575c199b5581fe -Author: Lasse Collin -Date: 2010-10-08 15:32:29 +0300 - - Make tests accommodate missing xz or xzdec. - - tests/test_compress.sh | 47 ++++++++++++++++++++++++++++++----------------- - tests/test_files.sh | 28 ++++++++++++++++++++++++++-- - 2 files changed, 56 insertions(+), 19 deletions(-) - -commit b1c7368f95e93ccdefdd0748e04398c26766f47f -Author: Lasse Collin -Date: 2010-10-08 15:25:45 +0300 - - Build: Add options to disable individual command line tools. - - configure.ac | 38 ++++++++++++++++++++++++++++++ - src/Makefile.am | 15 +++++++++++- - src/scripts/Makefile.am | 62 +++++++++++++++++++++---------------------------- - src/xz/Makefile.am | 6 ++++- - src/xzdec/Makefile.am | 12 ++++++++-- - 5 files changed, 93 insertions(+), 40 deletions(-) - -commit 630a8beda34af0ac153c8051b1bf01230558e422 -Author: Lasse Collin -Date: 2010-10-07 00:44:53 +0300 - - Windows: Make build.bash work without --enable-dynamic=no. - - windows/build.bash | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -commit f9907503f882a745dce9d84c2968f6c175ba966a -Author: Lasse Collin -Date: 2010-10-05 14:13:16 +0300 - - Build: Remove the static/dynamic tricks. - - Most distros want xz linked against shared liblzma, so - it doesn't help much to require --enable-dynamic for that. - Those who want to avoid PIC on x86-32 to get better - performance, can still do it e.g. by using --disable-shared - to compile xz and then another pass to compile shared liblzma. - - Part of these static/dynamic tricks were needed for Windows - in the past. Nowadays we rely on GCC and binutils to do the - right thing with auto-import. If the Autotooled build system - needs to support some other toolchain on Windows in the future, - this may need some rethinking. - - configure.ac | 74 ------------------------------------------------ - debug/Makefile.am | 5 +--- - src/lzmainfo/Makefile.am | 4 +-- - src/xz/Makefile.am | 4 +-- - src/xzdec/Makefile.am | 4 +-- - tests/Makefile.am | 5 +--- - 6 files changed, 5 insertions(+), 91 deletions(-) - -commit fda4724d8114fccfa31c1839c15479f350c2fb4c -Author: Lasse Collin -Date: 2010-10-05 12:18:58 +0300 - - configure.ac: Silence a warning from Autoconf 2.68. - - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -commit 80b5675fa62c87426fe86f8fcd20feeabc4361b9 -Author: Lasse Collin -Date: 2010-10-04 19:43:01 +0300 - - A few more languages files to the xz man page. - - Thanks to Jonathan Nieder. - - src/xz/xz.1 | 45 ++++++++++++++++++++++++--------------------- - 1 file changed, 24 insertions(+), 21 deletions(-) - -commit f9722dbeca4dc4c43cfd15d122dafaac50b0a0bb -Author: Lasse Collin -Date: 2010-10-02 12:07:33 +0300 - - Update the FAQ. - - doc/faq.txt | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- - 1 file changed, 100 insertions(+), 4 deletions(-) - -commit 61ae593661e8dc402394e84d567ca2044a51572b -Author: Lasse Collin -Date: 2010-10-02 11:38:20 +0300 - - liblzma: Small fixes to comments in the API headers. - - src/liblzma/api/lzma/lzma.h | 10 +++++++--- - 1 file changed, 7 insertions(+), 3 deletions(-) - -commit 9166682dc601fd42c1b9510572e3f917d18de504 -Author: Lasse Collin -Date: 2010-09-28 11:40:12 +0300 - - Create the PDF versions of the man pages better. - - Makefile.am | 14 +++++++------ - build-aux/manconv.sh | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++ - 2 files changed, 66 insertions(+), 6 deletions(-) - -commit 17d3c61edd35de8fa884944fc70d1db86daa5dd8 -Author: Lasse Collin -Date: 2010-09-28 10:59:53 +0300 - - Move version.sh to build-aux. - - Makefile.am | 4 ++-- - version.sh => build-aux/version.sh | 0 - configure.ac | 2 +- - windows/build.bash | 2 +- - 4 files changed, 4 insertions(+), 4 deletions(-) - -commit 84af9d8770451339a692e9b70f96cf56156a6069 -Author: Lasse Collin -Date: 2010-09-28 10:53:02 +0300 - - Update .gitignore. - - .gitignore | 10 +++++++++- - 1 file changed, 9 insertions(+), 1 deletion(-) - -commit 31575a449ac64c523da3bab8d0c0b522cdc7c780 -Author: Lasse Collin -Date: 2010-09-28 01:17:14 +0300 - - Fix accomodate -> accommodate on the xz man page. - - src/xz/xz.1 | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -commit cec0ddc8ec4ce81685a51998b978e22167e461f9 -Author: Lasse Collin -Date: 2010-09-27 23:29:34 +0300 - - Major man page updates. - - Lots of content was updated on the xz man page. - - Technical improvements: - - Start a new sentence on a new line. - - Use fairly short lines. - - Use constant-width font for examples (where supported). - - Some minor cleanups. - - Thanks to Jonathan Nieder for some language fixes. - - src/lzmainfo/lzmainfo.1 | 25 +- - src/scripts/xzdiff.1 | 15 +- - src/scripts/xzgrep.1 | 11 +- - src/scripts/xzless.1 | 13 +- - src/scripts/xzmore.1 | 9 +- - src/xz/xz.1 | 1964 ++++++++++++++++++++++++++++++++--------------- - src/xzdec/xzdec.1 | 39 +- - 7 files changed, 1435 insertions(+), 641 deletions(-) - -commit 075257ab0416a0603be930082e31a5703e4ba345 -Author: Lasse Collin -Date: 2010-09-26 18:10:31 +0300 - - Fix the preset -3e. - - depth=0 was missing. - - src/liblzma/lzma/lzma_encoder_presets.c | 1 + - 1 file changed, 1 insertion(+) - -commit 2577da9ebdba13fbe99ae5ee8bde35f7ed60f6d1 -Author: Lasse Collin -Date: 2010-09-23 14:03:10 +0300 - - Add translations.bash and translation notes to README. - - translations.bash prints some messages from xz, which - hopefully makes it a bit easier to test translations. - - README | 96 +++++++++++++++++++++++++++++++++++++++++++++-- - debug/translation.bash | 100 +++++++++++++++++++++++++++++++++++++++++++++++++ - 2 files changed, 192 insertions(+), 4 deletions(-) - -commit a3c5997c57e5b1a20aae6d1071b584b4f17d0b23 -Author: Lasse Collin -Date: 2010-09-17 22:14:30 +0300 - - xz: Update the Czech translation. - - Thanks to Marek Černocký. - - po/cs.po | 202 +++++++++++++++++++++++++++++++++++++++++---------------------- - 1 file changed, 131 insertions(+), 71 deletions(-) - -commit a1766af582dc23fddd9da1eeb4b9d61e3eb4c2e6 -Author: Lasse Collin -Date: 2010-09-16 23:40:41 +0300 - - xz: Add Italian translation. - - Thanks to Milo Casagrande and Lorenzo De Liso. - - THANKS | 2 + - po/LINGUAS | 1 + - po/it.po | 902 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - 3 files changed, 905 insertions(+) - -commit 21088018554e2b0e02914205377ceb6e34a090bd -Author: Lasse Collin -Date: 2010-09-15 00:34:13 +0300 - - xz: Edit a translators comment. - - src/xz/list.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -commit be16e28ece1b492b8f93382b7fa1cc4da23c6ff6 -Author: Lasse Collin -Date: 2010-09-14 22:47:14 +0300 - - xz: Add German translation. - - Thanks to Andre Noll. - - THANKS | 1 + - po/LINGUAS | 1 + - po/de.po | 903 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - 3 files changed, 905 insertions(+) - -commit e23ea74f3240e6b69683f9e69d1716e0f9e9092b -Author: Lasse Collin -Date: 2010-09-10 14:30:25 +0300 - - Updated README. - - README | 2 -- - 1 file changed, 2 deletions(-) - -commit 8dad2fd69336985adb9f774fa96dc9c0efcb5a71 -Author: Lasse Collin -Date: 2010-09-10 14:30:07 +0300 - - Updated INSTALL. - - INSTALL | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -commit 0b5f07fe3728c27cce416ddc40f7e4803ae96ac2 -Author: Lasse Collin -Date: 2010-09-10 14:26:20 +0300 - - Updated the git repository address in ChangeLog. - - ChangeLog | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -commit a8760203f93a69bc39fd14520a6e9e7b7d70be06 -Author: Lasse Collin -Date: 2010-09-10 14:09:33 +0300 - - xz: Add a comment to translators about "literal context bits". - - src/xz/message.c | 4 ++++ - 1 file changed, 4 insertions(+) - -commit bb0b1004f83cdc4d309e1471c2ecaf9f95ce60c5 -Author: Lasse Collin -Date: 2010-09-10 10:30:33 +0300 - - xz: Multiple fixes. - - The code assumed that printing numbers with thousand separators - and decimal points would always produce only US-ASCII characters. - This was used for buffer sizes (with snprintf(), no overflows) - and aligning columns of the progress indicator and --list. That - assumption was wrong (e.g. LC_ALL=fi_FI.UTF-8 with glibc), so - multibyte character support was added in this commit. The old - way is used if the operating system doesn't have enough multibyte - support (e.g. lacks wcwidth()). - - The sizes of buffers were increased to accomodate multibyte - characters. I don't know how big they should be exactly, but - they aren't used for anything critical, so it's not too bad. - If they still aren't big enough, I hopefully get a bug report. - snprintf() takes care of avoiding buffer overflows. - - Some static buffers were replaced with buffers allocated on - stack. double_to_str() was removed. uint64_to_str() and - uint64_to_nicestr() now share the static buffer and test - for thousand separator support. - - Integrity check names "None" and "Unknown-N" (2 <= N <= 15) - were marked to be translated. I had forgot these, plus they - wouldn't have worked correctly anyway before this commit, - because printing tables with multibyte strings didn't work. - - Thanks to Marek Černocký for reporting the bug about - misaligned table columns in --list output. - - configure.ac | 1 + - m4/tuklib_mbstr.m4 | 30 ++++++ - src/common/tuklib_mbstr.h | 66 +++++++++++++ - src/common/tuklib_mbstr_fw.c | 31 ++++++ - src/common/tuklib_mbstr_width.c | 64 +++++++++++++ - src/xz/Makefile.am | 4 +- - src/xz/list.c | 205 +++++++++++++++++++++++++++------------- - src/xz/message.c | 56 +++++++---- - src/xz/message.h | 10 +- - src/xz/private.h | 1 + - src/xz/util.c | 136 +++++++++----------------- - src/xz/util.h | 7 -- - 12 files changed, 424 insertions(+), 187 deletions(-) - -commit 639f8e2af33cf8a184d59ba56b6df7c098679d61 -Author: Lasse Collin -Date: 2010-09-08 08:49:22 +0300 - - Update the Czech translation. - - Thanks to Marek Černocký. - - po/cs.po | 655 +++++++++++++++++++++++++++++++++++++++++++-------------------- - 1 file changed, 454 insertions(+), 201 deletions(-) - -commit 41bc9956ebfd7c86777d33676acf34c45e7ca7c7 -Author: Lasse Collin -Date: 2010-09-07 12:31:40 +0300 - - xz: Add a note to translators. - - src/xz/hardware.c | 2 ++ - 1 file changed, 2 insertions(+) - -commit 77a7746616e555fc08028e883a56d06bf0088b81 -Author: Lasse Collin -Date: 2010-09-07 10:42:13 +0300 - - Fix use of N_() and ngettext(). - - I had somehow thought that N_() is usually used - as shorthand for ngettext(). - - This also fixes a missing \n from a call to ngettext(). - - src/common/tuklib_gettext.h | 4 ++-- - src/xz/list.c | 4 ++-- - 2 files changed, 4 insertions(+), 4 deletions(-) - -commit e6ad39335842343e622ab51207d1d3cb9caad801 -Author: Lasse Collin -Date: 2010-09-06 19:43:12 +0300 - - Add missing files to POTFILES.in. - *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-vendor@freebsd.org Fri May 18 04:13:59 2018 Return-Path: Delivered-To: svn-src-vendor@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7F995EE8F42; Fri, 18 May 2018 04:13:59 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2FE5184AED; Fri, 18 May 2018 04:13:59 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EC28A131DD; Fri, 18 May 2018 04:13:58 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w4I4DwlN086095; Fri, 18 May 2018 04:13:58 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w4I4DwnV086094; Fri, 18 May 2018 04:13:58 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201805180413.w4I4DwnV086094@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Fri, 18 May 2018 04:13:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r333780 - vendor/xz/5.2.4 X-SVN-Group: vendor X-SVN-Commit-Author: delphij X-SVN-Commit-Paths: vendor/xz/5.2.4 X-SVN-Commit-Revision: 333780 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 May 2018 04:13:59 -0000 Author: delphij Date: Fri May 18 04:13:58 2018 New Revision: 333780 URL: https://svnweb.freebsd.org/changeset/base/333780 Log: Tag xz 5.2.4. Added: vendor/xz/5.2.4/ - copied from r333779, vendor/xz/dist/ From owner-svn-src-vendor@freebsd.org Fri May 18 12:21:21 2018 Return-Path: Delivered-To: svn-src-vendor@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E1BBAEF3EE5; Fri, 18 May 2018 12:21:20 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8319473AEF; Fri, 18 May 2018 12:21:20 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4B1A717FDD; Fri, 18 May 2018 12:21:20 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w4ICLKnd034048; Fri, 18 May 2018 12:21:20 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w4ICLKfl034045; Fri, 18 May 2018 12:21:20 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201805181221.w4ICLKfl034045@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Fri, 18 May 2018 12:21:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r333789 - in vendor/libpcap/dist: . SUNOS4 Win32/Include Win32/Prj bpf cmake cmake/Modules config missing msdos pcap tests X-SVN-Group: vendor X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: in vendor/libpcap/dist: . SUNOS4 Win32/Include Win32/Prj bpf cmake cmake/Modules config missing msdos pcap tests X-SVN-Commit-Revision: 333789 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 May 2018 12:21:21 -0000 Author: hselasky Date: Fri May 18 12:21:19 2018 New Revision: 333789 URL: https://svnweb.freebsd.org/changeset/base/333789 Log: Import vendor revision 77da77c36e5d958f9b8d6729876a33f670de031f from: https://github.com/the-tcpdump-group/libpcap.git This among other minor fixes adds support for sniffing RDMA devices. Sponsored by: Mellanox Technologies Added: vendor/libpcap/dist/CONTRIBUTING vendor/libpcap/dist/README.macos vendor/libpcap/dist/bpf_filter.c (contents, props changed) vendor/libpcap/dist/cmake/Modules/ vendor/libpcap/dist/cmake/Modules/FindDAG.cmake vendor/libpcap/dist/cmake/Modules/FindFseeko.cmake vendor/libpcap/dist/cmake/Modules/FindLFS.cmake vendor/libpcap/dist/cmake/Modules/FindPacket.cmake vendor/libpcap/dist/cmake/Modules/FindPthreads-w32.cmake vendor/libpcap/dist/cmake/Modules/FindSNF.cmake vendor/libpcap/dist/cmake/Modules/FindTC.cmake vendor/libpcap/dist/cmake/have_siocglifconf.c (contents, props changed) vendor/libpcap/dist/cmake_uninstall.cmake.in (contents, props changed) vendor/libpcap/dist/diag-control.h (contents, props changed) vendor/libpcap/dist/fmtutils.c (contents, props changed) vendor/libpcap/dist/fmtutils.h (contents, props changed) vendor/libpcap/dist/ftmacros.h (contents, props changed) vendor/libpcap/dist/libpcap.pc.in (contents, props changed) vendor/libpcap/dist/nomkdep vendor/libpcap/dist/optimize.h (contents, props changed) vendor/libpcap/dist/pcap-dll.rc vendor/libpcap/dist/pcap-netmap.c (contents, props changed) vendor/libpcap/dist/pcap-netmap.h (contents, props changed) vendor/libpcap/dist/pcap-npf.c (contents, props changed) vendor/libpcap/dist/pcap-rdmasniff.c (contents, props changed) vendor/libpcap/dist/pcap-rdmasniff.h (contents, props changed) vendor/libpcap/dist/pcap-rpcap-int.h (contents, props changed) vendor/libpcap/dist/pcap-types.h (contents, props changed) vendor/libpcap/dist/pcap/compiler-tests.h (contents, props changed) vendor/libpcap/dist/pcap/funcattrs.h (contents, props changed) vendor/libpcap/dist/pcap/pcap-inttypes.h (contents, props changed) vendor/libpcap/dist/pcap_get_required_select_timeout.3pcap vendor/libpcap/dist/pcap_set_protocol.3pcap vendor/libpcap/dist/rpcap-protocol.c (contents, props changed) vendor/libpcap/dist/rpcap-protocol.h (contents, props changed) vendor/libpcap/dist/sf-pcapng.c (contents, props changed) vendor/libpcap/dist/sf-pcapng.h (contents, props changed) vendor/libpcap/dist/tests/shb-option-too-long.pcapng (contents, props changed) vendor/libpcap/dist/varattrs.h (contents, props changed) Deleted: vendor/libpcap/dist/GenVersion.bat vendor/libpcap/dist/README.macosx vendor/libpcap/dist/SUNOS4/ vendor/libpcap/dist/Win32/Include/ vendor/libpcap/dist/bpf/ vendor/libpcap/dist/cmake/preconfigure.cmake vendor/libpcap/dist/config/ vendor/libpcap/dist/fad-helpers.c vendor/libpcap/dist/gen_version_c.sh vendor/libpcap/dist/gen_version_header.sh vendor/libpcap/dist/inet.c vendor/libpcap/dist/msdos/common.dj vendor/libpcap/dist/msdos/ndis2.c vendor/libpcap/dist/msdos/ndis2.h vendor/libpcap/dist/msdos/ndis_0.asm vendor/libpcap/dist/pcap-stdinc.h vendor/libpcap/dist/pcap-win32.c vendor/libpcap/dist/pcap/export-defs.h vendor/libpcap/dist/pcap_version.h.in vendor/libpcap/dist/remote-ext.h vendor/libpcap/dist/sf-pcap-ng.c vendor/libpcap/dist/sf-pcap-ng.h vendor/libpcap/dist/tests/CMakeLists.txt vendor/libpcap/dist/tests/can_set_rfmon_test.c vendor/libpcap/dist/tests/capturetest.c vendor/libpcap/dist/tests/filtertest.c vendor/libpcap/dist/tests/findalldevstest.c vendor/libpcap/dist/tests/opentest.c vendor/libpcap/dist/tests/reactivatetest.c vendor/libpcap/dist/tests/selpolltest.c vendor/libpcap/dist/tests/valgrindtest.c Modified: vendor/libpcap/dist/CHANGES vendor/libpcap/dist/CMakeLists.txt vendor/libpcap/dist/CREDITS vendor/libpcap/dist/INSTALL.txt vendor/libpcap/dist/Makefile.in vendor/libpcap/dist/README vendor/libpcap/dist/README.septel vendor/libpcap/dist/README.sita vendor/libpcap/dist/VERSION vendor/libpcap/dist/Win32/Prj/wpcap.vcxproj vendor/libpcap/dist/Win32/Prj/wpcap.vcxproj.filters vendor/libpcap/dist/aclocal.m4 vendor/libpcap/dist/bpf_dump.c vendor/libpcap/dist/bpf_image.c vendor/libpcap/dist/chmod_bpf vendor/libpcap/dist/cmakeconfig.h.in vendor/libpcap/dist/config.h.in vendor/libpcap/dist/configure vendor/libpcap/dist/configure.ac vendor/libpcap/dist/dlpisubs.c vendor/libpcap/dist/etherent.c vendor/libpcap/dist/extract.h vendor/libpcap/dist/fad-getad.c vendor/libpcap/dist/fad-gifc.c vendor/libpcap/dist/fad-glifc.c vendor/libpcap/dist/gencode.c vendor/libpcap/dist/gencode.h vendor/libpcap/dist/grammar.y vendor/libpcap/dist/missing/getopt.c vendor/libpcap/dist/missing/getopt.h vendor/libpcap/dist/missing/strtok_r.c vendor/libpcap/dist/msdos/makefile vendor/libpcap/dist/msdos/makefile.dj vendor/libpcap/dist/msdos/makefile.wc vendor/libpcap/dist/nametoaddr.c vendor/libpcap/dist/optimize.c vendor/libpcap/dist/pcap-bpf.c vendor/libpcap/dist/pcap-bt-linux.c vendor/libpcap/dist/pcap-bt-linux.h vendor/libpcap/dist/pcap-bt-monitor-linux.c vendor/libpcap/dist/pcap-bt-monitor-linux.h vendor/libpcap/dist/pcap-common.c vendor/libpcap/dist/pcap-common.h vendor/libpcap/dist/pcap-config.in vendor/libpcap/dist/pcap-dag.c vendor/libpcap/dist/pcap-dag.h vendor/libpcap/dist/pcap-dbus.c vendor/libpcap/dist/pcap-dbus.h vendor/libpcap/dist/pcap-dlpi.c vendor/libpcap/dist/pcap-dos.c vendor/libpcap/dist/pcap-enet.c vendor/libpcap/dist/pcap-filter.manmisc.in vendor/libpcap/dist/pcap-int.h vendor/libpcap/dist/pcap-libdlpi.c vendor/libpcap/dist/pcap-linux.c vendor/libpcap/dist/pcap-netfilter-linux.c vendor/libpcap/dist/pcap-netfilter-linux.h vendor/libpcap/dist/pcap-new.c vendor/libpcap/dist/pcap-nit.c vendor/libpcap/dist/pcap-null.c vendor/libpcap/dist/pcap-pf.c vendor/libpcap/dist/pcap-rpcap.c vendor/libpcap/dist/pcap-rpcap.h vendor/libpcap/dist/pcap-septel.c vendor/libpcap/dist/pcap-septel.h vendor/libpcap/dist/pcap-sita.c vendor/libpcap/dist/pcap-snf.c vendor/libpcap/dist/pcap-snf.h vendor/libpcap/dist/pcap-snit.c vendor/libpcap/dist/pcap-snoop.c vendor/libpcap/dist/pcap-tc.c vendor/libpcap/dist/pcap-tc.h vendor/libpcap/dist/pcap-tstamp.manmisc.in vendor/libpcap/dist/pcap-usb-linux.c vendor/libpcap/dist/pcap-usb-linux.h vendor/libpcap/dist/pcap.3pcap.in vendor/libpcap/dist/pcap.c vendor/libpcap/dist/pcap/bluetooth.h vendor/libpcap/dist/pcap/bpf.h vendor/libpcap/dist/pcap/can_socketcan.h vendor/libpcap/dist/pcap/dlt.h vendor/libpcap/dist/pcap/namedb.h vendor/libpcap/dist/pcap/nflog.h vendor/libpcap/dist/pcap/pcap.h vendor/libpcap/dist/pcap/sll.h vendor/libpcap/dist/pcap/usb.h vendor/libpcap/dist/pcap/vlan.h vendor/libpcap/dist/pcap_breakloop.3pcap vendor/libpcap/dist/pcap_compile.3pcap.in vendor/libpcap/dist/pcap_dump_ftell.3pcap vendor/libpcap/dist/pcap_dump_open.3pcap.in vendor/libpcap/dist/pcap_fileno.3pcap vendor/libpcap/dist/pcap_findalldevs.3pcap vendor/libpcap/dist/pcap_get_selectable_fd.3pcap vendor/libpcap/dist/pcap_lookupdev.3pcap vendor/libpcap/dist/pcap_loop.3pcap vendor/libpcap/dist/pcap_major_version.3pcap vendor/libpcap/dist/pcap_next_ex.3pcap vendor/libpcap/dist/pcap_open_dead.3pcap.in vendor/libpcap/dist/pcap_open_live.3pcap vendor/libpcap/dist/pcap_open_offline.3pcap.in vendor/libpcap/dist/pcap_set_timeout.3pcap vendor/libpcap/dist/pcap_set_tstamp_type.3pcap.in vendor/libpcap/dist/portability.h vendor/libpcap/dist/savefile.c vendor/libpcap/dist/scanner.l vendor/libpcap/dist/sf-pcap.c vendor/libpcap/dist/sockutils.c vendor/libpcap/dist/sockutils.h Modified: vendor/libpcap/dist/CHANGES ============================================================================== --- vendor/libpcap/dist/CHANGES Fri May 18 12:13:44 2018 (r333788) +++ vendor/libpcap/dist/CHANGES Fri May 18 12:21:19 2018 (r333789) @@ -1,3 +1,30 @@ +Wednesday, Jan. 25, 2017 guy@alum.mit.edu + Summary for 1.9.0 libpcap release + Man page improvements + Fix Linux cooked mode userspace filtering (GitHub pull request #429) + Fix compilation if IPv6 support not enabled + Fix some Linux memory-mapped capture buffer size issues + Don't fail if kernel filter can't be set on Linux (GitHub issue + #549) + Improve sorting of interfaces for pcap_findalldevs() + Don't list Linux usbmon devices if usbmon module isn't loaded + Report PCAP_ERROR_PERM_DENIED if no permission to open Linux usbmon + devices + Fix DLT_ type for Solaris IPNET devices + Always return an error message for errors finding DAG or Myricom + devices + If possible, don't require that a device be openable when + enumerating them for pcap_findalldevs() + Don't put incompletely-initialized addresses in the address list for + When finding Myricom devices, update description for regular + interfaces that are Myricom devices and handle SNF_FLAGS=0x2(port + aggregation enabled) + Fix compilation error in DAG support + Fix issues with CMake configuration + Add support for stream buffers larger than 2GB on newer DAG cards + Remove support for building against DAG versions without STREAMS + support (before dag-3.0.0 2007) + Tuesday, Oct. 25, 2016 mcr@sandelman.ca Summary for 1.8.1 libpcap release Add a target in Makefile.in for Exuberant Ctags use: 'extags'. Modified: vendor/libpcap/dist/CMakeLists.txt ============================================================================== --- vendor/libpcap/dist/CMakeLists.txt Fri May 18 12:13:44 2018 (r333788) +++ vendor/libpcap/dist/CMakeLists.txt Fri May 18 12:21:19 2018 (r333789) @@ -1,272 +1,1186 @@ -cmake_minimum_required( VERSION 2.8.8 ) +cmake_minimum_required(VERSION 2.8.6) -project( pcap ) # -# Call the library "wpcap" on Windows, for backwards compatibility. +# Apple doesn't build with an install_name starting with @rpath, and +# neither do we with autotools; don't do so with CMake, either, and +# suppress warnings about that. # -if( WIN32 ) - set( LIBRARY_NAME wpcap ) -else() - set( LIBRARY_NAME pcap ) +if(POLICY CMP0042) + cmake_policy(SET CMP0042 OLD) endif() +set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/Modules) + +project(pcap) + +# +# Try to enable as many C99 features as we can. +# At minimum, we want C++/C99-style // comments. +# +# Newer versions of compilers might default to supporting C99, but older +# versions may require a special flag. +# +# Prior to CMake 3.1, setting CMAKE_C_STANDARD will not have any effect, +# so, unless and until we require CMake 3.1 or later, we have to do it +# ourselves on pre-3.1 CMake, so we just do it ourselves on all versions +# of CMake. +# +# Note: with CMake 3.1 through 3.5, the only compilers for which CMake +# handles CMAKE_C_STANDARD are GCC and Clang. 3.6 adds support only +# for Intel C; 3.9 adds support for PGI C, Sun C, and IBM XL C, and +# 3.10 adds support for Cray C and IAR C, but no version of CMake has +# support for HP C. Therefore, even if we use CMAKE_C_STANDARD with +# compilers for which CMake supports it, we may still have to do it +# ourselves on other compilers. +# +# See the CMake documentation for the CMAKE__COMPILER_ID variables +# for a list of compiler IDs. +# +# We don't worry about MSVC; it doesn't have such a flag - either it +# doesn't support the C99 features we need at all, or it supports them +# regardless of the compiler flag. +# +# XXX - this just tests whether the option works and adds it if it does. +# We don't test whether it's necessary in order to get the C99 features +# that we use; if we ever have a user who tries to compile with a compiler +# that can't be made to support those features, we can add a test to make +# sure we actually *have* C99 support. +# +include(CheckCCompilerFlag) +macro(check_and_add_compiler_option _option) + message(STATUS "Checking C compiler flag ${_option}") + string(REPLACE "=" "-" _temp_option_variable ${_option}) + string(REGEX REPLACE "^-" "" _option_variable ${_temp_option_variable}) + check_c_compiler_flag("${_option}" ${_option_variable}) + if(${${_option_variable}}) + set(C_ADDITIONAL_FLAGS "${C_ADDITIONAL_FLAGS} ${_option}") + endif() +endmacro() + +set(C_ADDITIONAL_FLAGS "") +if(CMAKE_C_COMPILER_ID MATCHES "GNU" OR + CMAKE_C_COMPILER_ID MATCHES "Clang") + check_and_add_compiler_option("-std=gnu99") +elseif(CMAKE_C_COMPILER_ID MATCHES "XL") + # + # We want support for extensions picked up for GNU C compatibility, + # so we use -qlanglvl=extc99. + # + check_and_add_compiler_option("-qlanglvl=extc99") +elseif(CMAKE_C_COMPILER_ID MATCHES "HP") + check_and_add_compiler_option("-AC99") +elseif(CMAKE_C_COMPILER_ID MATCHES "Sun") + check_and_add_compiler_option("-xc99") +elseif(CMAKE_C_COMPILER_ID MATCHES "Intel") + check_and_add_compiler_option("-c99") +endif() + +# +# Build all runtimes in the top-level binary directory; that way, +# on Windows, the executables will be in the same directory as +# the DLLs, so the system will find pcap.dll when any of the +# executables are run. +# +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/run) + ################################################################### # Parameters ################################################################### -option (INET6 "Enable IPv6" ON) -if( MSVC ) - option (USE_STATIC_RT "Use static Runtime" ON) -endif( MSVC ) -option (BUILD_SHARED_LIBS "Build shared libraries" ON) -if( WIN32 ) +if(WIN32) + # + # On Windows, allow the library name to be overridden, for the + # benefit of projects that combine libpcap with their own + # kernel-mode code to support capturing. + # + set(LIBRARY_NAME pcap CACHE STRING "Library name") +else() + # + # On UN*X, it's always been libpcap. + # + set(LIBRARY_NAME pcap) +endif() + +option(INET6 "Enable IPv6" ON) +if(WIN32) + option(USE_STATIC_RT "Use static Runtime" ON) +endif(WIN32) +option(BUILD_SHARED_LIBS "Build shared libraries" ON) +if(WIN32) set(PACKET_DLL_DIR "" CACHE PATH "Path to directory with include and lib subdirectories for packet.dll") -endif( WIN32 ) +endif(WIN32) +# To pacify those who hate the protochain instruction +option(NO_PROTOCHAIN "Disable protochain instruction" OFF) + # -# XXX - this should be an option, defaulting to "yes" for Windows and to -# "no", for now, on UN*X. +# Start out with the capture mechanism type unspecified; the user +# can explicitly specify it and, if they don't, we'll pick an +# appropriate one. # -if( WIN32 ) - set( HAVE_REMOTE 1 ) -endif( WIN32 ) +set(PCAP_TYPE "" CACHE STRING "Packet capture type") +# +# Default to having remote capture support on Windows and, for now, to +# not having it on UN*X. +# +if(WIN32) + option(ENABLE_REMOTE "Enable remote capture" ON) +else() + option(ENABLE_REMOTE "Enable remote capture" OFF) +endif(WIN32) + +if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + option(PCAP_SUPPORT_PACKET_RING "Enable Linux packet ring support" ON) + option(BUILD_WITH_LIBNL "Build with libnl" ON) +endif() + +# +# By default, build universal with the appropriate set of architectures +# for the OS on which we're doing the build. +# +if(APPLE AND "${CMAKE_OSX_ARCHITECTURES}" STREQUAL "") + # + # Get the major version of Darwin. + # + string(REGEX MATCH "^([0-9]+)" SYSTEM_VERSION_MAJOR "${CMAKE_SYSTEM_VERSION}") + + if(SYSTEM_VERSION_MAJOR LESS 8) + # + # Pre-Tiger. Build only for 32-bit PowerPC. + # + set(CMAKE_OSX_ARCHITECTURES "ppc") + elseif(SYSTEM_VERSION_MAJOR EQUAL 8) + # + # Tiger. Is this prior to, or with, Intel support? + # + # Get the minor version of Darwin. + # + string(REPLACE "${SYSTEM_VERSION_MAJOR}." "" SYSTEM_MINOR_AND_PATCH_VERSION ${CMAKE_SYSTEM_VERSION}) + string(REGEX MATCH "^([0-9]+)" SYSTEM_VERSION_MINOR "${SYSTEM_MINOR_AND_PATCH_VERSION}") + if(SYSTEM_VERSION_MINOR LESS 4) + # + # Prior to Intel support. Build for 32-bit + # PowerPC and 64-bit PowerPC, with 32-bit PowerPC + # first. (I'm guessing that's what Apple does.) + # + set(CMAKE_OSX_ARCHITECTURES "ppc;ppc64") + elseif(SYSTEM_VERSION_MINOR LESS 7) + # + # With Intel support but prior to x86-64 support. + # Build for 32-bit PowerPC, 64-bit PowerPC, and x86, + # with 32-bit PowerPC first. + # (I'm guessing that's what Apple does.) + # + set(CMAKE_OSX_ARCHITECTURES "ppc;ppc64;i386") + else() + # + # With Intel support including x86-64 support. + # Build for 32-bit PowerPC, 64-bit PowerPC, x86, + # and x86-64, with 32-bit PowerPC first. + # (I'm guessing that's what Apple does.) + # + set(CMAKE_OSX_ARCHITECTURES "ppc;ppc64;i386;x86_64") + endif() + elseif(SYSTEM_VERSION_MAJOR EQUAL 9) + # + # Leopard. Build for 32-bit PowerPC, 64-bit + # PowerPC, x86, and x86-64, with 32-bit PowerPC + # first. (That's what Apple does.) + # + set(CMAKE_OSX_ARCHITECTURES "ppc;ppc64;i386;x86_64") + elseif(SYSTEM_VERSION_MAJOR EQUAL 10) + # + # Snow Leopard. Build for x86-64, x86, and + # 32-bit PowerPC, with x86-64 first. (That's + # what Apple does, even though Snow Leopard + # doesn't run on PPC, so PPC libpcap runs under + # Rosetta, and Rosetta doesn't support BPF + # ioctls, so PPC programs can't do live + # captures.) + # + set(CMAKE_OSX_ARCHITECTURES "x86_64;i386;ppc") + else() + # + # Post-Snow Leopard. Build for x86-64 and + # x86, with x86-64 first. (That's probably what + # Apple does, given that Rosetta is gone.) + # XXX - update if and when Apple drops support + # for 32-bit x86 code. + # + set(CMAKE_OSX_ARCHITECTURES "x86_64;i386") + endif() +endif() + +# +# Additional capture modules. +# +option(DISABLE_USB "Disable USB sniffing support" OFF) +option(DISABLE_BLUETOOTH "Disable Bluetooth sniffing support" OFF) +option(DISABLE_NETMAP "Disable netmap support" OFF) +# +# We don't support D-Bus sniffing on macOS; see +# +# https://bugs.freedesktop.org/show_bug.cgi?id=74029 +# +if(APPLE) + option(DISABLE_DBUS "Disable D-Bus sniffing support" ON) +else(APPLE) + option(DISABLE_DBUS "Disable D-Bus sniffing support" OFF) +endif(APPLE) +option(DISABLE_RDMA "Disable RDMA sniffing support" OFF) + +option(DISABLE_DAG "Disable Endace DAG card support" OFF) + +option(DISABLE_SEPTEL "Disable Septel card support" OFF) +set(SEPTEL_ROOT "${CMAKE_SOURCE_DIR}/../septel" CACHE PATH "Path to directory with include and lib subdirectories for Septel API") + +option(DISABLE_SNF "Disable Myricom SNF support" OFF) + +option(DISABLE_TC "Disable Riverbed TurboCap support" OFF) + +# +# Debugging options. +# +option(BDEBUG "Build optimizer debugging code" OFF) +option(YYDEBUG "Build parser debugging code" OFF) + +################################################################### +# Versioning +################################################################### + +# Get, parse, format and set pcap's version string from [pcap_root]/VERSION +# for later use. + +# Get MAJOR, MINOR, PATCH & SUFFIX +file(STRINGS ${pcap_SOURCE_DIR}/VERSION + PACKAGE_VERSION + LIMIT_COUNT 1 # Read only the first line +) + +# Get "just" MAJOR +string(REGEX MATCH "^([0-9]+)" PACKAGE_VERSION_MAJOR "${PACKAGE_VERSION}") + +# Get MAJOR, MINOR & PATCH +string(REGEX MATCH "^([0-9]+.)?([0-9]+.)?([0-9]+)" PACKAGE_VERSION_NOSUFFIX "${PACKAGE_VERSION}") + +if(WIN32) + # Convert PCAP_VERSION_NOSUFFIX to Windows preferred version format + string(REPLACE "." "," PACKAGE_VERSION_PREDLL ${PACKAGE_VERSION_NOSUFFIX}) + + # Append NANO (used for Windows internal versioning) to PCAP_VERSION_PREDLL + # 0 means unused. + set(PACKAGE_VERSION_DLL ${PACKAGE_VERSION_PREDLL},0) +endif(WIN32) + +set(PACKAGE_NAME "${LIBRARY_NAME}") +set(PACKAGE_STRING "${LIBRARY_NAME} ${PACKAGE_VERSION}") + ###################################### # Project settings ###################################### -add_definitions( -DHAVE_CONFIG_H ) +add_definitions(-DHAVE_CONFIG_H) include_directories( ${CMAKE_CURRENT_BINARY_DIR} ${pcap_SOURCE_DIR} ) -if( WIN32 ) - if( NOT "${PACKET_DLL_DIR}" STREQUAL "" ) - include_directories("${PACKET_DLL_DIR}/Include") - if( CMAKE_CL_64 ) - link_directories("${PACKET_DLL_DIR}/Lib/x64") - else( CMAKE_CL_64 ) - link_directories("${PACKET_DLL_DIR}/Lib") - endif( CMAKE_CL_64 ) - endif() - include_directories( - ../Common/ - Win32/Include - ) -endif( WIN32) +include(CheckFunctionExists) +include(CMakePushCheckState) -add_definitions( -DBUILDING_PCAP ) +if(WIN32) -if( MSVC ) - add_definitions( -D__STDC__ ) - add_definitions( -D_CRT_SECURE_NO_WARNINGS ) - add_definitions( "-D_U_=" ) -elseif( CMAKE_COMPILER_IS_GNUCXX ) - add_definitions( "-D_U_=__attribute__((unused))" ) -else(MSVC) - add_definitions( "-D_U_=" ) -endif( MSVC ) + if(IS_DIRECTORY ${CMAKE_HOME_DIRECTORY}/../../Common) + include_directories(${CMAKE_HOME_DIRECTORY}/../../Common) + endif(IS_DIRECTORY ${CMAKE_HOME_DIRECTORY}/../../Common) -if( MSVC ) - if (USE_STATIC_RT) - MESSAGE( STATUS "Use STATIC runtime" ) - set(NAME_RT MT) - set (CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} /MT") - set (CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MT") - set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT") - set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd") + find_package(Packet) + if(PACKET_FOUND) + set(HAVE_PACKET32 TRUE) + include_directories(${PACKET_INCLUDE_DIRS}) + # + # Check whether we have the NPcap PacketIsLoopbackAdapter() + # function. + # + cmake_push_check_state() + set(CMAKE_REQUIRED_LIBRARIES ${PACKET_LIBRARIES}) + check_function_exists(PacketIsLoopbackAdapter HAVE_PACKET_IS_LOOPBACK_ADAPTER) + cmake_pop_check_state() + endif(PACKET_FOUND) - set (CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL} /MT") - set (CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} /MT") - set (CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /MT") - set (CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /MTd") - else (USE_STATIC_RT) - MESSAGE( STATUS "Use DYNAMIC runtime" ) - set(NAME_RT MD) - set (CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} /MD") - set (CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") - set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") - set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") +endif(WIN32) - set (CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL} /MD") - set (CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} /MD") - set (CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /MD") - set (CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /MDd") - endif (USE_STATIC_RT) -endif( MSVC ) +if(MSVC) + add_definitions(-D__STDC__) + add_definitions(-D_CRT_SECURE_NO_WARNINGS) +endif(MSVC) +if(USE_STATIC_RT) + message(STATUS "Use STATIC runtime") + if(MSVC) + foreach(RT_FLAG + CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE + CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO + CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE + CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO) + string(REGEX REPLACE "/MD" "/MT" ${RT_FLAG} "${${RT_FLAG}}") + endforeach(RT_FLAG) + elseif(MINGW) + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -static-libgcc") + endif() +else (USE_STATIC_RT) + message(STATUS "Use DYNAMIC runtime") +endif(USE_STATIC_RT) + ################################################################### # Detect available platform features ################################################################### include(CheckIncludeFile) -include(CheckFunctionExists) +include(CheckIncludeFiles) include(CheckStructHasMember) include(CheckTypeSize) # # Header files. # -check_include_file( inttypes.h HAVE_INTTYPES_H ) -check_include_file( stdint.h HAVE_STDINT_H ) -check_include_file( unistd.h HAVE_UNISTD_H ) -if( NOT HAVE_UNISTD_H ) - add_definitions( -DYY_NO_UNISTD_H ) -endif( NOT HAVE_UNISTD_H ) -check_include_file( bitypes.h HAVE_SYS_BITYPES_H ) -check_include_file( limits.h HAVE_LIMITS_H ) +check_include_file(inttypes.h HAVE_INTTYPES_H) +check_include_file(stdint.h HAVE_STDINT_H) +check_include_file(unistd.h HAVE_UNISTD_H) +if(NOT HAVE_UNISTD_H) + add_definitions(-DYY_NO_UNISTD_H) +endif(NOT HAVE_UNISTD_H) +check_include_file(bitypes.h HAVE_SYS_BITYPES_H) +if(NOT WIN32) + check_include_file(sys/ioccom.h HAVE_SYS_IOCCOM_H) + check_include_file(sys/sockio.h HAVE_SYS_SOCKIO_H) + check_include_file(sys/select.h HAVE_SYS_SELECT_H) +endif(NOT WIN32) +check_include_file(limits.h HAVE_LIMITS_H) +if(NOT WIN32) + check_include_file(netpacket/packet.h HAVE_NETPACKET_PACKET_H) + check_include_files("sys/types.h;sys/socket.h;net/if.h;net/pfvar.h" HAVE_NET_PFVAR_H) + if(HAVE_NET_PFVAR_H) + # + # Check for various PF actions. + # + check_c_source_compiles( +"#include +#include +#include +#include +int +main(void) +{ + return PF_NAT+PF_NONAT+PF_BINAT+PF_NOBINAT+PF_RDR+PF_NORDR; +} +" + HAVE_PF_NAT_THROUGH_PF_NORDR) + endif(HAVE_NET_PFVAR_H) + check_include_file(netinet/if_ether.h HAVE_NETINET_IF_ETHER_H) + if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + check_include_file(linux/sockios.h HAVE_LINUX_SOCKIOS_H) + # + # linux/if_bonding.h requires sys/socket.h. + # + check_include_files("sys/socket.h;linux/if_bonding.h" HAVE_LINUX_IF_BONDING_H) + endif() +endif(NOT WIN32) + # # Functions. # -check_function_exists( strerror HAVE_STRERROR ) -check_function_exists( strlcpy HAVE_STRLCPY ) -check_function_exists( snprintf HAVE_SNPRINTF ) -check_function_exists( vsnprintf HAVE_VSNPRINTF ) -check_function_exists( strtok_r HAVE_STRTOK_R ) +check_function_exists(strerror HAVE_STRERROR) +check_function_exists(strerror_r HAVE_STRERROR_R) +check_function_exists(strerror_s HAVE_STRERROR_S) +check_function_exists(strlcpy HAVE_STRLCPY) +check_function_exists(strlcat HAVE_STRLCAT) +check_function_exists(snprintf HAVE_SNPRINTF) +check_function_exists(vsnprintf HAVE_VSNPRINTF) +check_function_exists(strtok_r HAVE_STRTOK_R) -if (WIN32) +# +# These tests are for network applications that need socket functions +# and getaddrinfo()/getnameinfo()-ish functions. We now require +# getaddrinfo() and getnameinfo(). On UN*X systems, we also prefer +# versions of recvmsg() that conform to the Single UNIX Specification, +# so that we can check whether a datagram received with recvmsg() was +# truncated when received due to the buffer being too small. +# +# On Windows, getaddrinfo() is in the ws2_32 library. + +# On most UN*X systems, they're available in the system library. +# +# Under Solaris, we need to link with libsocket and libnsl to get +# getaddrinfo() and getnameinfo() and, if we have libxnet, we need to +# link with libxnet before libsocket to get a version of recvmsg() +# that conforms to the Single UNIX Specification. +# +# We use getaddrinfo() because we want a portable thread-safe way +# of getting information for a host name or port; there exist _r +# versions of gethostbyname() and getservbyname() on some platforms, +# but not on all platforms. +# +# NOTE: if you hand check_library_exists as its last argument a variable +# that's been set, it skips the test, so we need different variables. +# +set(PCAP_LINK_LIBRARIES "") +include(CheckLibraryExists) +include(CheckSymbolExists) +if(WIN32) # - # Check for Windows-only functions, such as packet.dll functions. + # We need winsock2.h and ws2tcpip.h. # - check_function_exists( PacketIsLoopbackAdapter HAVE_PACKET_IS_LOOPBACK_ADAPTER ) -endif() + cmake_push_check_state() + set(CMAKE_REQUIRED_LIBRARIES ws2_32) + check_symbol_exists(getaddrinfo "winsock2.h;ws2tcpip.h" LIBWS2_32_HAS_GETADDRINFO) + cmake_pop_check_state() + if(LIBWS2_32_HAS_GETADDRINFO) + set(PCAP_LINK_LIBRARIES ws2_32 ${PCAP_LINK_LIBRARIES}) + else(LIBWS2_32_HAS_GETADDRINFO) + message(FATAL_ERROR "getaddrinfo is required, but wasn't found") + endif(LIBWS2_32_HAS_GETADDRINFO) +else(WIN32) + # + # UN*X. First try the system libraries, then try the libraries + # for Solaris and possibly other systems that picked up the + # System V library split. + # + check_function_exists(getaddrinfo STDLIBS_HAVE_GETADDRINFO) + if(NOT STDLIBS_HAVE_GETADDRINFO) + # + # Not found in the standard system libraries. + # Try libsocket, which requires libnsl. + # + cmake_push_check_state() + set(CMAKE_REQUIRED_LIBRARIES nsl) + check_library_exists(socket getaddrinfo "" LIBSOCKET_HAS_GETADDRINFO) + cmake_pop_check_state() + if(LIBSOCKET_HAS_GETADDRINFO) + # + # OK, we found it in libsocket. + # + set(PCAP_LINK_LIBRARIES socket nsl ${PCAP_LINK_LIBRARIES}) + else(LIBSOCKET_HAS_GETADDRINFO) + # + # We didn't find it. + # + message(FATAL_ERROR "getaddrinfo is required, but wasn't found") + endif(LIBSOCKET_HAS_GETADDRINFO) + # + # OK, do we have recvmsg() in libxnet? + # We also link with libsocket and libnsl. + # + cmake_push_check_state() + set(CMAKE_REQUIRED_LIBRARIES socket nsl) + check_library_exists(xnet recvmsg "" LIBXNET_HAS_RECVMSG) + cmake_pop_check_state() + if(LIBXNET_HAS_RECVMSG) + # + # Yes - link with it as well. + # + set(PCAP_LINK_LIBRARIES xnet ${PCAP_LINK_LIBRARIES}) + endif(LIBXNET_HAS_RECVMSG) + endif(NOT STDLIBS_HAVE_GETADDRINFO) + + # DLPI needs putmsg under HPUX so test for -lstr while we're at it + check_function_exists(putmsg STDLIBS_HAVE_PUTMSG) + if(NOT STDLIBS_HAVE_PUTMSG) + check_library_exists(str putmsg "" LIBSTR_HAS_PUTMSG) + if(LIBSTR_HAS_PUTMSG) + set(PCAP_LINK_LIBRARIES str ${PCAP_LINK_LIBRARIES}) + endif(LIBSTR_HAS_PUTMSG) + endif(NOT STDLIBS_HAVE_PUTMSG) +endif(WIN32) + # +# Check for reentrant versions of getnetbyname_r(), as provided by +# Linux (glibc), Solaris/IRIX, and AIX (with three different APIs!). +# If we don't find one, we just use getnetbyname(), which uses +# thread-specific data on many platforms, but doesn't use it on +# NetBSD or OpenBSD, and may not use it on older versions of other +# platforms. +# +# Only do the check if we have a declaration of getnetbyname_r(); +# without it, we can't check which API it has. (We assume that +# if there's a declaration, it has a prototype, so that the API +# can be checked.) +# +cmake_push_check_state() +set(CMAKE_REQUIRED_LIBRARIES ${PCAP_LINK_LIBRARIES}) +check_symbol_exists(getnetbyname_r netdb.h NETDB_H_DECLARES_GETNETBYNAME_R) +if(NETDB_H_DECLARES_GETNETBYNAME_R) + check_c_source_compiles( +"#include + +int +main(void) +{ + struct netent netent_buf; + char buf[1024]; + struct netent *resultp; + int h_errnoval; + + return getnetbyname_r((const char *)0, &netent_buf, buf, sizeof buf, &resultp, &h_errnoval); +} +" + HAVE_LINUX_GETNETBYNAME_R) + if(NOT HAVE_LINUX_GETNETBYNAME_R) + check_c_source_compiles( +"#include + +int +main(void) +{ + struct netent netent_buf; + char buf[1024]; + + return getnetbyname_r((const char *)0, &netent_buf, buf, (int)sizeof buf) != NULL; +} +" + HAVE_SOLARIS_IRIX_GETNETBYNAME_R) + if(NOT HAVE_SOLARIS_IRIX_GETNETBYNAME_R) + check_c_source_compiles( +"#include + +int +main(void) +{ + struct netent netent_buf; + struct netent_data net_data; + + return getnetbyname_r((const char *)0, &netent_buf, &net_data); +} +" + HAVE_AIX_GETNETBYNAME_R) + endif(NOT HAVE_SOLARIS_IRIX_GETNETBYNAME_R) + endif(NOT HAVE_LINUX_GETNETBYNAME_R) +endif(NETDB_H_DECLARES_GETNETBYNAME_R) +cmake_pop_check_state() + +# +# Check for reentrant versions of getprotobyname_r(), as provided by +# Linux (glibc), Solaris/IRIX, and AIX (with three different APIs!). +# If we don't find one, we just use getprotobyname(), which uses +# thread-specific data on many platforms, but doesn't use it on +# NetBSD or OpenBSD, and may not use it on older versions of other +# platforms. +# +# Only do the check if we have a declaration of getprotobyname_r(); +# without it, we can't check which API it has. (We assume that +# if there's a declaration, it has a prototype, so that the API +# can be checked.) +# +cmake_push_check_state() +set(CMAKE_REQUIRED_LIBRARIES ${PCAP_LINK_LIBRARIES}) +check_symbol_exists(getprotobyname_r netdb.h NETDB_H_DECLARES_GETPROTOBYNAME_R) +if(NETDB_H_DECLARES_GETPROTOBYNAME_R) + check_c_source_compiles( +"#include + +int +main(void) +{ + struct protoent protoent_buf; + char buf[1024]; + struct protoent *resultp; + + return getprotobyname_r((const char *)0, &protoent_buf, buf, sizeof buf, &resultp); +} +" + HAVE_LINUX_GETPROTOBYNAME_R) + if(NOT HAVE_LINUX_GETPROTOBYNAME_R) + check_c_source_compiles( +"#include + +int +main(void) +{ + struct protoent protoent_buf; + char buf[1024]; + + return getprotobyname_r((const char *)0, &protoent_buf, buf, (int)sizeof buf) != NULL; +} +" + HAVE_SOLARIS_IRIX_GETPROTOBYNAME_R) + if(NOT HAVE_SOLARIS_IRIX_GETPROTOBYNAME_R) + check_c_source_compiles( +"#include + +int +main(void) +{ + struct protoent protoent_buf; + struct protoent_data proto_data; + + return getprotobyname_r((const char *)0, &protoent_buf, &proto_data); +} +" + HAVE_AIX_GETPROTOBYNAME_R) + endif(NOT HAVE_SOLARIS_IRIX_GETPROTOBYNAME_R) + endif(NOT HAVE_LINUX_GETPROTOBYNAME_R) +endif(NETDB_H_DECLARES_GETPROTOBYNAME_R) +cmake_pop_check_state() + +# # Data types. # -# XXX - there's no check_struct() macro that's like check_struct_has_member() +# XXX - there's no check_type() macro that's like check_type_size() # except that it only checks for the existence of the structure type, -# so we use check_struct_has_member() and look for ss_family. +# so we use check_type_size() and ignore the size. # -check_struct_has_member("struct sockaddr_storage" ss_family sys/socket.h HAVE_SOCKADDR_STORAGE) -set(CMAKE_EXTRA_INCLUDE_FILES unistd.h sys/socket.h) +cmake_push_check_state() +if(WIN32) + set(CMAKE_EXTRA_INCLUDE_FILES winsock2.h) +else(WIN32) + set(CMAKE_EXTRA_INCLUDE_FILES unistd.h sys/socket.h) +endif(WIN32) +check_type_size("struct sockaddr_storage" STRUCT_SOCKADDR_STORAGE) check_type_size("socklen_t" SOCKLEN_T) -set(CMAKE_EXTRA_INCLUDE_FILES unistd.h) +cmake_pop_check_state() # # Structure fields. # -check_struct_has_member("struct sockaddr" sa_len sys/socket.h HAVE_SOCKADDR_SA_LEN ) +if(WIN32) + check_struct_has_member("struct sockaddr" sa_len winsock2.h HAVE_STRUCT_SOCKADDR_SA_LEN) +else(WIN32) + check_struct_has_member("struct sockaddr" sa_len sys/socket.h HAVE_STRUCT_SOCKADDR_SA_LEN) +endif(WIN32) -if( INET6 ) - MESSAGE( STATUS "Use IPv6" ) -endif( INET6 ) +# +# Do we have ffs(), and is it declared in ? +# +check_function_exists(ffs HAVE_FFS) +if(HAVE_FFS) + # + # OK, we have ffs(). Is it declared in ? + # + # This test fails if we don't have or if we do + # but it doesn't declare ffs(). + # + check_symbol_exists(ffs strings.h STRINGS_H_DECLARES_FFS) +endif() -if( WIN32 ) - add_definitions( -DHAVE_ADDRINFO ) -endif( WIN32 ) +# +# This requires the libraries that we require, as ether_hostton might be +# in one of those libraries. That means we have to do this after +# we check for those libraries. +# +# You are in a twisty little maze of UN*Xes, all different. +# Some might not have ether_hostton(). +# Some might have it and declare it in . +# Some might have it and declare it in +# Some might have it and declare it in . +# Some might have it and declare it in . +# Some might have it and declare it in . +# Some might have it and not declare it in any header file. +# +# Before you is a C compiler. +# +cmake_push_check_state() +set(CMAKE_REQUIRED_LIBRARIES ${PCAP_LINK_LIBRARIES}) +check_function_exists(ether_hostton HAVE_ETHER_HOSTTON) +if(HAVE_ETHER_HOSTTON) + # + # OK, we have ether_hostton(). Is it declared in ? + # + # This test fails if we don't have or if we do + # but it doesn't declare ether_hostton(). + # + check_symbol_exists(ether_hostton net/ethernet.h NET_ETHERNET_H_DECLARES_ETHER_HOSTTON) + if(NET_ETHERNET_H_DECLARES_ETHER_HOSTTON) + # + # Yes - we have it declared. + # + set(HAVE_DECL_ETHER_HOSTTON TRUE) + endif() + # + # Did that succeed? + # + if(NOT HAVE_DECL_ETHER_HOSTTON) + # + # No - how about , as on Linux? + # + # This test fails if we don't have + # or if we do but it doesn't declare ether_hostton(). + # + check_symbol_exists(ether_hostton netinet/ether.h NETINET_ETHER_H_DECLARES_ETHER_HOSTTON) + if(NETINET_ETHER_H_DECLARES_ETHER_HOSTTON) + # + # Yes - we have it declared. + # + set(HAVE_DECL_ETHER_HOSTTON TRUE) + endif() + endif() + # + # Did that succeed? + # + if(NOT HAVE_DECL_ETHER_HOSTTON) + # + # No - how about , as on Solaris 10 and later? + # + # This test fails if we don't have + # or if we do but it doesn't declare ether_hostton(). + # + check_symbol_exists(ether_hostton sys/ethernet.h SYS_ETHERNET_H_DECLARES_ETHER_HOSTTON) + if(SYS_ETHERNET_H_DECLARES_ETHER_HOSTTON) + # + # Yes - we have it declared. + # + set(HAVE_DECL_ETHER_HOSTTON TRUE) + endif() + endif() + # + # Did that succeed? + # + if(NOT HAVE_DECL_ETHER_HOSTTON) + # + # No, how about , as on AIX? + # + # This test fails if we don't have + # or if we do but it doesn't declare ether_hostton(). + # + check_symbol_exists(ether_hostton arpa/inet.h ARPA_INET_H_DECLARES_ETHER_HOSTTON) + if(ARPA_INET_H_DECLARES_ETHER_HOSTTON) + # + # Yes - we have it declared. + # + set(HAVE_DECL_ETHER_HOSTTON TRUE) + endif() + endif() + # + # Did that succeed? + # + if(NOT HAVE_DECL_ETHER_HOSTTON) + # + # No, how about ? + # On some platforms, it requires and + # , and we always include it with + # both of them, so test it with both of them. + # + # This test fails if we don't have + # and the headers we include before it, or if we do but + # doesn't declare ether_hostton(). + # + check_symbol_exists(ether_hostton "sys/types.h;sys/socket.h;net/if.h;netinet/in.h;netinet/if_ether.h" NETINET_IF_ETHER_H_DECLARES_ETHER_HOSTTON) + if(NETINET_IF_ETHER_H_DECLARES_ETHER_HOSTTON) + # + # Yes - we have it declared. + # + set(HAVE_DECL_ETHER_HOSTTON TRUE) + endif() + endif() + # + # After all that, is ether_hostton() declared? + # + if(NOT HAVE_DECL_ETHER_HOSTTON) + # + # No, we'll have to declare it ourselves. + # Do we have "struct ether_addr" if we include ? + # + # XXX - there's no check_type() macro that's like check_type_size() + # except that it only checks for the existence of the structure type, + # so we use check_type_size() and ignore the size. + # + cmake_push_check_state() + set(CMAKE_EXTRA_INCLUDE_FILES sys/types.h sys/socket.h net/if.h netinet/in.h netinet/if_ether.h) + check_type_size("struct ether_addr" STRUCT_ETHER_ADDR) + cmake_pop_check_state() + endif() +endif() +cmake_pop_check_state() -###################################### -# External dependencies -###################################### +# +# Large file support on UN*X, a/k/a LFS. +# +if(NOT WIN32) + include(FindLFS) + if(LFS_FOUND) + # + # Add the required #defines. + # + add_definitions(${LFS_DEFINITIONS}) + endif() + # + # Check for fseeko as well. + # + include(FindFseeko) + if(FSEEKO_FOUND) + set(HAVE_FSEEKO ON) + + # + # Add the required #defines. + # + add_definitions(${FSEEKO_DEFINITIONS}) + endif() +endif() + +if(INET6) + message(STATUS "Support IPv6") +endif(INET6) + +# +# Pthreads. +# We might need them, because some libraries we use might use them, +# but we don't necessarily need them. +# That's only on UN*X; on Windows, if they use threads, we assume +# they're native Windows threads. +# +if(NOT WIN32) + set(CMAKE_THREAD_PREFER_PTHREAD ON) + find_package(Threads) + if(NOT CMAKE_USE_PTHREADS_INIT) + # + # If it's not pthreads, we won't use it; we use it for libraries + # that require it. + # + set(CMAKE_THREAD_LIBS_INIT "") + endif(NOT CMAKE_USE_PTHREADS_INIT) +endif(NOT WIN32) + ###################################### # Input files ###################################### set(PROJECT_SOURCE_LIST_C bpf_dump.c + bpf_filter.c bpf_image.c etherent.c - fad-helpers.c + fmtutils.c gencode.c - inet.c nametoaddr.c optimize.c pcap-common.c *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-vendor@freebsd.org Fri May 18 19:49:58 2018 Return-Path: Delivered-To: svn-src-vendor@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3783DED9636; Fri, 18 May 2018 19:49:58 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id DB9DB86847; Fri, 18 May 2018 19:49:57 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BC94C1C947; Fri, 18 May 2018 19:49:57 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w4IJnvE4065554; Fri, 18 May 2018 19:49:57 GMT (envelope-from sjg@FreeBSD.org) Received: (from sjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w4IJnsAu065535; Fri, 18 May 2018 19:49:54 GMT (envelope-from sjg@FreeBSD.org) Message-Id: <201805181949.w4IJnsAu065535@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org using -f From: "Simon J. Gerraty" Date: Fri, 18 May 2018 19:49:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r333811 - in vendor/NetBSD/bmake/dist: . mk X-SVN-Group: vendor X-SVN-Commit-Author: sjg X-SVN-Commit-Paths: in vendor/NetBSD/bmake/dist: . mk X-SVN-Commit-Revision: 333811 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 May 2018 19:49:58 -0000 Author: sjg Date: Fri May 18 19:49:54 2018 New Revision: 333811 URL: https://svnweb.freebsd.org/changeset/base/333811 Log: Import bmake-20180512 Of relevance: o job.c: skip polling job token pipe o parse.c: be more cautious about detecting depenency line rather than sysV style include. also in mk: * dirdeps.mk: include local.dirdeps-build.mk when .MAKE.LEVEL > 0 ie. we are building something. * FILES: add dirdeps-options.mk to deal with optional DIRDEPS. * ldorder.mk: describe how to use LDORDER_EXTERN_BARRIER if needed. Added: vendor/NetBSD/bmake/dist/mk/dirdeps-options.mk (contents, props changed) Modified: vendor/NetBSD/bmake/dist/ChangeLog vendor/NetBSD/bmake/dist/VERSION vendor/NetBSD/bmake/dist/bmake.1 vendor/NetBSD/bmake/dist/job.c vendor/NetBSD/bmake/dist/make.1 vendor/NetBSD/bmake/dist/mk/ChangeLog vendor/NetBSD/bmake/dist/mk/FILES vendor/NetBSD/bmake/dist/mk/cython.mk vendor/NetBSD/bmake/dist/mk/dirdeps.mk vendor/NetBSD/bmake/dist/mk/gendirdeps.mk vendor/NetBSD/bmake/dist/mk/install-mk vendor/NetBSD/bmake/dist/mk/ldorder.mk vendor/NetBSD/bmake/dist/mk/meta.autodep.mk vendor/NetBSD/bmake/dist/mk/own.mk vendor/NetBSD/bmake/dist/parse.c Modified: vendor/NetBSD/bmake/dist/ChangeLog ============================================================================== --- vendor/NetBSD/bmake/dist/ChangeLog Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/ChangeLog Fri May 18 19:49:54 2018 (r333811) @@ -1,3 +1,16 @@ +2018-05-12 Simon J. Gerraty + + * VERSION: 20180512 + Merge with NetBSD make, pick up + o job.c: skip polling job token pipe + +2018-04-05 Simon J. Gerraty + + * VERSION: 20180405 + Merge with NetBSD make, pick up + o parse.c: be more cautious about detecting depenency line + rather than sysV style include. + 2018-02-22 Simon J. Gerraty * VERSION: 20180222 Modified: vendor/NetBSD/bmake/dist/VERSION ============================================================================== --- vendor/NetBSD/bmake/dist/VERSION Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/VERSION Fri May 18 19:49:54 2018 (r333811) @@ -1,2 +1,2 @@ # keep this compatible with sh and make -_MAKE_VERSION=20180222 +_MAKE_VERSION=20180512 Modified: vendor/NetBSD/bmake/dist/bmake.1 ============================================================================== --- vendor/NetBSD/bmake/dist/bmake.1 Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/bmake.1 Fri May 18 19:49:54 2018 (r333811) @@ -1,4 +1,4 @@ -.\" $NetBSD: make.1,v 1.271 2017/07/03 21:34:20 wiz Exp $ +.\" $NetBSD: make.1,v 1.272 2018/04/02 04:26:17 dholland Exp $ .\" .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. @@ -1865,7 +1865,8 @@ expression is applied. Similarly, if the form is .Ql Ic .ifmake or -.Ql Ic .ifnmake , the +.Ql Ic .ifnmake , +the .Dq make expression is applied. .Pp Modified: vendor/NetBSD/bmake/dist/job.c ============================================================================== --- vendor/NetBSD/bmake/dist/job.c Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/job.c Fri May 18 19:49:54 2018 (r333811) @@ -1,4 +1,4 @@ -/* $NetBSD: job.c,v 1.192 2018/02/08 09:05:21 dholland Exp $ */ +/* $NetBSD: job.c,v 1.195 2018/05/13 22:13:28 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990 The Regents of the University of California. @@ -70,14 +70,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: job.c,v 1.192 2018/02/08 09:05:21 dholland Exp $"; +static char rcsid[] = "$NetBSD: job.c,v 1.195 2018/05/13 22:13:28 sjg Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)job.c 8.2 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: job.c,v 1.192 2018/02/08 09:05:21 dholland Exp $"); +__RCSID("$NetBSD: job.c,v 1.195 2018/05/13 22:13:28 sjg Exp $"); #endif #endif /* not lint */ #endif @@ -2969,7 +2969,6 @@ Job_TokenWithdraw(void) } if (DEBUG(JOB)) fprintf(debug_file, "(%d) blocked for token\n", getpid()); - wantToken = 1; return FALSE; } Modified: vendor/NetBSD/bmake/dist/make.1 ============================================================================== --- vendor/NetBSD/bmake/dist/make.1 Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/make.1 Fri May 18 19:49:54 2018 (r333811) @@ -1,4 +1,4 @@ -.\" $NetBSD: make.1,v 1.271 2017/07/03 21:34:20 wiz Exp $ +.\" $NetBSD: make.1,v 1.272 2018/04/02 04:26:17 dholland Exp $ .\" .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. @@ -1865,7 +1865,8 @@ expression is applied. Similarly, if the form is .Ql Ic .ifmake or -.Ql Ic .ifnmake , the +.Ql Ic .ifnmake , +the .Dq make expression is applied. .Pp Modified: vendor/NetBSD/bmake/dist/mk/ChangeLog ============================================================================== --- vendor/NetBSD/bmake/dist/mk/ChangeLog Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/mk/ChangeLog Fri May 18 19:49:54 2018 (r333811) @@ -1,3 +1,20 @@ +2018-04-20 Simon J Gerraty + + * install-mk (MK_VERSION): 20180420 + * dirdeps.mk: include local.dirdeps-build.mk when .MAKE.LEVEL > 0 + ie. we are building something. + +2018-04-14 Simon J Gerraty + + * FILES: add dirdeps-options.mk to deal with optional DIRDEPS. + +2018-04-05 Simon J Gerraty + + * install-mk (MK_VERSION): 20180405 + + * ldorder.mk: describe how to use LDORDER_EXTERN_BARRIER + if needed. + 2018-01-18 Simon J Gerraty * install-mk (MK_VERSION): 20180118 Modified: vendor/NetBSD/bmake/dist/mk/FILES ============================================================================== --- vendor/NetBSD/bmake/dist/mk/FILES Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/mk/FILES Fri May 18 19:49:54 2018 (r333811) @@ -59,6 +59,7 @@ warnings.mk whats.mk yacc.mk dirdeps.mk +dirdeps-options.mk gendirdeps.mk install-new.mk meta2deps.py Modified: vendor/NetBSD/bmake/dist/mk/cython.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/cython.mk Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/mk/cython.mk Fri May 18 19:49:54 2018 (r333811) @@ -1,5 +1,5 @@ # RCSid: -# $Id: cython.mk,v 1.6 2014/10/15 06:23:51 sjg Exp $ +# $Id: cython.mk,v 1.7 2018/03/25 18:46:11 sjg Exp $ # # @(#) Copyright (c) 2014, Simon J. Gerraty # @@ -14,15 +14,6 @@ # sjg@crufty.net # -# this is what we build -CYTHON_MODULE = ${CYTHON_MODULE_NAME}${CYTHON_PYVERSION}.so - -CYTHON_MODULE_NAME?= it -CYTHON_SRCS?= ${CYTHON_MODULE_NAME}.pyx - -# this is where we save generated src -CYTHON_SAVEGENDIR?= ${.CURDIR}/gen - # pyprefix is where python bits are # which may not be where we want to put ours (prefix) .if exists(/usr/pkg/include) @@ -34,13 +25,36 @@ PYTHON_VERSION?= 2.7 PYTHON_H?= ${pyprefix}/include/python${PYTHON_VERSION}/Python.h PYVERSION:= ${PYTHON_VERSION:C,\..*,,} +CFLAGS+= -I${PYTHON_H:H} + +# conf.host_target() is limited to uname -m rather than uname -p +_HOST_MACHINE!= uname -m +.if ${HOST_TARGET:M*${_HOST_MACHINE}} == "" +PY_HOST_TARGET:= ${HOST_TARGET:S,${_HOST_ARCH:U${uname -p:L:sh}}$,${_HOST_MACHINE},} +.endif + +COMPILE.c?= ${CC} -c ${CFLAGS} +PICO?= .pico + +.SUFFIXES: ${PICO} .c + +.c${PICO}: + ${COMPILE.c} ${PICFLAG} ${CC_PIC} ${.IMPSRC} -o ${.TARGET} + +# this is what we build +.if !empty(CYTHON_MODULE_NAME) +CYTHON_MODULE = ${CYTHON_MODULE_NAME}${CYTHON_PYVERSION}.so + +CYTHON_SRCS?= ${CYTHON_MODULE_NAME}.pyx + +# this is where we save generated src +CYTHON_SAVEGENDIR?= ${.CURDIR}/gen + # set this empty if you don't want to handle multiple versions .if !defined(CYTHON_PYVERSION) CYTHON_PYVERSION:= ${PYVERSION} .endif -CFLAGS+= -I${PYTHON_H:H} - CYTHON_GENSRCS= ${CYTHON_SRCS:R:S,$,${CYTHON_PYVERSION}.c,} SRCS+= ${CYTHON_GENSRCS} @@ -70,20 +84,9 @@ save-gen: ${CYTHON_GENSRCS} .endif -COMPILE.c?= ${CC} -c ${CFLAGS} +${CYTHON_MODULE}: ${SRCS:S,.c,${PICO},} + ${CC} ${CC_SHARED:U-shared} -o ${.TARGET} ${.ALLSRC:M*${PICO}} ${LDADD} -.c.So: - ${COMPILE.c} ${PICFLAG} ${CC_PIC} ${.IMPSRC} -o ${.TARGET} - -${CYTHON_MODULE}: ${SRCS:S,.c,.So,} - ${CC} ${CC_SHARED:U-shared} -o ${.TARGET} ${.ALLSRC:M*.So} ${LDADD} - -# conf.host_target() is limited to uname -m rather than uname -p -_HOST_MACHINE!= uname -m -.if ${HOST_TARGET:M*${_HOST_MACHINE}} == "" -PY_HOST_TARGET:= ${HOST_TARGET:S,${_HOST_ARCH:U${uname -p:L:sh}}$,${_HOST_MACHINE},} -.endif - MODULE_BINDIR?= ${.CURDIR:H}/${PY_HOST_TARGET:U${HOST_TARGET}} build-cython-module: ${CYTHON_MODULE} @@ -93,4 +96,6 @@ install-cython-module: ${CYTHON_MODULE} ${INSTALL} -d ${DESTDIR}${MODULE_BINDIR} ${INSTALL} -m 755 ${.ALLSRC} ${DESTDIR}${MODULE_BINDIR} -CLEANFILES+= *.So ${CYTHON_MODULE} +CLEANFILES+= *${PICO} ${CYTHON_MODULE} + +.endif Added: vendor/NetBSD/bmake/dist/mk/dirdeps-options.mk ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/NetBSD/bmake/dist/mk/dirdeps-options.mk Fri May 18 19:49:54 2018 (r333811) @@ -0,0 +1,70 @@ +# $Id: dirdeps-options.mk,v 1.5 2018/04/18 15:53:57 sjg Exp $ +# +# @(#) Copyright (c) 2018, Simon J. Gerraty +# +# This file is provided in the hope that it will +# be of use. There is absolutely NO WARRANTY. +# Permission to copy, redistribute or otherwise +# use this file is hereby granted provided that +# the above copyright notice and this notice are +# left intact. +# +# Please send copies of changes and bug-fixes to: +# sjg@crufty.net +# + +## +# +# This makefile is used to deal with optional DIRDEPS. +# +# It is to be included by Makefile.depend.options in a +# directory which has DIRDEPS affected by optional features. +# Makefile.depend.options should set DIRDEPS_OPTIONS and +# may also set specific DIRDEPS.* for those options. +# +# If a Makefile.depend.options file exists, it will be included by +# dirdeps.mk and meta.autodep.mk +# +# We include local.dirdeps-option.mk which may also define DIRDEPS.* +# for options. +# +# Thus a directory, that is affected by an option FOO would have +# a Makefile.depend.options that sets +# DIRDEPS_OPTIONS= FOO +# It can also set either/both of +# DIRDEPS.FOO.yes +# DIRDEPS.FOO.no +# to whatever applies for that dir, or it can rely on globals +# set in local.dirdeps-option.mk +# Either way, we will .undef DIRDEPS.* when done. + +# This should have been set by Makefile.depend.options +# before including us +DIRDEPS_OPTIONS ?= + +# pickup any DIRDEPS.* we need +.-include + +.if ${.MAKE.LEVEL} == 0 +# :U below avoids potential errors when we := +.for o in ${DIRDEPS_OPTIONS:tu} +DIRDEPS += ${DIRDEPS.$o.${MK_$o:U}:U} +.endfor +DIRDEPS := ${DIRDEPS:O:u} +# avoid cross contamination +.undef ${DIRDEPS_OPTIONS:tu:@o@DIRDEPS.$o.yes DIRDEPS.$o.no@} +.else +# whether options are enabled or not, +# we want to filter out the relevant DIRDEPS.* +# we should only be included by meta.autodep.mk +# if dependencies are to be updated +.for o in ${DIRDEPS_OPTIONS:tu} +.for d in ${DIRDEPS.$o.yes} ${DIRDEPS.$o.no} +.if exists(${SRCTOP}/$d) +GENDIRDEPS_FILTER += N$d* +.elif exists(${SRCTOP}/${d:R}) +GENDIRDEPS_FILTER += N${d:R}* +.endif +.endfor +.endfor +.endif Modified: vendor/NetBSD/bmake/dist/mk/dirdeps.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/dirdeps.mk Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/mk/dirdeps.mk Fri May 18 19:49:54 2018 (r333811) @@ -1,17 +1,17 @@ -# $Id: dirdeps.mk,v 1.90 2017/10/25 23:44:20 sjg Exp $ +# $Id: dirdeps.mk,v 1.95 2018/04/23 17:53:56 sjg Exp $ # Copyright (c) 2010-2013, Juniper Networks, Inc. # All rights reserved. -# +# # Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: +# modification, are permitted provided that the following conditions +# are met: # 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. +# notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# +# documentation and/or other materials provided with the distribution. +# # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR @@ -22,7 +22,7 @@ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # Much of the complexity here is for supporting cross-building. # If a tree does not support that, simply using plain Makefile.depend @@ -56,7 +56,7 @@ # .MAKE.DEPENDFILE_PREFIX) to refer to these makefiles to # distinguish them from others. # -# Before each Makefile.depend file is read, we set +# Before each Makefile.depend file is read, we set # DEP_RELDIR to be the RELDIR (path relative to SRCTOP) for # its directory, and DEP_MACHINE etc according to the . # represented by the suffix of the corresponding target. @@ -89,7 +89,7 @@ # # For example: # -# # Always list MACHINE first, +# # Always list MACHINE first, # # other variables might be optional. # TARGET_SPEC_VARS = MACHINE TARGET_OS # .if ${TARGET_SPEC:Uno:M*,*} != "" @@ -101,7 +101,7 @@ # # and deal with MACHINE=${TARGET_SPEC} in the environment. # TARGET_SPEC = # # export but do not track -# .export-env TARGET_SPEC +# .export-env TARGET_SPEC # .export ${TARGET_SPEC_VARS} # .for v in ${TARGET_SPEC_VARS:O:u} # .if empty($v) @@ -328,7 +328,7 @@ _DEP_RELDIR := ${DEP_RELDIR} .endif # DIRDEPS_CACHE can be very handy for debugging. -# Also if repeatedly building the same target, +# Also if repeatedly building the same target, # we can avoid the overhead of re-computing the tree dependencies. MK_DIRDEPS_CACHE ?= no BUILD_DIRDEPS_CACHE ?= no @@ -441,7 +441,7 @@ _only_machines := ${_only_machines:O:u} # make sure we have a starting place? DIRDEPS ?= ${RELDIR} -.endif # target +.endif # target .if !defined(NO_DIRDEPS) && !defined(NO_DIRDEPS_BELOW) .if ${MK_DIRDEPS_CACHE} == "yes" @@ -451,7 +451,7 @@ build-dirdeps: M_oneperline = @x@\\${.newline} $$x@ -.if ${BUILD_DIRDEPS_CACHE} == "no" +.if ${BUILD_DIRDEPS_CACHE} == "no" .if !target(dirdeps-cached) # we do this via sub-make BUILD_DIRDEPS = no @@ -469,7 +469,7 @@ dirdeps-cached: ${DIRDEPS_CACHE} .MAKE BUILD_DIRDEPS_MAKEFILE ?= ${MAKEFILE} BUILD_DIRDEPS_TARGETS ?= ${.TARGETS} -# we need the .meta file to ensure we update if +# we need the .meta file to ensure we update if # any of the Makefile.depend* changed. # We do not want to compare the command line though. ${DIRDEPS_CACHE}: .META .NOMETA_CMP @@ -528,6 +528,7 @@ _this_dir := ${SRCTOP}/${DEP_RELDIR} # on rare occasions, there can be a need for extra help _dep_hack := ${_this_dir}/${.MAKE.DEPENDFILE_PREFIX}.inc .-include <${_dep_hack}> +.-include <${_dep_hack:R}.options> .if ${DEP_RELDIR} != ${_DEP_RELDIR} || ${DEP_TARGET_SPEC} != ${TARGET_SPEC} # this should be all @@ -581,7 +582,7 @@ _build_dirs += ${_machines:N${DEP_TARGET_SPEC}:@m@${_C .if ${_debug_reldir} .info ${DEP_RELDIR}.${DEP_TARGET_SPEC}: DIRDEPS='${DIRDEPS}' -.info ${DEP_RELDIR}.${DEP_TARGET_SPEC}: _machines='${_machines}' +.info ${DEP_RELDIR}.${DEP_TARGET_SPEC}: _machines='${_machines}' .endif .if !empty(DIRDEPS) @@ -589,7 +590,7 @@ _build_dirs += ${_machines:N${DEP_TARGET_SPEC}:@m@${_C DEP_DIRDEPS_FILTER = \ ${DIRDEPS_FILTER.${DEP_TARGET_SPEC}:U} \ ${TARGET_SPEC_VARS:@v@${DIRDEPS_FILTER.${DEP_$v}:U}@} \ - ${DIRDEPS_FILTER:U} + ${DIRDEPS_FILTER:U} .if empty(DEP_DIRDEPS_FILTER) # something harmless DEP_DIRDEPS_FILTER = U @@ -598,7 +599,7 @@ DEP_DIRDEPS_FILTER = U # this is what we start with __depdirs := ${DIRDEPS:${NSkipDir}:${DEP_DIRDEPS_FILTER:ts:}:C,//+,/,g:O:u:@d@${SRCTOP}/$d@} -# some entries may be qualified with . +# some entries may be qualified with . # the :M*/*/*.* just tries to limit the dirs we check to likely ones. # the ${d:E:M*/*} ensures we don't consider junos/usr.sbin/mgd __qual_depdirs := ${__depdirs:M*/*/*.*:@d@${exists($d):?:${"${d:E:M*/*}":?:${exists(${d:R}):?$d:}}}@} @@ -606,7 +607,8 @@ __unqual_depdirs := ${__depdirs:${__qual_depdirs:Uno:$ .if ${DEP_RELDIR} == ${_DEP_RELDIR} # if it was called out - we likely need it. -__hostdpadd := ${DPADD:U.:M${HOST_OBJTOP}/*:S,${HOST_OBJTOP}/,,:H:${NSkipDir}:${DIRDEPS_FILTER:ts:}:S,$,.host,:N.*:@d@${SRCTOP}/$d@} +__hostdpadd := ${DPADD:U.:M${HOST_OBJTOP}/*:S,${HOST_OBJTOP}/,,:H:${NSkipDir}:${DIRDEPS_FILTER:ts:}:S,$,.host,:N.*:@d@${SRCTOP}/$d@} \ + ${DPADD:U.:M${HOST_OBJTOP32:Uno}/*:S,${HOST_OBJTOP32:Uno}/,,:H:${NSkipDir}:${DIRDEPS_FILTER:ts:}:S,$,.host32,:N.*:@d@${SRCTOP}/$d@} __qual_depdirs += ${__hostdpadd} .endif @@ -710,7 +712,7 @@ DEP_${TARGET_SPEC_VARS:[$i]} := ${_dtspec:[$i]} .else DEP_MACHINE := ${_DEP_MACHINE} .endif -# Warning: there is an assumption here that MACHINE is always +# Warning: there is an assumption here that MACHINE is always # the first entry in TARGET_SPEC_VARS. # If TARGET_SPEC and MACHINE are insufficient, you have a problem. _m := ${.MAKE.DEPENDFILE_PREFERENCE:T:S;${TARGET_SPEC}$;${d:E};:S;${MACHINE};${d:E:C/,.*//};:@m@${exists(${d:R}/$m):?${d:R}/$m:}@:[1]} @@ -720,7 +722,7 @@ _qm := ${_m:C;(\.depend)$;\1.${d:E};:${M_dep_qual_fixe .if ${_debug_search} .info Looking for ${_qm} .endif -# set this "just in case" +# set this "just in case" # we can skip :tA since we computed the path above DEP_RELDIR := ${_m:H:S,${SRCTOP}/,,} # and reset this @@ -743,6 +745,10 @@ DIRDEPS = # we are building something DEP_RELDIR := ${RELDIR} _DEP_RELDIR := ${RELDIR} +# Since we are/should be included by .MAKE.DEPENDFILE +# is is a final opportunity to add/hook global rules. +.-include + # pickup local dependencies .if ${MAKE_VERSION} < 20160220 .-include <.depend> Modified: vendor/NetBSD/bmake/dist/mk/gendirdeps.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/gendirdeps.mk Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/mk/gendirdeps.mk Fri May 18 19:49:54 2018 (r333811) @@ -1,4 +1,4 @@ -# $Id: gendirdeps.mk,v 1.37 2018/01/31 19:06:46 sjg Exp $ +# $Id: gendirdeps.mk,v 1.38 2018/03/10 00:53:52 sjg Exp $ # Copyright (c) 2010-2013, Juniper Networks, Inc. # All rights reserved. @@ -160,6 +160,12 @@ META2DEPS_CMD += -S ${SB_BACKING_SB}/src M2D_OBJROOTS += ${SB_BACKING_SB}/${SB_OBJPREFIX} .endif +GENDIRDEPS_SEDCMDS += \ + -e 's,//*$$,,;s,\.${HOST_TARGET:Uhost}$$,.host,' \ + -e 's,\.${HOST_TARGET32:Uhost32}$$,.host32,' \ + -e 's,\.${MACHINE}$$,,' \ + -e 's:\.${TARGET_SPEC:U${MACHINE}}$$::' + # we are only interested in the dirs # specifically those we read something from. # we canonicalize them to keep things simple @@ -170,7 +176,7 @@ dir_list != cd ${_OBJDIR} && \ SRCTOP=${SRCTOP} RELDIR=${RELDIR} CURDIR=${_CURDIR} \ ${META2DEPS_ARGS} \ ${META_FILES:O:u} | ${META2DEPS_FILTER} ${_skip_gendirdeps} \ - sed 's,//*$$,,;s,\.${HOST_TARGET}$$,.host,' + sed ${GENDIRDEPS_SEDCMDS} .if ${dir_list:M*ERROR\:*} != "" .warning ${dir_list:tW:C,.*(ERROR),\1,} @@ -194,7 +200,7 @@ dpadd_dir_list += ${f:H:tA} .endfor .if !empty(ddep_list) ddeps != cat ${ddep_list:O:u} | ${META2DEPS_FILTER} ${_skip_gendirdeps} \ - sed 's,//*$$,,;s,\.${HOST_TARGET:Uhost}$$,.host,;s,\.${HOST_TARGET32:Uhost32}$$,.host32,;s,\.${MACHINE}$$,,' + sed ${GENDIRDEPS_SEDCMDS} .if ${DEBUG_GENDIRDEPS:Uno:@x@${RELDIR:M$x}@} != "" .info ${RELDIR}: raw_dir_list='${dir_list}' Modified: vendor/NetBSD/bmake/dist/mk/install-mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/install-mk Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/mk/install-mk Fri May 18 19:49:54 2018 (r333811) @@ -55,7 +55,7 @@ # Simon J. Gerraty # RCSid: -# $Id: install-mk,v 1.153 2018/01/24 22:57:11 sjg Exp $ +# $Id: install-mk,v 1.156 2018/04/22 04:42:47 sjg Exp $ # # @(#) Copyright (c) 1994 Simon J. Gerraty # @@ -70,7 +70,7 @@ # sjg@crufty.net # -MK_VERSION=20180118 +MK_VERSION=20180420 OWNER= GROUP= MODE=444 Modified: vendor/NetBSD/bmake/dist/mk/ldorder.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/ldorder.mk Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/mk/ldorder.mk Fri May 18 19:49:54 2018 (r333811) @@ -1,14 +1,14 @@ -# $Id: ldorder.mk,v 1.18 2018/02/11 18:27:59 sjg Exp $ +# $Id: ldorder.mk,v 1.25 2018/04/24 23:50:26 sjg Exp $ # # @(#) Copyright (c) 2015, Simon J. Gerraty # # This file is provided in the hope that it will # be of use. There is absolutely NO WARRANTY. # Permission to copy, redistribute or otherwise -# use this file is hereby granted provided that +# use this file is hereby granted provided that # the above copyright notice and this notice are -# left intact. -# +# left intact. +# # Please send copies of changes and bug-fixes to: # sjg@crufty.net # @@ -27,14 +27,21 @@ .if !target(_LDORDER_USE) # does caller want to use ldorder? # yes for prog, normally no for lib -_ldorder_use := ${.ALLTARGETS:Mldorder} +.if ${.ALLTARGETS:Mldorder} != "" +_ldorder_use: +.endif +# define this if we need a barrier between local and external libs +# see below +LDORDER_EXTERN_BARRIER ?= .ldorder-extern-barrier + .-include # convert /path/to/libfoo.a into _{LIBFOO} LDORDER_INC_FILTER += S,+,PLUS,g S,.so$$,,g LDORDER_LIBS_FILTER += O:u LDORDER_INC ?= ldorder.inc +# for meta mode REFERENCE_FILE ?= : _LDORDER_USE: .ldorder-rm .USE .NOTMAIN @@ -72,9 +79,27 @@ LDADD_LDORDER ?= `cat ldorder` # for debug below _ldorder = ${RELDIR}.${TARGET_SPEC} +# we make have some libs that exist outside of $SB +# and want to insert a barrier +.if target(${LDORDER_EXTERN_BARRIER}) +# eg. in local.ldorder.mk +# ${LDORDER_EXTERN_BARRIER}: +# @test -z "${extern_ldorders}" || \ +# echo -Wl,-Bdynamic >> .ldorder +# +# feel free to put more suitable version in local.ldorder.mk if needed +# we do *not* count host libs in extern_ldorders +extern_ldorders ?= ${__dpadd_libs:tA:N/lib*:N/usr/lib*:N${SB}/*:N${SB_OBJROOT:tA}*:T:${LDORDER_LIBS_FILTER:ts:}:R:C/\.so.*//:S,^,.ldorder-,:N.ldorder-} +sb_ldorders ?= ${.ALLTARGETS:M.ldorder-*:N${LDORDER_EXTERN_BARRIER}:N.ldorder-rm:${extern_ldorders:${M_ListToSkip}}:N.ldorder-} + +# finally in Makefile after include of *.mk put +# .ldorder ${sb_ldorders}: ${LDORDER_EXTERN_BARRIER} +# ${LDORDER_EXTERN_BARRIER}: ${extern_ldorders} +.endif + .endif # !target(_LDORDER_USE) -.if !empty(LDORDER_LIBS) && !empty(_ldorder_use) +.if !empty(LDORDER_LIBS) && target(_ldorder_use) # canonicalize - these are just tokens anyway LDORDER_LIBS := ${LDORDER_LIBS:${LDORDER_LIBS_FILTER:ts:}:R:C/\.so.*//} _ldorders := ${LDORDER_LIBS:T:Mlib*:S,^,.ldorder-,} @@ -108,6 +133,7 @@ ${_ldorder}: ${_ldorders} __${__inc}__: # make sure this is reset LDORDER_LIBS = +_ldorders = .-include <${__inc}> .endif .endfor @@ -119,9 +145,12 @@ LDORDER_LIBS = # to add extra content - like CFLAGS libLDORDER_INC = lib${LIB}.${LDORDER_INC} .if !commands(${libLDORDER_INC}) +.if target(ldorder-header) +${libLDORDER_INC}: ldorder-header +.endif ${libLDORDER_INC}: @(cat /dev/null ${.ALLSRC:M*ldorder*}; \ - echo 'LDORDER_LIBS= ${_LDORDER_LIBS:T:R:${LDORDER_INC_FILTER:ts:}:tu:C,.*,_{&},}'; \ + echo 'LDORDER_LIBS= ${_LDORDER_LIBS:T:R:${LDORDER_INC_FILTER:ts:}:tu:C,.*,_{&},:N_{}}'; \ echo; echo '.include ' ) | sed 's,_{,$${,g' > ${.TARGET} .endif .endif Modified: vendor/NetBSD/bmake/dist/mk/meta.autodep.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/meta.autodep.mk Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/mk/meta.autodep.mk Fri May 18 19:49:54 2018 (r333811) @@ -1,4 +1,4 @@ -# $Id: meta.autodep.mk,v 1.46 2017/10/25 23:44:20 sjg Exp $ +# $Id: meta.autodep.mk,v 1.48 2018/04/15 06:30:04 sjg Exp $ # # @(#) Copyright (c) 2010, Simon J. Gerraty @@ -6,10 +6,10 @@ # This file is provided in the hope that it will # be of use. There is absolutely NO WARRANTY. # Permission to copy, redistribute or otherwise -# use this file is hereby granted provided that +# use this file is hereby granted provided that # the above copyright notice and this notice are -# left intact. -# +# left intact. +# # Please send copies of changes and bug-fixes to: # sjg@crufty.net # @@ -39,7 +39,7 @@ ${s:T:R}$e: $s # you are supposed to know what you are doing! UPDATE_DEPENDFILE = yes .elif !empty(.TARGETS) && !make(all) -# do not update the *depend* files +# do not update the *depend* files # unless we are building the entire directory or the default target. # NO means don't update .depend - or Makefile.depend* # no means update .depend but not Makefile.depend* @@ -119,7 +119,7 @@ META_FILE_FILTER ?= N.meta META_FILE_FILTER += Ndirdeps.cache* .if !empty(DPADD) -# if we have any non-libs in DPADD, +# if we have any non-libs in DPADD, # they probably need to be paid attention to .if !empty(DPLIBS) FORCE_DPADD = ${DPADD:${DPLIBS:${M_ListToSkip}}:${DPADD_LAST:${M_ListToSkip}}} @@ -138,8 +138,8 @@ FORCE_DPADD += ${_nonlibs:@x@${DPADD:M*/$x}@} # if we don't have OBJS, then .depend isn't useful .if !target(.depend) && (!empty(OBJS) || ${.ALLTARGETS:M*.o} != "") # some makefiles and/or targets contain -# circular dependencies if you dig too deep -# (as meta mode is apt to do) +# circular dependencies if you dig too deep +# (as meta mode is apt to do) # so we provide a means of suppressing them. # the input to the loop below is target: dependency # with just one dependency per line. @@ -155,13 +155,13 @@ SUPPRESS_DEPEND += \ # we use ${.MAKE.META.CREATED} to trigger an update but # we process using ${.MAKE.META.FILES} # the double $$ defers initial evaluation -# if necessary, we fake .po dependencies, just so the result +# if necessary, we fake .po dependencies, just so the result # in Makefile.depend* is stable # The current objdir may be referred to in various ways OBJDIR_REFS += ${.OBJDIR} ${.OBJDIR:tA} ${_OBJDIR} ${RELOBJTOP}/${RELDIR} _depend = .depend # it would be nice to be able to get .SUFFIXES as ${.SUFFIXES} -# we actually only care about the .SUFFIXES of files that might be +# we actually only care about the .SUFFIXES of files that might be # generated by tools like yacc. DEPEND_SUFFIXES += .c .h .cpp .hpp .cxx .hxx .cc .hh .depend: .NOMETA $${.MAKE.META.CREATED} ${_this} @@ -253,8 +253,13 @@ META_FILES = ${.MAKE.META.FILES:T:N.depend*:N*o.meta:O .info ${_DEPENDFILE:S,${SRCTOP}/,,}: ${_depend} ${.PARSEDIR}/gendirdeps.mk ${META2DEPS} xtras=${META_XTRAS} .endif -.if ${.MAKE.LEVEL} > 0 && !empty(GENDIRDEPS_FILTER) +.if ${.MAKE.LEVEL} > 0 +.if ${UPDATE_DEPENDFILE} == "yes" +.-include <${.CURDIR}/${.MAKE.DEPENDFILE_PREFIX}.options> +.endif +.if !empty(GENDIRDEPS_FILTER) .export GENDIRDEPS_FILTER +.endif .endif # we might have .../ in MAKESYSPATH Modified: vendor/NetBSD/bmake/dist/mk/own.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/own.mk Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/mk/own.mk Fri May 18 19:49:54 2018 (r333811) @@ -1,4 +1,4 @@ -# $Id: own.mk,v 1.39 2018/01/26 20:08:16 sjg Exp $ +# $Id: own.mk,v 1.40 2018/04/23 04:53:57 sjg Exp $ .if !target(__${.PARSEFILE}__) __${.PARSEFILE}__: @@ -91,7 +91,7 @@ OPTIONS_DEFAULT_NO+= DPADD_MK OPTIONS_DEFAULT_NO+= \ INSTALL_AS_USER \ GPROF \ - LDORDER_MK \ + PROG_LDORDER_MK \ LIBTOOL \ LINT \ @@ -114,7 +114,7 @@ OPTIONS_DEFAULT_YES+= \ OPTIONS_DEFAULT_DEPENDENT+= \ CATPAGES/MAN \ - PROG_LDORDER_MK/LDORDER_MK \ + LDORDER_MK/PROG_LDORDER_MK \ OBJDIRS/OBJ \ PICINSTALL/LINKLIB \ PICLIB/PIC \ Modified: vendor/NetBSD/bmake/dist/parse.c ============================================================================== --- vendor/NetBSD/bmake/dist/parse.c Fri May 18 19:09:11 2018 (r333810) +++ vendor/NetBSD/bmake/dist/parse.c Fri May 18 19:49:54 2018 (r333811) @@ -1,4 +1,4 @@ -/* $NetBSD: parse.c,v 1.227 2018/02/22 01:59:28 sjg Exp $ */ +/* $NetBSD: parse.c,v 1.229 2018/04/05 16:31:54 christos Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -69,14 +69,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: parse.c,v 1.227 2018/02/22 01:59:28 sjg Exp $"; +static char rcsid[] = "$NetBSD: parse.c,v 1.229 2018/04/05 16:31:54 christos Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)parse.c 8.3 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: parse.c,v 1.227 2018/02/22 01:59:28 sjg Exp $"); +__RCSID("$NetBSD: parse.c,v 1.229 2018/04/05 16:31:54 christos Exp $"); #endif #endif /* not lint */ #endif @@ -371,9 +371,6 @@ static void ParseHasCommands(void *); static void ParseDoInclude(char *); static void ParseSetParseFile(const char *); static void ParseSetIncludedFile(void); -#ifdef SYSVINCLUDE -static void ParseTraditionalInclude(char *); -#endif #ifdef GMAKEEXPORT static void ParseGmakeExport(char *); #endif @@ -2519,8 +2516,73 @@ Parse_SetInput(const char *name, int line, int fd, ParseSetParseFile(name); } +/*- + *----------------------------------------------------------------------- + * IsInclude -- + * Check if the line is an include directive + * + * Results: + * TRUE if it is. + * + * Side Effects: + * None + * + *----------------------------------------------------------------------- + */ +static Boolean +IsInclude(const char *line, Boolean sysv) +{ + static const char inc[] = "include"; + static const size_t inclen = sizeof(inc) - 1; + + // 'd' is not valid for sysv + int o = strchr(&("ds-"[sysv]), *line) != NULL; + + if (strncmp(line + o, inc, inclen) != 0) + return FALSE; + + // Space is not mandatory for BSD .include + return !sysv || isspace((unsigned char)line[inclen + o]); +} + + #ifdef SYSVINCLUDE /*- + *----------------------------------------------------------------------- + * IsSysVInclude -- + * Check if the line is a SYSV include directive + * + * Results: + * TRUE if it is. + * + * Side Effects: + * None + * + *----------------------------------------------------------------------- + */ +static Boolean +IsSysVInclude(const char *line) +{ + const char *p; + + if (!IsInclude(line, TRUE)) + return FALSE; + + /* Avoid interpeting a dependency line as an include */ + for (p = line; (p = strchr(p, ':')) != NULL;) { + if (*++p == '\0') { + /* end of line -> dependency */ + return FALSE; + } + if (*p == ':' || isspace((unsigned char)*p)) { + /* :: operator or ': ' -> dependency */ + return FALSE; + } + } + return TRUE; +} + +/*- *--------------------------------------------------------------------- * ParseTraditionalInclude -- * Push to another file. @@ -3019,9 +3081,7 @@ Parse_File(const char *name, int fd) for (cp = line + 1; isspace((unsigned char)*cp); cp++) { continue; } - if (strncmp(cp, "include", 7) == 0 || - ((cp[0] == 'd' || cp[0] == 's' || cp[0] == '-') && - strncmp(&cp[1], "include", 7) == 0)) { + if (IsInclude(cp, FALSE)) { ParseDoInclude(cp); continue; } @@ -3083,12 +3143,7 @@ Parse_File(const char *name, int fd) } #ifdef SYSVINCLUDE - if (((strncmp(line, "include", 7) == 0 && - isspace((unsigned char) line[7])) || - ((line[0] == 's' || line[0] == '-') && - strncmp(&line[1], "include", 7) == 0 && - isspace((unsigned char) line[8]))) && - strchr(line, ':') == NULL) { + if (IsSysVInclude(line)) { /* * It's an S3/S5-style "include". */ From owner-svn-src-vendor@freebsd.org Fri May 18 19:50:23 2018 Return-Path: Delivered-To: svn-src-vendor@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 16A7EED966E; Fri, 18 May 2018 19:50:23 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B844086965; Fri, 18 May 2018 19:50:22 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7F4DC1C94B; Fri, 18 May 2018 19:50:22 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w4IJoMnK065647; Fri, 18 May 2018 19:50:22 GMT (envelope-from sjg@FreeBSD.org) Received: (from sjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w4IJoMoD065646; Fri, 18 May 2018 19:50:22 GMT (envelope-from sjg@FreeBSD.org) Message-Id: <201805181950.w4IJoMoD065646@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org using -f From: "Simon J. Gerraty" Date: Fri, 18 May 2018 19:50:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r333812 - vendor/NetBSD/bmake/20180512 X-SVN-Group: vendor X-SVN-Commit-Author: sjg X-SVN-Commit-Paths: vendor/NetBSD/bmake/20180512 X-SVN-Commit-Revision: 333812 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 May 2018 19:50:23 -0000 Author: sjg Date: Fri May 18 19:50:22 2018 New Revision: 333812 URL: https://svnweb.freebsd.org/changeset/base/333812 Log: tag bmake-20180512 Added: vendor/NetBSD/bmake/20180512/ - copied from r333811, vendor/NetBSD/bmake/dist/