freebsd-ports/Mk/bsd.drupal.mk
2009-04-04 18:00:28 +00:00

150 lines
4.4 KiB
Makefile

# $FreeBSD$
#
# Make sure we cannot define any combination of DRUPAL{5,6}
.if (defined(DRUPAL5_MODULE) && defined(DRUPAL6_MODULE))
BROKEN= cannot define a combination of DRUPAL5_MODULE and DRUPAL6_MODULE
.endif
# Make sure DRUPAL_MODULE is defined. If no DRUPAL*_module defined, then define DRUPAL4_MODULE
.if defined(DRUPAL5_MODULE) || defined(DRUPAL6_MODULE)
DRUPAL_MODULE?= yes
.endif
.if defined(DRUPAL_MODULE)
DRUPAL_MODTYPE= modules
.endif
# Make sure DRUPAL_PORT is defined. If no DRUPAL*_module defined, then define DRUPAL4_PORT
.if defined(DRUPAL5_PORT) || defined(DRUPAL6_PORT)
DRUPAL_PORT?= yes
.endif
# Make sure DRUPAL_THEME is defined
.if defined(DRUPAL5_THEME) || defined(DRUPAL6_THEME)
DRUPAL_THEME?= yes
DRUPAL_MODTYPE= themes
.endif
.if defined(DRUPAL6_MODULE) || defined(DRUPAL6_PORT) || defined(DRUPAL6_THEME)
DRUPAL_BASE?= www/drupal6
.else
.if defined(DRUPAL5_MODULE) || defined(DRUPAL5_PORT) || defined(DRUPAL5_THEME)
DRUPAL_BASE?= www/drupal5
.endif
.endif
DRUPAL_DIR= ${PREFIX}/${DRUPAL_BASE}
DRUPAL_DOCSDIR?= ${PREFIX}/${DRUPAL_BASE}/doc
PLIST_SUB+= DRUPAL_BASE=${DRUPAL_BASE}
SUB_LIST+= DRUPAL_BASE=${DRUPAL_BASE} DRUPAL_DIR=${DRUPAL_DIR}
.if defined(DRUPAL_PORT)
DOCSDIR?= ${DRUPAL_DOCSDIR}
.endif
.if defined(DRUPAL_MODULE) || defined (DRUPAL_THEME)
.if defined(DRUPAL5_MODULE) || defined (DRUPAL5_THEME)
PKGNAMEPREFIX= drupal5-
DRUPAL_VERSION?= 5.0
.if defined(DRUPAL_MODSUBDIR)
DRUPAL_MODDIR?= ${DRUPAL_BASE}/sites/all/${DRUPAL_MODTYPE}/${DRUPAL_MODSUBDIR}
.else
DRUPAL_MODDIR?= ${DRUPAL_BASE}/sites/all/${DRUPAL_MODTYPE}/${PORTNAME}
.endif
.endif
.if defined(DRUPAL6_MODULE) || defined (DRUPAL6_THEME)
PKGNAMEPREFIX= drupal6-
DRUPAL_VERSION?= 6.0
.if defined(DRUPAL_MODSUBDIR)
DRUPAL_MODDIR?= ${DRUPAL_BASE}/sites/all/${DRUPAL_MODTYPE}/${DRUPAL_MODSUBDIR}
.else
DRUPAL_MODDIR?= ${DRUPAL_BASE}/sites/all/${DRUPAL_MODTYPE}/${PORTNAME}
.endif
.endif
DOCSDIR?= ${DRUPAL_DOCSDIR}/${PORTNAME}
.if defined(DRUPAL_MOD_SNAPSHOT)
MASTER_SITE_DRUPAL+= \
${MASTER_SITE_LOCAL}
MASTER_SITE_DRUPAL_SUBDIR= pav/drupal
.else
MASTER_SITE_DRUPAL+= \
http://ftp.drupal.org/files/projects/ \
http://ftp.osuosl.org/pub/drupal/files/projects/
MASTER_SITE_DRUPAL_SUBDIR=
.endif
MASTER_SITES?= ${MASTER_SITE_DRUPAL}
MASTER_SITE_SUBDIR?= ${MASTER_SITE_DRUPAL_SUBDIR}
DIST_SUBDIR= drupal
NO_BUILD?= yes
WRKSRC?= ${WRKDIR}/${PORTNAME}
RUN_DEPENDS+= ${LOCALBASE}/${DRUPAL_BASE}/index.php:${PORTSDIR}/${DRUPAL_BASE}
.if defined(MODULE_CONF_FILES)
SUB_FILES= pkg-install
SUB_LIST+= CONF_FILES="${MODULE_CONF_FILES:C|^|${DRUPAL_MODDIR}/|}" \
CONF_DIRS="${MODULE_CONF_DIRS:C|^|${DRUPAL_MODDIR}/|}"
# XXX: where?
PKGINSTALL= ${WRKDIR}/pkg-install
PKGDEINSTALL= ${PKGINSTALL}
.endif
PLIST_SUB+= DRUPAL_MODDIR=${DRUPAL_MODDIR}
PLIST_FILES+= ${MODULE_FILES:C|^|%%DRUPAL_MODDIR%%/|}
PLIST_FILES+= ${MODULE_CONF_FILES:C|^|%%DRUPAL_MODDIR%%/|:C|$|-dist|}
PLIST_DIRS+= ${MODULE_DIRS:C|^|%%DRUPAL_MODDIR%%/|}
.if defined(DRUPAL5_MODULE) || defined(DRUPAL5_THEME) || defined(DRUPAL6_MODULE) || defined(DRUPAL6_THEME)
PLIST_DIRS+= ${DRUPAL_MODDIR}
.endif
.if defined(DRUPAL_MODSUBDIR)
PLIST_DIRS+= ${DRUPAL_MODDIR}
.endif
.if !defined(NOPORTDOCS)
PLIST_FILES+= ${DOC_FILES:C|^|%%DOCSDIR%%/|}
PLIST_DIRS+= ${DOC_DIRS:C|^|%%DOCSDIR%%/|}
PLIST_DIRS+= %%DOCSDIR%%
.endif
do-install:
.if defined(DRUPAL5_MODULE) || defined(DRUPAL5_THEME) || defined(DRUPAL6_MODULE) || defined(DRUPAL6_THEME)
@${MKDIR} ${DRUPAL_MODDIR:C|^|${PREFIX}/|}
@${CHOWN} ${WWWOWN}:${WWWGRP} ${DRUPAL_MODDIR:C|^|${PREFIX}/|}
.endif
.if defined(MODULE_CONF_DIRS)
@${MKDIR} ${MODULE_CONF_DIRS:C|^|${PREFIX}/${DRUPAL_MODDIR}/|}
@${CHOWN} ${WWWOWN}:${WWWGRP} ${MODULE_CONF_DIRS:C|^|${PREFIX}/${DRUPAL_MODDIR}/|}
.endif
.if defined(MODULE_DIRS)
@${MKDIR} ${MODULE_DIRS:C|^|${PREFIX}/${DRUPAL_MODDIR}/|}
@${CHOWN} ${WWWOWN}:${WWWGRP} ${MODULE_DIRS:C|^|${PREFIX}/${DRUPAL_MODDIR}/|}
.endif
.for f in ${MODULE_FILES}
@${INSTALL_DATA} ${WRKSRC}/${f} ${PREFIX}/${DRUPAL_MODDIR}/${f}
@${CHOWN} ${WWWOWN}:${WWWGRP} ${PREFIX}/${DRUPAL_MODDIR}/${f}
.endfor
.for f in ${MODULE_CONF_FILES}
@${INSTALL_DATA} ${WRKSRC}/${f} ${PREFIX}/${DRUPAL_MODDIR}/${f}-dist
@${CHOWN} ${WWWOWN}:${WWWGRP} ${PREFIX}/${DRUPAL_MODDIR}/${f}-dist
.endfor
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR} ${DOC_DIRS:C|^|${DOCSDIR}/|}
.for f in ${DOC_FILES}
@${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}/${f}
.endfor
.endif
.if defined(MODULE_CONF_FILES)
post-install:
@${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
.endif
.endif