aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Leres <leres@FreeBSD.org>2023-03-21 22:38:20 +0000
committerCraig Leres <leres@FreeBSD.org>2023-03-21 22:38:20 +0000
commit2b87700f1b0605c7fc5eefa6eccc1b044705c7a3 (patch)
tree3288c4b97f40334fe7fed2366db4abca8bf76783
parentc39b878904064cc392d477c96a5745b58ce45ef1 (diff)
downloadports-2b87700f1b0605c7fc5eefa6eccc1b044705c7a3.tar.gz
ports-2b87700f1b0605c7fc5eefa6eccc1b044705c7a3.zip
devel/p4: Update to r22.2.2407422
Update MASTER_SITES including a backup site hosted by the maintainer. Remove BROKEN lines (this version is 7 years newer). While here, adjust the PR patchset to eliminate DIST_SUBDIR and embed the version string into the downloaded package. PR: 270387 Approved by: antonfb@hesiod.org (maintainer)
-rw-r--r--devel/p4/Makefile40
-rw-r--r--devel/p4/Makefile.inc7
-rw-r--r--devel/p4/distinfo6
-rw-r--r--devel/p4/files/patch-net_netsslcredentials.cc23
-rw-r--r--devel/p4/pkg-descr14
5 files changed, 34 insertions, 56 deletions
diff --git a/devel/p4/Makefile b/devel/p4/Makefile
index 02c7f4570294..60de77148a3a 100644
--- a/devel/p4/Makefile
+++ b/devel/p4/Makefile
@@ -1,32 +1,26 @@
PORTNAME= p4
PORTVERSION= ${YEAR}.${MAJOR}.${MINOR}
-PORTREVISION= 3
CATEGORIES= devel
# Perforce changes their distfiles when they patch, which changes the
# zip file's checksum. This does not play well with FreeBSD's conventions.
-# This version of the port 2016.1 is no longer available from Perforce's
-# site. The new maintainer is backup hosting until the new port of 2022.2
-# is ready.
-MASTER_SITES= LOCAL/asomers/perforce/p4 \
- https://hesiod.org/distfiles/
-DISTNAME= ${YEAR}-${MAJOR}
-DISTFILES= ${ZIP_FILES}
-DIST_SUBDIR= perforce/p4
+# maintainer is backup hosting
+MASTER_SITES= https://ftp.perforce.com/perforce/${P4VERSION}/bin.tools/p4source${EXTRACT_SUFX}?dummy=/ \
+ https://hesiod.org/distfiles/perforce-${MINOR}/p4source${EXTRACT_SUFX}?dummy=/
+DISTNAME= p4source-${MINOR}
MAINTAINER= antonfb@hesiod.org
-COMMENT= Perforce client
-WWW= https://www.perforce.com/
+COMMENT= Perforce command line client
+WWW= https://www.perforce.com/products/helix-core
LICENSE= BSD2CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
-BROKEN_mips64= fails to install: /wrkdirs/usr/ports/devel/p4/work/2016-1/p4-bin/p4: No such file or directory
-BROKEN_FreeBSD_12_powerpc64= fails to build: /bin/sh: clang++: not found
-
BUILD_DEPENDS= ${JAM}:devel/jam
# p4 links libssl and libcrypto statically, so specify :build
-USES= ssl:build
+USES= ssl:build tar:tgz
+
+WRKSRC= ${WRKDIR}/p4source-${PORTVERSION}
PLIST_FILES= bin/p4
@@ -34,17 +28,15 @@ PLIST_FILES= bin/p4
.include "Makefile.inc"
-# Sadly, Jam always returns 1 even on success. Ignore its return value and
-# detect build errors during the install phase.
do-build:
cd ${WRKSRC} && ${SETENV} C++="${CXX}" C++FLAGS="${CXXFLAGS}" \
- CCFLAGS="${CFLAGS}" \
- HDRS="${OPENSSLINC}" \
- LINKFLAGS="${LDFLAGS}" \
- OSVER=${OSVER} \
- SSL="yes" \
- SSLPREFIX=${OPENSSLLIB} \
- ${JAM} -dx -j${MAKE_JOBS_NUMBER} || true
+ CCFLAGS="${CFLAGS}" \
+ HDRS="${OPENSSLINC}" \
+ LINKFLAGS="${LDFLAGS}" \
+ OSVER=${OSVER} \
+ SSL="yes" \
+ SSLPREFIX=${OPENSSLLIB} \
+ ${JAM} -dx -sUSE_EXTENSIONS=0 -j${MAKE_JOBS_NUMBER} p4
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/p4-bin/p4 ${STAGEDIR}${PREFIX}/bin
diff --git a/devel/p4/Makefile.inc b/devel/p4/Makefile.inc
index 414895566676..cbf88951e949 100644
--- a/devel/p4/Makefile.inc
+++ b/devel/p4/Makefile.inc
@@ -1,8 +1,7 @@
-ZIP_FILES= ${DISTNAME}.zip
P4VERSION?= r${PORTVERSION:S/^20//:C/\.[0-9]+$//}
-YEAR= 2016
-MAJOR= 1
-MINOR= 1492381
+YEAR= 2022
+MAJOR= 2
+MINOR= 2407422
JAM?= ${LOCALBASE}/bin/jam
OSVER?= ${OSREL:S/.//}
diff --git a/devel/p4/distinfo b/devel/p4/distinfo
index 3995ddebd392..fb002e83d03d 100644
--- a/devel/p4/distinfo
+++ b/devel/p4/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1517864594
-SHA256 (perforce/p4/2016-1.zip) = af465c970b5892674089a917ffa3d38f9b878e1ceb32eb73c2e05bd462d5ba63
-SIZE (perforce/p4/2016-1.zip) = 2249015
+TIMESTAMP = 1679422608
+SHA256 (p4source-2407422.tgz) = 4355375def3f3d2256d4a92ac1b9960173e7aa97404346c0c74caf23a0905e1b
+SIZE (p4source-2407422.tgz) = 6325949
diff --git a/devel/p4/files/patch-net_netsslcredentials.cc b/devel/p4/files/patch-net_netsslcredentials.cc
deleted file mode 100644
index d18ba487c308..000000000000
--- a/devel/p4/files/patch-net_netsslcredentials.cc
+++ /dev/null
@@ -1,23 +0,0 @@
---- net/netsslcredentials.cc.orig 2018-02-05 20:46:46.000000000 +0000
-+++ net/netsslcredentials.cc 2018-11-08 16:32:39.241553000 +0000
-@@ -42,6 +42,7 @@ extern "C"
- # include <openssl/x509v3.h>
- # include <openssl/ssl.h>
- # include <openssl/x509_vfy.h>
-+# include <openssl/opensslv.h>
- }
- # include <stdio.h>
- # include "netdebug.h"
-@@ -218,7 +219,11 @@ NetSslCredentials::ReadCredentials( Error *e )
- privateKey = PEM_read_PrivateKey(fp, NULL, 0, NULL );
- SSLNULLHANDLER( privateKey, e, "NetSslCredentials::ReadCredentials PEM_read_PrivateKey", failSetError );
- // verify that RSA key
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- if (privateKey->type != EVP_PKEY_RSA)
-+#else
-+ if (EVP_PKEY_base_id(privateKey) != EVP_PKEY_RSA)
-+#endif
- {
- e->Set( MsgRpc::SslKeyNotRSA );
- goto fail;
-
diff --git a/devel/p4/pkg-descr b/devel/p4/pkg-descr
index 4eca6934b456..286042394aca 100644
--- a/devel/p4/pkg-descr
+++ b/devel/p4/pkg-descr
@@ -1,2 +1,12 @@
-Perforce is a commercial revision control system that can be used
-gratis for developing free software. (see the WWW page for details).
+Perforce is a commercial revision control system. This is the command
+line client which works with servers remotely or locally.
+The clients and the api for Perforce is freely available.
+
+This build does not support the "Extensions" feature.
+
+The server is no longer available for FreeBSD but the Linux version
+should work. There is a limited free use level and non-profit
+organizations might qualify for free licencing.
+
+See "p4 -V" for more licensing and version information.
+See https://ftp.perforce.com/perforce/r22.2/doc/user/ for release notes.