blob: 862024a400ed4a9101a5c948c6bc3b5f0e312466 (
plain)
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
|
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sci-chemistry/webmo/webmo-6.0.003.ebuild,v 1.3 2006/02/23 23:17:34 spyderous Exp $
inherit eutils webapp
MY_SRC_PN="WebMO"
MY_SRC_P="${MY_SRC_PN}.${PV}"
DESCRIPTION="Web-based interface to computational chemistry packages"
HOMEPAGE="http://webmo.net/"
SRC_URI="${MY_SRC_P}.tar.gz"
LICENSE="WebMO"
SLOT="${PVR}"
KEYWORDS="~x86"
RESTRICT="fetch"
IUSE=""
RDEPEND="dev-lang/perl
net-www/apache"
DEPEND="${RDEPEND}"
S="${WORKDIR}/${MY_SRC_PN}.install"
pkg_nofetch() {
einfo "Go to http://webmo.net/ and register for a free license."
einfo "Download ${SRC_URI} and place it in ${DISTDIR}."
}
src_unpack() {
# We need a license number to proceed
if [[ -z ${WEBMO_LICENSE} ]]; then
msg="You must set WEBMO_LICENSE to your license number in make.conf."
ewarn "$msg"
die "$msg"
fi
# Check for invalid license values. Valid are dddd-dddd-dddd
if [[ ${WEBMO_LICENSE} != [0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9] ]]; then
msg="Invalid license format. Licenses should be DDDD-DDDD-DDDD (D is a digit)."
ewarn "$msg"
die "$msg"
fi
unpack ${A}
# Set up program locations to match where portage installs them
epatch ${FILESDIR}/gentoo-locations.patch
# Add a data directory for gamess, because WebMO expects everything
# in one directory instead of FHS
# (Depends on gentoo-locations.patch)
epatch ${FILESDIR}/add-gamess-data-directory.patch
# Don't run diagnose.pl or ask about being root user
epatch ${FILESDIR}/dont-be-interactive-or-diagnose.patch
# Make setup.conf
create_setup_conf
}
src_install() {
webapp_src_preinst
# Install everything
perl setup.pl || die "Check ${S}/diagnose.html for errors"
# Get ${D} out of main config file
dosed "${MY_CGIBINDIR}/webmo/interfaces/globals.int"
webapp_hook_script ${FILESDIR}/reconfig
local files=$(find ${D}${MY_HOSTROOTDIR}/webmo ${D}${MY_CGIBINDIR}/webmo/interfaces)
# Add the directories themselves
files="${files} ${MY_HOSTROOTDIR}/webmo ${MY_CGIBINDIR}/webmo/interfaces"
files=$(echo ${files} | sed -e "s:${D}::g")
for file in ${files}; do
webapp_configfile "${file}"
webapp_serverowned "${file}"
done
webapp_src_install
}
pkg_postinst() {
einfo
einfo "Be sure that this line is uncommented in httpd.conf:"
einfo "AddHandle cgi-scripts .cgi"
einfo
einfo "The diagnose.pl script can be run if WebMO doesn't work properly."
einfo
webapp_pkg_postinst
}
create_setup_conf() {
local SETUP_CONF="${S}/setup.conf"
echo_setup perlPath /usr/bin/perl "${SETUP_CONF}"
echo_setup htmlBase "${D}${MY_HTDOCSDIR}" "${SETUP_CONF}"
echo_setup url_htmlBase /webmo "${SETUP_CONF}"
echo_setup cgiBase "${D}${MY_CGIBINDIR}/webmo" "${SETUP_CONF}"
echo_setup url_cgiBase /cgi-bin/webmo "${SETUP_CONF}"
echo_setup userBase "${D}${MY_HOSTROOTDIR}/webmo" "${SETUP_CONF}"
echo_setup license "${WEBMO_LICENSE}" "${SETUP_CONF}"
}
# Takes three arguments:
# 1: variable, 2: value, 3: file to echo them to
echo_setup() {
# All values must be double-quoted, so escape the inner quotes.
echo "${1}=\"${2}\"" >> ${3}
}
|