- Add support for fetching from GitHub in bsd.sites.mk

- Document the mechanism in CHANGES
- Add www/tivoka (a JSON-RPC client/server library in PHP) which
  uses the GitHub mechanism

Approved by:	beat (portmgr) after exp-run
This commit is contained in:
Pietro Cerutti 2012-08-20 10:04:13 +00:00
parent 12aedcaf95
commit 2a7de8b29f
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=302794
7 changed files with 121 additions and 0 deletions

22
CHANGES
View file

@ -10,6 +10,28 @@ in the release notes and/or placed into UPDATING.
All ports committers are allowed to commit to this file.
20120820:
AUTHOR: gahr@FreeBSD.org
* GitHub support has been integrated into bsd.sites.mk. In order to
fetch distfiles from GitHub, a port must define USE_GITHUB along
with the following variables:
GH_ACCOUNT - account name of the GitHub user hosting the project
default: not set, mandatory
GH_PROJECT - name of the project on GitHub
default: ${PORTNAME}
GH_TAGNAME - name of the tag to download (master, 2.0.1, ...)
default: ${DISTVERSION}
GH_COMMIT - first 7 digits of the commit that generated GH_TAGNAME
(man git-describe(1))
default: not set, mandatory
The port www/tivoka is an example how to use this mechanism.
20120726:
AUTHOR: bapt@FreeBSD.org

View file

@ -515,6 +515,33 @@ MASTER_SITE_GET_E+= \
http://www5.get-e.org/%SUBDIR%/_files/
.endif
.if !defined(IGNORE_MASTER_SITE_GITHUB)
#
# In order to use GitHub your port must define USE_GITHUB and the following
# variables:
#
# GH_ACCOUNT - account name of the GitHub user hosting the project
# default: not set, mandatory
#
# GH_PROJECT - name of the project on GitHub
# default: ${PORTNAME}
#
# GH_TAGNAME - name of the tag to download (master, 2.0.1, ...)
# default: ${DISTVERSION}
#
# GH_COMMIT - first 7 digits of the commit that generated GH_TAGNAME
# (man git-describe(1))
# default: not set, mandatory
#
.if defined(USE_GITHUB)
MASTER_SITE_GITHUB+= https://nodeload.github.com/%SUBDIR%
MASTER_SITES+= GH
GH_PROJECT?= ${PORTNAME}
GH_TAGNAME?= ${DISTVERSION}
WRKSRC= ${WRKDIR}/${GH_ACCOUNT}-${GH_PROJECT}-${GH_COMMIT}
.endif
.endif
.if !defined(IGNORE_MASTER_SITE_GNOME)
MASTER_SITE_GNOME+= \
ftp://ftp.belnet.be/mirror/ftp.gnome.org/%SUBDIR%/ \
@ -1461,6 +1488,7 @@ MASTER_SITE_KERNEL_ORG+= \
# Macro magic
MASTER_SITES_ABBREVS= CPAN:PERL_CPAN \
GH:GITHUB \
NL:NETLIB \
SF:SOURCEFORGE \
SFJP:SOURCEFORGE_JP \
@ -1474,6 +1502,7 @@ MASTER_SITES_SUBDIRS= \
CSME:myports \
DEBIAN:pool/main/${PORTNAME:C/^((lib)?.).*$/\1/}/${PORTNAME} \
GCC:releases/${DISTNAME} \
GITHUB:${GH_ACCOUNT}/${GH_PROJECT}/tarball/${GH_TAGNAME}?dummy=/ \
GNOME:sources/${PORTNAME}/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} \
GNU:${PORTNAME} \
HORDE:${PORTNAME} \

View file

@ -1832,6 +1832,7 @@
SUBDIR += tinymce3
SUBDIR += tinyproxy
SUBDIR += tinytinyhttpd
SUBDIR += tivoka
SUBDIR += tntnet
SUBDIR += tokyopromenade
SUBDIR += tomcat-native

36
www/tivoka/Makefile Normal file
View file

@ -0,0 +1,36 @@
# New ports collection Makefile for: tivoka
# Date created: 16 July 2012
# Whom: gahr
#
# $FreeBSD$
#
PORTNAME= tivoka
PORTVERSION= 3.0.1
CATEGORIES= www
MAINTAINER= gahr@FreeBSD.org
COMMENT= JSON-RPC client/server library for PHP
LICENSE= MIT
USE_PHP= json filter
NO_BUILD= yes
USE_GITHUB= yes
GH_ACCOUNT= marcelklehr
GH_COMMIT= 4cbf436
LIBDIR= ${PREFIX}/lib/php/${PHP_EXT_DIR}/${PORTNAME}
PLIST_SUB+= LIBDIR=${LIBDIR:S/${PREFIX}\///}
do-install:
@${MKDIR} ${LIBDIR}
@${INSTALL_DATA} ${WRKSRC}/include.php ${LIBDIR}
@cd ${WRKSRC} && ${COPYTREE_SHARE} lib ${LIBDIR}
.if !defined(NOPORTEXAMPLES)
@${MKDIR} ${EXAMPLESDIR}
@cd ${WRKSRC}/example && ${COPYTREE_SHARE} \* ${EXAMPLESDIR}
.endif
.include <bsd.port.mk>

2
www/tivoka/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (tivoka-3.0.1.tar.gz) = 373b4793932b60973591fc8dc79897fc03610e224e5641bc3f6afd7f2b361982
SIZE (tivoka-3.0.1.tar.gz) = 10605

5
www/tivoka/pkg-descr Normal file
View file

@ -0,0 +1,5 @@
tivoka is a JSON-RPC client and server for PHP 5.3+. For convenience,
you can easily switch between JSON-RPC 1.0 and JSON-RPC 2.0 without
having to change your code.
WWW: http://marcelklehr.github.com/tivoka/

26
www/tivoka/pkg-plist Normal file
View file

@ -0,0 +1,26 @@
%%LIBDIR%%/include.php
%%LIBDIR%%/lib/Tivoka/Client.php
%%LIBDIR%%/lib/Tivoka/Client/BatchRequest.php
%%LIBDIR%%/lib/Tivoka/Client/Connection.php
%%LIBDIR%%/lib/Tivoka/Client/NativeInterface.php
%%LIBDIR%%/lib/Tivoka/Client/Notification.php
%%LIBDIR%%/lib/Tivoka/Client/Request.php
%%LIBDIR%%/lib/Tivoka/Exception/ConnectionException.php
%%LIBDIR%%/lib/Tivoka/Exception/Exception.php
%%LIBDIR%%/lib/Tivoka/Exception/InvalidParamsException.php
%%LIBDIR%%/lib/Tivoka/Exception/ProcedureException.php
%%LIBDIR%%/lib/Tivoka/Exception/RemoteProcedureException.php
%%LIBDIR%%/lib/Tivoka/Exception/SpecException.php
%%LIBDIR%%/lib/Tivoka/Exception/SyntaxException.php
%%LIBDIR%%/lib/Tivoka/Server.php
%%LIBDIR%%/lib/Tivoka/Server/MethodWrapper.php
%%LIBDIR%%/lib/Tivoka/Server/Server.php
%%LIBDIR%%/lib/Tivoka/Tivoka.php
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client.php
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server.php
@dirrm %%LIBDIR%%/lib/Tivoka/Server
@dirrm %%LIBDIR%%/lib/Tivoka/Exception
@dirrm %%LIBDIR%%/lib/Tivoka/Client
@dirrm %%LIBDIR%%/lib/Tivoka
@dirrm %%LIBDIR%%/lib
%%PORTEXAMPLES%%@dirrm %%EXAMPLESDIR%%