@ -0,0 +1,70 @@ | |||||
# | |||||
# Copyright (C) 2015 OpenWrt.org | |||||
# | |||||
# This is free software, licensed under the GNU General Public License v2. | |||||
# See /LICENSE for more information. | |||||
# | |||||
include $(TOPDIR)/rules.mk | |||||
PKG_NAME:=fossil | |||||
PKG_VERSION:=1.33 | |||||
PKG_RELEASE:=1 | |||||
PKG_LICENSE:=BSD-2-Clause | |||||
PKG_MAINTAINER:=Luka Perkov <luka@openwrt.org> | |||||
PKG_SOURCE:=$(PKG_NAME)-src-${PKG_VERSION}.tar.gz | |||||
PKG_SOURCE_URL:=http://www.fossil-scm.org/download/ | |||||
PKG_MD5SUM:=53f8145084a2065d6cb734980c172c7e | |||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-src-$(PKG_VERSION) | |||||
PKG_INSTALL:=1 | |||||
PKG_BUILD_PARALLEL:=1 | |||||
include $(INCLUDE_DIR)/package.mk | |||||
define Package/fossil | |||||
SECTION:=net | |||||
CATEGORY:=Network | |||||
SUBMENU:=Version Control Systems | |||||
TITLE:=Simple distributed software configuration management | |||||
URL:=http://www.fossil-scm.org | |||||
DEPENDS:=+zlib | |||||
endef | |||||
define Package/fossil/description | |||||
Fossil is a distributed version control system, bug tracking system | |||||
and wiki software server for use in software development. | |||||
endef | |||||
MAKE_FLAGS := \ | |||||
TCC="$(TARGET_CC)" \ | |||||
CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include -DFOSSIL_ENABLE_JSON" \ | |||||
LDFLAGS="$(TARGET_LDFLAGS) -Wl,-rpath=$(TOOLCHAIN_DIR)/lib -L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib" \ | |||||
undefine Build/Configure | |||||
define Build/Compile | |||||
$(call Build/Compile/Default, \ | |||||
-f Makefile.classic $(MAKE_FLAGS) all \ | |||||
) | |||||
endef | |||||
undefine Build/Install | |||||
define Package/fossil/conffiles | |||||
/etc/config/fossil | |||||
endef | |||||
define Package/fossil/install | |||||
$(INSTALL_DIR) $(1)/usr/bin | |||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_NAME) $(1)/usr/bin/ | |||||
$(INSTALL_DIR) $(1)/etc/init.d | |||||
$(INSTALL_BIN) ./files/fossil.init $(1)/etc/init.d/fossil | |||||
$(INSTALL_DIR) $(1)/etc/config | |||||
$(INSTALL_CONF) ./files/fossil.config $(1)/etc/config/fossil | |||||
endef | |||||
$(eval $(call BuildPackage,fossil)) |
@ -0,0 +1,5 @@ | |||||
config server 'dummy' | |||||
option repository '/tmp/fossil/dummy' | |||||
option port 8008 | |||||
option localhost 0 | |||||
option create 1 |
@ -0,0 +1,54 @@ | |||||
#!/bin/sh /etc/rc.common | |||||
# Copyright (C) 2015 OpenWrt.org | |||||
START=90 | |||||
USE_PROCD=1 | |||||
start_instance() { | |||||
local cfg="$1" | |||||
config_get repository "$cfg" repository | |||||
if [ -z "$repository" ]; then | |||||
echo "repository is not defined in $1, skipping" | |||||
return | |||||
fi | |||||
config_get_bool create "$cfg" create 0 | |||||
if [ "$create" -eq 0 -a ! -f "$repository" ]; then | |||||
echo "in $1 create option is '$create' and repository '$repository' is not a regular file, skipping" | |||||
return | |||||
fi | |||||
if [ "$create" -eq 1 -a ! -d `dirname $repository` ]; then | |||||
mkdir -p `dirname $repository` | |||||
if [ "$?" -ne 0 ]; then | |||||
echo "could not create directory, skipping" | |||||
return | |||||
fi | |||||
fi | |||||
config_get port "$cfg" port "" | |||||
if [ -z "$port" ]; then | |||||
echo "port is not defined in $1, skipping" | |||||
return | |||||
fi | |||||
config_get_bool debug "$cfg" debug 0 | |||||
config_get_bool localhost "$cfg" localhost 1 | |||||
config_get_bool scgi "$cfg" scgi 0 | |||||
procd_open_instance | |||||
procd_set_param command /usr/bin/fossil server "$repository" --port $port | |||||
[ "$debug" -eq 1 ] && procd_append_param command --th-trace | |||||
[ "$create" -eq 1 ] && procd_append_param command --user root --create | |||||
[ "$localhost" -eq 1 ] && procd_append_param command --localhost | |||||
[ "$scgi" -eq 1 ] && procd_append_param command --scgi | |||||
procd_set_param respawn | |||||
procd_close_instance | |||||
} | |||||
start_service() { | |||||
config_load 'fossil' | |||||
config_foreach start_instance 'server' | |||||
} |
@ -0,0 +1,22 @@ | |||||
--- a/Makefile.classic | |||||
+++ b/Makefile.classic | |||||
@@ -41,9 +41,6 @@ TCC = gcc -g -Os -Wall | |||||
# FOSSIL_ENABLE_MINIZ = 1 | |||||
# TCC += -DFOSSIL_ENABLE_MINIZ | |||||
-# To add support for HTTPS | |||||
-TCC += -DFOSSIL_ENABLE_SSL | |||||
- | |||||
#### Extra arguments for linking the finished binary. Fossil needs | |||||
# to link against the Z-Lib compression library unless the miniz | |||||
# library in the source tree is being used. There are no other | |||||
@@ -58,9 +55,6 @@ ZLIB_LIB. = $(ZLIB_LIB.0) | |||||
# If using zlib: | |||||
LIB = $(ZLIB_LIB.$(FOSSIL_ENABLE_MINIZ)) $(LDFLAGS) | |||||
-# If using HTTPS: | |||||
-LIB += -lcrypto -lssl | |||||
- | |||||
#### Tcl shell for use in running the fossil testsuite. If you do not | |||||
# care about testing the end result, this can be blank. | |||||
# |