aboutsummaryrefslogtreecommitdiffstats
path: root/www/pivotx/Makefile
blob: 8eb585ad85fc1dca432a2a952e6053c8990c3e1f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# New ports collection makefile for:    pivotx
# Date created:     2011-01-05
# Whom:         Fumiyuki Shimizu <fumifumi@abacustech.jp>
#
# $FreeBSD$
#

PORTNAME=   pivotx
PORTVERSION=    2.3.3
CATEGORIES= www
MASTER_SITES=   SF/pivot-weblog/PivotX \
        http://pivotx.net/files/ \
        http://pivotx.net/files/archived/
DISTNAME=   pivotx_${PORTVERSION}
EXTRACT_SUFX=   .tgz

MAINTAINER= fumifumi@abacustech.jp
COMMENT=    Software to help you maintain dynamic sites such as weblogs

LICENSE=    GPLv2

DOCS=       LICENSE.txt README.txt example.htaccess
DOCS_WRKSRC=    ${WRKDIR}/${PORTNAME}-${PORTVERSION}-${PORTREVISION}-docs

# Requirements:
# http://book.pivotx.net/index.php?page=app-e#anchor-determining-if-your-server-meets-pivotxs-requirements

OPTIONS=    MYSQL   "Use MySQL instead of flat files" off \
        PHPDOM  "Use PHP:DOM instead of SimpleXML" off

.include <bsd.port.options.mk>

WANT_PHP_WEB=   yes
USE_PHP=    session gettext xml tokenizer gd pcre
USE_GETTEXT=    yes

.if defined(WITH_PHPDOM)
USE_PHP+=   dom
.else
USE_PHP+=   simplexml
.endif

.if defined(WITH_MYSQL)
USE_MYSQL=  client
USE_PHP+=   mysql
.endif

NO_BUILD=   YES

TEMP_WRKSRC=    ${WRKDIR}/.temp-${PORTNAME}-${PORTVERSION}-${PORTREVISION}
TEMP_DIFF=  ${WRKDIR}/.temp-diff-${PORTNAME}-${PORTVERSION}-${PORTREVISION}

BLOGURL=    ${PORTNAME}
.if defined(BLOGDIR)
# Relative to ${PREFIX}
WWWDIR=     ${PREFIX}/${BLOGDIR}
.endif

SUB_FILES=  pkg-message
SUB_LIST=   BLOGURL=${BLOGURL}

# http://book.pivotx.net/page/1-2#anchor-setting-the-file-rights
WRITABLEDIRS=       images pivotx/templates pivotx/db
USEREDITABLEDIRS=   pivotx/templates

post-extract:
    @if ${TEST} -e '${TEMP_WRKSRC}'; then ${RM} -r '${TEMP_WRKSRC}'; fi
    @${MKDIR} '${TEMP_WRKSRC}'
    @${MV} '${WRKDIR}/'* '${TEMP_WRKSRC}'
    @${MV} '${TEMP_WRKSRC}' '${WRKSRC}'
    @${MKDIR} '${DOCS_WRKSRC}'
.for FILES in ${DOCS}
    @${MV} '${WRKSRC}/${FILES}' '${DOCS_WRKSRC}'
.endfor

post-patch:
    @cd '${WRKSRC}' && { ${FIND} . -type f -name '*.orig' -print0 | ${XARGS} -0 -J % ${MV} % '${DOCS_WRKSRC}'; }

do-install:
    @if ${TEST} -e '${TEMP_DIFF}'; then ${RM} -f '${TEMP_DIFF}'; fi
    @${TOUCH} '${TEMP_DIFF}'
.for DIR in ${USEREDITABLEDIRS}
    @if ${TEST} -d '${WWWDIR}/${DIR}'; then \
       cd '${WRKSRC}/${DIR}' && { ${DIFF} -auwr . '${WWWDIR}/${DIR}' | ${EGREP} -v -e '^Only[[:space:]]+in[[:space:]]' >>'${TEMP_DIFF}' || ${TRUE}; }   \
     fi
.endfor
    @if ${TEST} -s '${TEMP_DIFF}'; then \
       ${ECHO} '*******************************************************';   \
       ${ECHO} 'CAUTION CAUTION CAUTION CAUTION CAUTION CAUTION CAUTION';   \
       ${ECHO} '*******************************************************';   \
       ${ECHO} 'Output of diff: ${TEMP_DIFF}';  \
       ${ECHO}; \
       ${ECHO} 'Installer will *OVERWRITE* files on ${WWWDIR}'; \
       ${ECHO} 'Press ctrl-C *now* to backup them manually.';   \
       sleep 7; \
     fi
.if !defined(NOPORTDOCS)
    @${MKDIR} '${DOCSDIR}'
    @cd '${DOCS_WRKSRC}' && ${COPYTREE_SHARE} . '${DOCSDIR}'
.endif
    @${MKDIR} '${WWWDIR}'
    @cd '${WRKSRC}' && ${COPYTREE_SHARE} . '${WWWDIR}'
.for DIR in ${WRITABLEDIRS}
    @${CHOWN} -R '${WWWOWN}:${WWWGRP}' '${WWWDIR}/${DIR}'
    @${FIND} '${WWWDIR}/${DIR}' -type d -print0 | ${XARGS} -0 ${CHMOD} u=rwx,go=rx
    @${FIND} '${WWWDIR}/${DIR}' -type f -print0 | ${XARGS} -0 ${CHMOD} u=rw,go=r
.endfor

post-install:
    @${CAT} ${PKGMESSAGE}

.include <bsd.port.mk>