summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-misc/openvpn/openvpn-2.0.2-r3.ebuild')
-rw-r--r--net-misc/openvpn/openvpn-2.0.2-r3.ebuild119
1 files changed, 119 insertions, 0 deletions
diff --git a/net-misc/openvpn/openvpn-2.0.2-r3.ebuild b/net-misc/openvpn/openvpn-2.0.2-r3.ebuild
new file mode 100644
index 000000000000..05a1679eac2d
--- /dev/null
+++ b/net-misc/openvpn/openvpn-2.0.2-r3.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/openvpn/openvpn-2.0.2-r3.ebuild,v 1.1 2005/10/14 13:04:32 uberlord Exp $
+
+inherit eutils gnuconfig multilib
+
+DESCRIPTION="OpenVPN is a robust and highly flexible tunneling application compatible with many OSes."
+SRC_URI="http://openvpn.net/release/openvpn-${PV}.tar.gz"
+HOMEPAGE="http://openvpn.net/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~ppc-macos ~sparc ~x86"
+IUSE="examples iproute2 minimal selinux ssl static threads"
+
+RDEPEND=">=dev-libs/lzo-1.07
+ iproute2? ( sys-apps/iproute2 ) || ( sys-apps/net-tools )
+ selinux? ( sec-policy/selinux-openvpn )
+ ssl? ( >=dev-libs/openssl-0.9.6 )"
+DEPEND="${RDEPEND}
+ virtual/os-headers"
+
+src_unpack() {
+ unpack "${A}"
+ gnuconfig_update
+}
+
+src_compile() {
+ local myconf=""
+ # We cannot use use_enable with iproute2 as the Makefile stupidly
+ # enables it with --disable-iproute2
+ use iproute2 && myconf="${myconf} --enable-iproute2"
+
+ econf ${myconf} \
+ $(use_enable ssl) \
+ $(use_enable ssl crypto) \
+ $(use_enable threads pthread) \
+ || die "configure failed"
+
+ use static && sed -e -i '/^LIBS/s/LIBS = /LIBS = -static /' Makefile
+
+ emake || die "make failed"
+
+ if ! use minimal ; then
+ cd plugin
+ for i in $( ls 2>/dev/null ); do
+ [[ ${i} == "README" || ${i} == "examples" ]] && continue
+ einfo "Building ${i} plugin"
+ cd "${i}"
+ emake || die "make failed"
+ cd ..
+ done
+ cd ..
+ fi
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die "make install failed"
+
+ # install documentation
+ dodoc AUTHORS ChangeLog INSTALL PORTS README
+
+ # Empty dir
+ dodir /etc/openvpn
+ keepdir /etc/openvpn
+
+ # Install the init script
+ newinitd "${FILESDIR}/openvpn.init" openvpn
+
+ # Install easy-rsa stuffs
+ dodir "/usr/share/${PN}/easy-rsa"
+ exeinto "/usr/share/${PN}/easy-rsa"
+ doexe easy-rsa/2.0/*
+ exeopts -m0644
+
+ # install examples, controlled by the respective useflag
+ if use examples ; then
+ docinto examples
+ dodoc -r sample-{config-files,keys,scripts} contrib
+ fi
+
+ # Install plugins
+ if ! use minimal ; then
+ dodir "/usr/share/${PN}/plugins"
+ exeinto "/usr/share/${PN}/plugins"
+ doexe plugin/*/*.so
+ fi
+}
+
+pkg_postinst() {
+ ewarn "WARNING: The openvpn init script has changed"
+ ewarn ""
+ einfo "The openvpn init script expects to find the configuration file"
+ einfo "openvpn.conf in /etc/openvpn along with any extra files it may need."
+ einfo ""
+ einfo "To create more VPNs, simply create a new .conf file for it and"
+ einfo "then create a symlink to the openvpn init script from a link called"
+ einfo "openvpn.newconfname - like so"
+ einfo " cd /etc/openvpn"
+ einfo " ${EDITOR##*/} foo.conf"
+ einfo " cd /etc/init.d"
+ einfo " ln -s openvpn openvpn.foo"
+ einfo ""
+ einfo "You can then treat openvpn.foo as any other service, so you can"
+ einfo "stop one vpn and start another if you need to."
+ if ! use minimal ; then
+ einfo ""
+ einfo "plugins have been installed into /usr/$(get_libdir)/${PN}"
+ fi
+ einfo ""
+ einfo "It is recommended that you create your tun/tap interfaces using"
+ einfo "the net.tun0/net.tap0 scripts provided by baselayout instead of"
+ einfo "using the 'server' directive in openvpn configuration files."
+ einfo "This will insure that the interface really is up after openvpn"
+ einfo "starts."
+ einfo "Note that you cannot use net.tun0/net.tap0 and the server option,"
+ einfo "otherwise openvpn will not start."
+ ebeep
+}