From 82d6d2f77225ca19b6a9ae096269d7e8e4eb2268 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=97=E6=B5=A6=E6=9C=88?= Date: Sun, 9 Mar 2014 12:32:57 +0800 Subject: [PATCH 1/2] Update Makefile MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1./etc/config下的配置文件都是uci的配置文件,所以建议将shadowsocks.json置于/etc/shadowsocks.json 2.PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION),为两个版本设置不同的编译目录,否则当同时编译两个版本时出错 3.优化安装脚本 --- openwrt/Makefile | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/openwrt/Makefile b/openwrt/Makefile index 9ef416d2..97609ed5 100644 --- a/openwrt/Makefile +++ b/openwrt/Makefile @@ -11,9 +11,10 @@ PKG_SOURCE_VERSION:=69f8bd61c096337abb34a9e64534865d08022957 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz PKG_MAINTAINER:=Max Lv -PKG_INSTALL:=1 -PKG_FIXUP:=autoreconf +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) +PKG_INSTALL:=1 +PKG_FIXUP:=autoreconf PKG_BUILD_PARALLEL:=1 include $(INCLUDE_DIR)/package.mk @@ -46,7 +47,7 @@ endef Package/shadowsocks-libev-polarssl/description=$(Package/shadowsocks-libev/description) define Package/shadowsocks-libev/conffiles -/etc/config/shadowsocks.json +/etc/shadowsocks.json endef ifeq ($(BUILD_VARIANT),polarssl) @@ -54,12 +55,11 @@ ifeq ($(BUILD_VARIANT),polarssl) endif define Package/shadowsocks-libev/install - $(INSTALL_DIR) $(1)/usr/bin $(1)/etc/init.d $(1)/etc/config - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/ss-local $(1)/usr/bin/ss-local - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/ss-redir $(1)/usr/bin/ss-redir - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/ss-tunnel $(1)/usr/bin/ss-tunnel + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_CONF) ./files/shadowsocks.json $(1)/etc $(INSTALL_BIN) ./files/shadowsocks.init $(1)/etc/init.d/shadowsocks - $(INSTALL_CONF) ./files/shadowsocks.json $(1)/etc/config/shadowsocks.json + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/ss-{local,redir,tunnel} $(1)/usr/bin endef Package/shadowsocks-libev-polarssl/install=$(Package/shadowsocks-libev/install) From 0ce9c15186e2fcadc02b80e7e41af41eb98ac643 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=97=E6=B5=A6=E6=9C=88?= Date: Sun, 9 Mar 2014 12:36:59 +0800 Subject: [PATCH 2/2] Update shadowsocks.init MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1.使用OpenWrt提供的service_start及service_stop函数控制服务开关 2.由service_start函数生成pid文件 3.改配置文件目录为/etc/shadowsocks.json --- openwrt/files/shadowsocks.init | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/openwrt/files/shadowsocks.init b/openwrt/files/shadowsocks.init index 9aabd8f7..7d179638 100644 --- a/openwrt/files/shadowsocks.init +++ b/openwrt/files/shadowsocks.init @@ -2,15 +2,15 @@ # Copyright (C) 2006-2011 OpenWrt.org START=95 -STOP=95 + +SERVICE_USE_PID=1 +SERVICE_WRITE_PID=1 +SERVICE_DAEMONIZE=1 start() { - echo "starting shadowsocks..." - /usr/bin/ss-local -c /etc/config/shadowsocks.json -f /var/run/shadowsocks.pid + service_start /usr/bin/ss-local -c /etc/shadowsocks.json } stop() { - echo "shadowsocks stopped." - kill -9 `cat /var/run/shadowsocks.pid` + service_stop /usr/bin/ss-local } -