# New ports collection makefile for: cakephp13 # Date created: 19 September 2011 # Whom: Christoph Theis # # $FreeBSD$ # PORTNAME= cakephp PORTVERSION= 1.3.14 PORTREVISION= CATEGORIES= www MASTER_SITES= https://github.com/${PORTNAME}/${PORTNAME}/tarball/${PORTVERSION}/ \ LOCAL/glarkin DISTNAME= ${PORTNAME}-${PORTNAME}-${PORTVERSION}-${GITVERSION} MAINTAINER= theis@gmx.at COMMENT= A framework for developing PHP web applications LICENSE= MIT GITVERSION= 0-g5ac77c2 FETCH_ARGS= -pRr WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTNAME}-822a1e0 PORTDOCS= README SLAVE_PORT_MODULES= rewrite CONFLICTS= cakephp-1.[12].* NO_BUILD= yes USE_GETTEXT= yes USE_PHP= session WANT_PHP_WEB= yes DEFAULT_PHP_VER=5 IGNORE_WITH_PHP=4 CAKE_CONF_FILES= \ app/config/acl.ini.php \ app/config/bootstrap.php \ app/config/core.php \ app/config/database.php \ app/config/routes.php CAKE_CONSOLE= cake/console/cake OPTIONS= PROD "Install for production server (make confighelp)" Off \ AP "Add Apache 2.2+ dependency" Off \ MYSQL "Check for/install MySQL support in PHP" Off \ PGSQL "Check for/install PostgreSQL support in PHP" Off \ SQLITE "Check for/install SQLite support in PHP" Off \ APC "Enable APC caching engine" Off \ MEMCACHE "Enable Memcached caching engine client" Off CONFDIR= ${PREFIX}/${CONFDIR_REL} CONFDIR_REL= ${APACHEETCDIR}/Includes .include WITH_PHP_CGI?= /cgi-bin/php .if ${PHP_SAPI:Mcgi} == "cgi" && ${PHP_SAPI:Mmod} == "" CGI_EXT= -cgi .else CGI_EXT= .endif SUB_LIST+= PHPCGI=${WITH_PHP_CGI} .if defined(WITH_AP) SUB_FILES= pkg-message USE_APACHE= 22+ PKGMESSAGE= pkg-message APDEP= .else SUB_FILES= pkg-message-no-apache PKGMESSAGE= pkg-message-no-apache APDEP= "@comment " .endif .if defined(WITH_PROD) PROD= production HTACCESS= "" .else PROD= development EXTRA_PATCHES= ${FILESDIR}/extra-patch-app__config__core.php HTACCESS= "@comment " .endif CONF= cakephp-${PROD}${CGI_EXT}.conf SUB_FILES+= ${CONF} PLIST_SUB+= CONFDIR=${CONFDIR_REL} ECHO_MSG=${ECHO_MSG} \ HTACCESS=${HTACCESS} APDEP=${APDEP} DB_DEFINED= no .if defined(WITH_MYSQL) DB_DEPENDS+= ${LOCALBASE}/lib/php/${PHP_EXT_DIR}/pdo_mysql.so:${PORTSDIR}/databases/php5-pdo_mysql DB_DEFINED= yes .endif .if defined(WITH_PGSQL) DB_DEPENDS+= ${LOCALBASE}/lib/php/${PHP_EXT_DIR}/pdo_pgsql.so:${PORTSDIR}/databases/php5-pdo_pgsql DB_DEFINED= yes .endif .if defined(WITH_SQLITE) DB_DEPENDS+= ${LOCALBASE}/lib/php/${PHP_EXT_DIR}/pdo_sqlite.so:${PORTSDIR}/databases/php5-pdo_sqlite DB_DEFINED= yes .endif .if ${DB_DEFINED} == "yes" RUN_DEPENDS+= ${LOCALBASE}/lib/php/${PHP_EXT_DIR}/pdo.so:${PORTSDIR}/databases/php5-pdo \ ${DB_DEPENDS} .endif .if defined(WITH_APC) USE_PHP+= apc .endif .if defined(WITH_MEMCACHE) USE_PHP+= memcache .endif confighelp: @${ECHO_MSG} "" @${ECHO_MSG} "On a production server, the Apache DocumentRoot is" @${ECHO_MSG} "updated to point to the CakePHP webroot directory." @${ECHO_MSG} "In this configuration, the CakePHP application is" @${ECHO_MSG} "accessed at http://www.myservername.com/." @${ECHO_MSG} "" @${ECHO_MSG} "A non-production server, CakePHP is installed at" @${ECHO_MSG} "the /cakephp URL, and the CakePHP application is" @${ECHO_MSG} "accessed at http://www.myservername.com/cakephp/." @${ECHO_MSG} "" @${ECHO_MSG} "For more information, please see:" @${ECHO_MSG} "http://manual.cakephp.org/chapter/installing" @${ECHO_MSG} "" post-extract: @${FIND} ${WRKSRC} -name ._\* -delete post-patch: @${RM} -f ${WRKSRC}/cake/console/cake.orig \ ${WRKSRC}/app/config/core.php.orig # Rename config files so we don't overwrite those in an existing installation @for i in ${CAKE_CONF_FILES}; do \ if [ -f ${WRKSRC}/$$i ]; then \ ${MV} ${WRKSRC}/$$i ${WRKSRC}/$$i.default; \ fi \ done do-install: @cd ${WRKSRC} && ${COPYTREE_SHARE} \ ".htaccess app cake index.php vendors" ${WWWDIR} .if !defined(WITH_PROD) # If installed in development mode, get rid of .htaccess files, # as noted by: # http://book.cakephp.org/view/42/The-Configuration-Class#CakePHP-Core-Configuration-Variables-44 @${FIND} ${WWWDIR} -type f -name .htaccess -exec ${RM} {} \; @${ECHO_CMD} '@exec ${FIND} ${WWWDIR:S|^${PREFIX}/|%D/|} -type f -name .htaccess -exec ${RM} {} \;' >> ${TMPPLIST} .endif # Get rid of the empty placeholder files @${FIND} ${WWWDIR} -type f -name empty -size 0 -exec ${RM} {} \; @${ECHO_CMD} '@exec ${FIND} ${WWWDIR:S|^${PREFIX}/|%D/|} -type f -name empty -size 0 -exec ${RM} {} \;' >> ${TMPPLIST} @${CHOWN} -R ${WWWOWN}:${WWWGRP} ${WWWDIR} @${ECHO_CMD} '@exec ${CHOWN} -R ${WWWOWN}:${WWWGRP} \ ${WWWDIR:S|^${PREFIX}/|%D/|}' >> ${TMPPLIST} @${FIND} ${WWWDIR} -type f -print0 | ${XARGS} -0 ${CHMOD} 644 @${ECHO_CMD} '@exec ${FIND} ${WWWDIR} -type f -print0 | \ ${XARGS} -0 ${CHMOD} 644' >> ${TMPPLIST} @${FIND} ${WWWDIR} -type d -print0 | ${XARGS} -0 ${CHMOD} 755 @${ECHO_CMD} '@exec ${FIND} ${WWWDIR} -type d -print0 | \ ${XARGS} -0 ${CHMOD} 755' >> ${TMPPLIST} # Fix the permissions of the Cake console script @${CHMOD} 755 ${WWWDIR}/${CAKE_CONSOLE} @${ECHO_CMD} '@exec ${CHMOD} 755 ${WWWDIR}/${CAKE_CONSOLE}' >> ${TMPPLIST} post-install: @for i in ${CAKE_CONF_FILES}; do \ if [ ! -f ${WWWDIR}/$$i -a -f ${WRKSRC}/$$i.default ]; then \ ${INSTALL_DATA} ${WRKSRC}/$$i.default ${WWWDIR}/$$i; \ fi \ done .if defined(WITH_AP) @if [ -d "${CONFDIR}" ]; then \ ${CP} ${WRKDIR}/${CONF} ${CONFDIR}/cakephp.conf; \ else \ ${ECHO_MSG} "" ; \ ${ECHO_MSG} "Please check your Apache 2.x installation -" ; \ ${ECHO_MSG} "${CONFDIR} doesn't exist," ; \ ${ECHO_MSG} "so I cannot install cakephp.conf there!" ; \ ${ECHO_MSG} "" ; \ ${FALSE} ; \ fi .endif .if !defined(NOPORTDOCS) @${INSTALL} -d ${DOCSDIR} @cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${DOCSDIR} .endif @${CAT} ${PKGMESSAGE} .if ${CGI_EXT} == "-cgi" @${ECHO_MSG} "" @${ECHO_MSG} "Your CakePHP installation was configured to use the PHP CGI binary." @${ECHO_MSG} "The PHP CGI binary is expected to be referenced by the URL:" @${ECHO_MSG} "" @${ECHO_MSG} " ${WITH_PHP_CGI}" @${ECHO_MSG} "" @${ECHO_MSG} "If this is incorrect, reinstall the port with the WITH_PHP_CGI knob" @${ECHO_MSG} "set to the correct URL." .endif @${ECHO_MSG} "*********************************************************************" .include