Skip to content

Instantly share code, notes, and snippets.

@ereOn
Last active August 29, 2015 14:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ereOn/dd34f9adac6889384110 to your computer and use it in GitHub Desktop.
Save ereOn/dd34f9adac6889384110 to your computer and use it in GitHub Desktop.
Add FreeLAN to OpenWRT
From 54bd71c6ec68f1a5b630a1897b36bdaea6127e56 Mon Sep 17 00:00:00 2001
From: Julien Kauffmann <julien.kauffmann@freelan.org>
Date: Sun, 19 Apr 2015 16:20:27 -0400
Subject: [PATCH] Added FreeLAN
---
package/network/services/freelan/Makefile | 74 ++++++++++++++++++++
.../network/services/freelan/files/freelan.init | 15 ++++
2 files changed, 89 insertions(+)
create mode 100644 package/network/services/freelan/Makefile
create mode 100644 package/network/services/freelan/files/freelan.init
diff --git a/package/network/services/freelan/Makefile b/package/network/services/freelan/Makefile
new file mode 100644
index 0000000..017a011
--- /dev/null
+++ b/package/network/services/freelan/Makefile
@@ -0,0 +1,74 @@
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=freelan
+PKG_VERSION:=2015-04-19
+PKG_RELEASE=$(PKG_SOURCE_VERSION)
+
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_URL:=git://github.com/freelan-developers/freelan-all.git
+PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
+PKG_SOURCE_VERSION:=430a94298b7a3d75add0fa327873ad7712b136eb
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
+
+PKG_LICENSE:=GPLv3+
+PKG_LICENSE_FILES:=
+
+PKG_BUILD_PARALLEL:=1
+PKG_USE_MIPS16:=0
+
+PKG_MAINTAINER:="Julien Kauffmann"
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/nls.mk
+include $(INCLUDE_DIR)/scons.mk
+
+define Package/freelan
+ SECTION:=net
+ CATEGORY:=Network
+ SUBMENU:=VPN
+ DEPENDS:=+boost-date_time +boost-filesystem +boost-iostreams +boost-program_options +boost-system +boost-thread +kmod-tun +libopenssl +libstdcpp +libiconv +libcurl
+ TITLE:=Highly-configurable peer-to-peer VPN software
+ URL:=http://www.freelan.org
+endef
+
+define Package/freelan/description
+ A free, open-source, multi-platform, highly-configurable and peer-to-peer VPN software, designed to easily connect remote hosts and mainly focused on security and performance.
+endef
+
+TARGET_CFLAGS += -Wno-error=return-type
+
+SCONS_VARS += \
+ LIBS="iconv" \
+ LINKFLAGS="$(TARGET_LDFLAGS) $(EXTRA_LDFLAGS)" \
+ FREELAN_NO_GIT=1 \
+ FREELAN_NO_GIT_VERSION="$(PKG_VERSION)-$(PKG_SOURCE_VERSION)"
+
+SCONS_OPTIONS = "--mode=release"
+
+define Package/freelan/install
+ $(INSTALL_DIR) \
+ $(1)/usr/bin \
+ $(1)/etc/freelan \
+ $(1)/etc/init.d
+
+ # Copying binary.
+ $(INSTALL_BIN) \
+ $(PKG_INSTALL_DIR)/usr/bin/freelan \
+ $(1)/usr/bin/freelan
+
+ # Copying configuration.
+ #$(INSTALL_CONF) \
+ # $(PKG_BUILD_DIR)/freelan/config/* \
+ # $(1)/etc/freelan
+
+ # Creating service.
+ $(INSTALL_BIN) \
+ files/freelan.init \
+ $(1)/etc/init.d/freelan
+endef
+
+define Package/freelan/conffiles
+ /etc/freelan
+endef
+
+$(eval $(call BuildPackage,freelan))
diff --git a/package/network/services/freelan/files/freelan.init b/package/network/services/freelan/files/freelan.init
new file mode 100644
index 0000000..ffec10b
--- /dev/null
+++ b/package/network/services/freelan/files/freelan.init
@@ -0,0 +1,15 @@
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2006-2012 OpenWrt.org
+
+SERVICE_PID_FILE=/var/run/freelan.pid
+SERVICE_USE_PID=1
+START=46
+
+start() {
+ service_start /usr/bin/freelan -c /etc/freelan/freelan.cfg -p /var/run/freelan.pid
+}
+
+stop() {
+ service_stop /usr/bin/freelan
+}
+
--
1.7.10.4
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment