diff --git a/devel/fossil/Makefile b/devel/fossil/Makefile index dfc64c3603b7..088eae8d682b 100644 --- a/devel/fossil/Makefile +++ b/devel/fossil/Makefile @@ -1,55 +1,55 @@ PORTNAME= fossil PORTVERSION= 2.20 DISTVERSIONPREFIX= src- -PORTREVISION= 0 +PORTREVISION= 1 PORTEPOCH= 2 CATEGORIES= devel www MASTER_SITES= https://fossil-scm.org/home/tarball/version-${PORTVERSION}/ MAINTAINER= gahr@FreeBSD.org COMMENT= DSCM with built-in wiki, http interface and server, tickets database WWW= https://fossil-scm.org/ LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/COPYRIGHT-BSD2.txt USES= cpe ssl WRKSRC= ${WRKDIR}/${PORTNAME}-src-${PORTVERSION} CPE_VENDOR= fossil-scm HAS_CONFIGURE= yes CONFIGURE_ARGS= --prefix=${PREFIX} --with-openssl=${OPENSSLBASE} USE_RC_SUBR= fossil MAKE_JOBS_UNSAFE=yes MAKE_ENV= TCLSH=${TCLSH} PLIST_FILES= bin/fossil man/man1/fossil.1.gz OPTIONS_DEFINE= JSON FUSE STATIC TH1HOOKS TCL OPTIONS_DEFAULT=JSON JSON_DESC= JSON API support FUSE_DESC= Enable fossil fusefs command TH1HOOKS_DESC= Enable TH1 command and web page hooks TCL_DESC= Enable Tcl integration JSON_CONFIGURE_ON= --json STATIC_CONFIGURE_ON= --static STATIC_LDFLAGS= -pthread FUSE_CONFIGURE_OFF= --disable-fusefs TH1HOOKS_CONFIGURE_ON= --with-th1-hooks TCL_CONFIGURE_ON= --with-tcl-stubs --with-tcl=${TCL_LIBDIR} TCL_USES= tcl TCL_CFLAGS= -DTCL_LIBRARY_NAME=\\\"libtcl${TCL_SHLIB_VER}.so\\\" \ -DTCL_MINOR_OFFSET=7 FUSE_LIB_DEPENDS= libfuse.so:sysutils/fusefs-libs FUSE_USES= localbase:ldflags post-patch-FUSE-on: @${REINPLACE_CMD} -e 's/define-append LIBS -lfuse/& -pthread/' ${WRKSRC}/auto.def post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/fossil ${INSTALL_MAN} ${WRKSRC}/fossil.1 ${STAGEDIR}${MANPREFIX}/man/man1 .include diff --git a/devel/fossil/files/fossil.in b/devel/fossil/files/fossil.in index 317bf2fcdc86..aa77458e1d3b 100644 --- a/devel/fossil/files/fossil.in +++ b/devel/fossil/files/fossil.in @@ -1,75 +1,82 @@ #!/bin/sh # fossil startup script # # PROVIDE: fossil # REQUIRE: LOGIN # KEYWORD: shutdown # # Add the following to /etc/rc.conf[.local] to enable this service # # fossil_enable="YES" # # You can fine tune others variables too: -# fossil_port="8080" -# fossil_directory="/nonexistent" -# fossil_baseurl="" -# fossil_proto="http" -# fossil_listenall="" -# fossil_https="" # force the HTTPS CGI parameter to "on" -# fossil_files="" # comma separated globing patterns of files to serve -# fossil_notfound="" # URI to redirect to in case of 404 -# Use fossil_user to run fossil as user +# +# variable default description +# ============================================= +# fossil_port 8080 TCP port to listen to +# fossil_directory /nonexistent directory to serve +# fossil_repolist "" if non-empty, fossil will list the repositories in the fossil_directory when visiting / +# fossil_baseurl "" the server URL, for reverse proxies +# fossil_proto http spawn an http or scgi server +# fossil_listenall "" if empty, only listen on 127.0.0.1 +# fossil_https "" if non-empty, force the HTTPS CGI parameter to "on" +# fossil_files "" if non-empty, comma separated glob patterns of files to serve +# fossil_notfound "" if non-empty, URI to redirect to in case of 404 +# fossil_errorlog "" if non-empty, path to log file for errors +# fossil_user nobody user to run fossil as + . /etc/rc.subr name="fossil" rcvar=fossil_enable load_rc_config $name pidprefix="/var/run/fossil/fossil" pidfile="${pidprefix}.pid" procname="%%PREFIX%%/bin/fossil" command="/usr/sbin/daemon" start_precmd="fossil_precmd" stop_postcmd="fossil_postcmd" fossil_enable=${fossil_enable:-"NO"} fossil_user=${fossil_user:-"nobody"} fossil_port=${fossil_port:-"8080"} fossil_proto=${fossil_proto:-"http"} fossil_directory=${fossil_directory:-"/nonexistent"} case "${fossil_proto}" in http) # http is the default ;; scgi) fossil_args="--scgi" ;; *) echo "unsupported protocol: ${fossil_proto}, only scgi and http are supported" >&2 exit 1 ;; esac [ -n "${fossil_baseurl}" ] && fossil_args="${fossil_args} --baseurl ${fossil_baseurl}" [ -z "${fossil_listenall}" ] && fossil_args="${fossil_args} --localhost" [ -n "${fossil_https}" ] && fossil_args="${fossil_args} --https" [ -n "${fossil_files}" ] && fossil_args="${fossil_args} --files '${fossil_files}'" [ -n "${fossil_notfound}" ] && fossil_args="${fossil_args} --notfound \"${fossil_notfound}\"" [ -n "${fossil_repolist}" ] && fossil_args="${fossil_args} --repolist" +[ -n "${fossil_errorlog}" ] && fossil_args="${fossil_args} --errorlog \"${fossil_errorlog}\"" command_args="-S -T ${name} -p ${pidfile} ${procname} server -P ${fossil_port} ${fossil_args} ${fossil_directory}" fossil_precmd() { install -d -o root -g wheel -m 1777 /var/run/fossil } fossil_postcmd() { rm -rf /var/run/fossil } run_rc_command "$1"