| 1 | # $FreeWRT$
|
|---|
| 2 | #-
|
|---|
| 3 | # This file is part of the FreeWRT project. FreeWRT is copyrighted
|
|---|
| 4 | # material, please see the LICENCE file in the top-level directory
|
|---|
| 5 | # or at http://www.freewrt.org/licence for details.
|
|---|
| 6 |
|
|---|
| 7 | include $(TOPDIR)/rules.mk
|
|---|
| 8 |
|
|---|
| 9 | PKG_NAME:= openvpn
|
|---|
| 10 | PKG_VERSION:= 2.1.0
|
|---|
| 11 | PKG_RELEASE:= 1
|
|---|
| 12 | PKG_MD5SUM:= 452a83326ae198cf961e9ae02539c8fb
|
|---|
| 13 | PKG_INIT:= 60
|
|---|
| 14 |
|
|---|
| 15 | PKG_SOURCE_URL:= http://openvpn.net/release \
|
|---|
| 16 | https://secure.openvpn.net/beta
|
|---|
| 17 | PKG_SOURCE:= $(PKG_NAME)-$(PKG_VERSION).tar.gz
|
|---|
| 18 |
|
|---|
| 19 | include $(TOPDIR)/mk/package.mk
|
|---|
| 20 |
|
|---|
| 21 | $(eval $(call PKG_template,OPENVPN,openvpn,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
|
|---|
| 22 | $(eval $(call PKG_template,OPENVPN_EASY_RSA,openvpn-easy-rsa,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
|
|---|
| 23 |
|
|---|
| 24 | PKG_DEPEND:="kmod-tun"
|
|---|
| 25 |
|
|---|
| 26 | ifneq ($(FWRT_COMPILE_OPENVPN_WITH_OPENSSL),y)
|
|---|
| 27 | DISABLE_OPENSSL:=--disable-ssl --disable-crypto
|
|---|
| 28 | else
|
|---|
| 29 | PKG_DEPEND+=", libopenssl"
|
|---|
| 30 | endif
|
|---|
| 31 |
|
|---|
| 32 | ifneq ($(FWRT_COMPILE_OPENVPN_WITH_LZO),y)
|
|---|
| 33 | DISABLE_LZO:=--disable-lzo
|
|---|
| 34 | else
|
|---|
| 35 | PKG_DEPEND+=", liblzo"
|
|---|
| 36 | endif
|
|---|
| 37 |
|
|---|
| 38 | ifneq ($(FWRT_COMPILE_OPENVPN_WITH_SERVER),y)
|
|---|
| 39 | DISABLE_SERVER:=--disable-server
|
|---|
| 40 | endif
|
|---|
| 41 | ifneq ($(FWRT_COMPILE_OPENVPN_WITH_HTTP),y)
|
|---|
| 42 | DISABLE_HTTP:=--disable-http
|
|---|
| 43 | endif
|
|---|
| 44 | ifeq ($(FWRT_COMPILE_OPENVPN_WITH_PASSWORD_SAVE),y)
|
|---|
| 45 | ENABLE_PASSWORD_SAVE:=--enable-password-save
|
|---|
| 46 | endif
|
|---|
| 47 | DISABLE_MANAGEMENT:=--disable-management
|
|---|
| 48 | ifeq ($(FWRT_COMPILE_OPENVPN_WITH_MANAGEMENT),y)
|
|---|
| 49 | DISABLE_MANAGEMENT:=
|
|---|
| 50 | endif
|
|---|
| 51 | ifeq ($(FWRT_COMPILE_OPENVPN_WITH_SMALL),y)
|
|---|
| 52 | ENABLE_SMALL:=--enable-small
|
|---|
| 53 | endif
|
|---|
| 54 |
|
|---|
| 55 | $(WRKBUILD)/.configured:
|
|---|
| 56 | (cd $(WRKBUILD); rm -rf config.{cache,status} ; \
|
|---|
| 57 | $(TARGET_CONFIGURE_OPTS) \
|
|---|
| 58 | CFLAGS="$(strip $(TARGET_CFLAGS))" \
|
|---|
| 59 | CPPFLAGS="-I$(STAGING_DIR)/usr/include" \
|
|---|
| 60 | LDFLAGS="-L$(STAGING_DIR)/usr/lib" \
|
|---|
| 61 | ./configure \
|
|---|
| 62 | --target=$(GNU_TARGET_NAME) \
|
|---|
| 63 | --host=$(GNU_TARGET_NAME) \
|
|---|
| 64 | --build=$(GNU_HOST_NAME) \
|
|---|
| 65 | --program-prefix="" \
|
|---|
| 66 | --program-suffix="" \
|
|---|
| 67 | --prefix=/usr \
|
|---|
| 68 | --exec-prefix=/usr \
|
|---|
| 69 | --bindir=/usr/bin \
|
|---|
| 70 | --datadir=/usr/share \
|
|---|
| 71 | --includedir=/usr/include \
|
|---|
| 72 | --infodir=/usr/share/info \
|
|---|
| 73 | --libdir=/usr/lib \
|
|---|
| 74 | --libexecdir=/usr/lib \
|
|---|
| 75 | --localstatedir=/var \
|
|---|
| 76 | --mandir=/usr/share/man \
|
|---|
| 77 | --sbindir=/usr/sbin \
|
|---|
| 78 | --sysconfdir=/etc \
|
|---|
| 79 | --disable-nls \
|
|---|
| 80 | --enable-shared \
|
|---|
| 81 | --disable-static \
|
|---|
| 82 | --disable-pthread \
|
|---|
| 83 | --disable-debug \
|
|---|
| 84 | --disable-plugins \
|
|---|
| 85 | --disable-socks \
|
|---|
| 86 | --enable-iproute2 \
|
|---|
| 87 | --with-iproute-path=/bin/ip \
|
|---|
| 88 | --without-ifconfig-path \
|
|---|
| 89 | --without-route-path \
|
|---|
| 90 | $(DISABLE_LZO) \
|
|---|
| 91 | $(DISABLE_OPENSSL) \
|
|---|
| 92 | $(DISABLE_SERVER) \
|
|---|
| 93 | $(DISABLE_HTTP) \
|
|---|
| 94 | $(DISABLE_MANAGEMENT) \
|
|---|
| 95 | $(ENABLE_PASSWORD_SAVE) \
|
|---|
| 96 | $(ENABLE_SMALL) \
|
|---|
| 97 | );
|
|---|
| 98 | touch $@
|
|---|
| 99 |
|
|---|
| 100 | $(WRKBUILD)/.built:
|
|---|
| 101 | $(MAKE) -C $(WRKBUILD)
|
|---|
| 102 | mkdir -p $(WRKINST)
|
|---|
| 103 | $(MAKE) -C $(WRKBUILD) \
|
|---|
| 104 | DESTDIR="$(WRKINST)" \
|
|---|
| 105 | install
|
|---|
| 106 | touch $@
|
|---|
| 107 |
|
|---|
| 108 | $(IPKG_OPENVPN):
|
|---|
| 109 | install -d -m0755 $(IDIR_OPENVPN)/usr/sbin
|
|---|
| 110 | $(CP) $(WRKINST)/usr/sbin/openvpn $(IDIR_OPENVPN)/usr/sbin/
|
|---|
| 111 | install -d -m0755 $(IDIR_OPENVPN)/etc/init.d
|
|---|
| 112 | $(CP) ./files/openvpn.init $(IDIR_OPENVPN)/etc/init.d/S$(PKG_INIT)openvpn
|
|---|
| 113 | install -d -m0755 $(IDIR_OPENVPN)/etc/openvpn
|
|---|
| 114 | $(CP) ./files/client.conf.example $(IDIR_OPENVPN)/etc/openvpn/
|
|---|
| 115 | if [ -z "$(DISABLE_SERVER)" ] ; then \
|
|---|
| 116 | $(CP) ./files/server.conf.example $(IDIR_OPENVPN)/etc/openvpn/ ; \
|
|---|
| 117 | fi
|
|---|
| 118 | echo "Depends: $(PKG_DEPEND)" >> $(IDIR_OPENVPN)/CONTROL/control
|
|---|
| 119 | $(RSTRIP) $(IDIR_OPENVPN)
|
|---|
| 120 | $(IPKG_BUILD) $(IDIR_OPENVPN) $(PACKAGE_DIR)
|
|---|
| 121 |
|
|---|
| 122 | $(IPKG_OPENVPN_EASY_RSA):
|
|---|
| 123 | install -d -m0755 $(IDIR_OPENVPN_EASY_RSA)/usr/sbin
|
|---|
| 124 | install -d -m0755 $(IDIR_OPENVPN_EASY_RSA)/etc/easy-rsa/keys
|
|---|
| 125 | touch $(IDIR_OPENVPN_EASY_RSA)/etc/easy-rsa/keys/index.txt
|
|---|
| 126 | $(CP) ./files/serial $(IDIR_OPENVPN_EASY_RSA)/etc/easy-rsa/keys
|
|---|
| 127 | $(CP) $(WRKBUILD)/easy-rsa/2.0/{build-*,clean-all,inherit-inter,list-crl,pkitool,revoke-full,sign-req,whichopensslcnf} $(IDIR_OPENVPN_EASY_RSA)/usr/sbin
|
|---|
| 128 | install -m 0644 $(WRKBUILD)/easy-rsa/2.0/openssl.cnf $(IDIR_OPENVPN_EASY_RSA)/etc/easy-rsa/openssl.cnf
|
|---|
| 129 | install -m 0644 $(WRKBUILD)/easy-rsa/2.0/vars $(IDIR_OPENVPN_EASY_RSA)/etc/easy-rsa/vars
|
|---|
| 130 | $(IPKG_BUILD) $(IDIR_OPENVPN_EASY_RSA) $(PACKAGE_DIR)
|
|---|