[oe-commits] org.oe.dev squid: improve configuration defaults and provide init script

jeremy_laine commit oe at amethyst.openembedded.net
Wed Mar 26 14:32:41 UTC 2008


squid: improve configuration defaults and provide init script
* provide sane defaults for configuration file (based on Debian package)
* provide an init script for squid which creates log/cache directories
  as needed

Author: jeremy_laine at openembedded.org
Branch: org.openembedded.dev
Revision: 4724e3c77b1dd0458ee0546ec9a8b88a8e779e01
ViewMTN: http://monotone.openembedded.org/revision/info/4724e3c77b1dd0458ee0546ec9a8b88a8e779e01
Files:
1
packages/squid/squid
packages/squid/squid/fix_epoll_check.patch
packages/squid/squid/squid.init
MAINTAINERS
packages/squid/squid_2.6.STABLE14.bb
Diffs:

#
# mt diff -r62a647370dd26246593ae04455db0739130db23f -r4724e3c77b1dd0458ee0546ec9a8b88a8e779e01
#
#
#
# add_dir "packages/squid/squid"
# 
# add_file "packages/squid/squid/fix_epoll_check.patch"
#  content [3cc93eef4aafb715194029ed206e7ac60e3299b8]
# 
# add_file "packages/squid/squid/squid.init"
#  content [68fb293ffb22b47445e4d15cbb9c5f22e0e64ccb]
# 
# patch "MAINTAINERS"
#  from [de433c170983a60ed1709174946f4c121b20e5d9]
#    to [9d64b9db0e89fa6fdd11390962b7ad4cdb7cc68c]
# 
# patch "packages/squid/squid_2.6.STABLE14.bb"
#  from [a3362ec5fbb758d23c416f5a20431fc5e27a6f40]
#    to [c0df6545b0a97a3186cdbeb762ef44b380dedc3b]
#
============================================================
--- packages/squid/squid/fix_epoll_check.patch	3cc93eef4aafb715194029ed206e7ac60e3299b8
+++ packages/squid/squid/fix_epoll_check.patch	3cc93eef4aafb715194029ed206e7ac60e3299b8
@@ -0,0 +1,11 @@
+--- squid-2.6.STABLE14.orig/configure.in	2007-07-15 16:21:59.000000000 +0200
++++ squid-2.6.STABLE14/configure.in	2008-03-25 17:15:53.000000000 +0100
+@@ -2416,7 +2416,7 @@
+ 
+ if test -n "$SELECT_TYPE"; then
+ 	: # Nothing to do
+-elif test "$ac_cv_epoll_works" = "yes" ; then
++elif test "$ac_cv_func_epoll_ctl" = "yes" && "$ac_cv_epoll_works" = "yes" ; then
+ 	SELECT_TYPE="epoll"
+ elif test "$ac_cv_func_kqueue" = "yes" ; then
+ 	SELECT_TYPE="kqueue"
============================================================
--- packages/squid/squid/squid.init	68fb293ffb22b47445e4d15cbb9c5f22e0e64ccb
+++ packages/squid/squid/squid.init	68fb293ffb22b47445e4d15cbb9c5f22e0e64ccb
@@ -0,0 +1,70 @@
+#!/bin/sh
+DAEMON=/usr/sbin/squid
+NAME=squid
+DESC="Squid HTTP proxy"
+PIDFILE=/var/run/squid.pid
+SQUID_ARGS="-D -sYC"
+
+test -f $DAEMON || exit 0
+
+grepconf() {
+    w="     " # space tab
+    sq=/etc/$NAME.conf
+    # sed is cool.
+    res=`sed -ne '
+            s/^'$1'['"$w"']\+[^'"$w"']\+['"$w"']\+\([^'"$w"']\+\).*$/\1/p;
+            t end;
+            d;
+            :end q' < $sq`
+    [ -n "$res" ] || res=$2
+    echo "$res"
+}
+
+start() {
+    owner=nobody
+
+    cdr=`grepconf cache_dir /var/spool/$NAME`
+    if [ ! -d "$cdr/00" ]; then
+        mkdir -p $cdr
+	chown $owner $cdr
+	$DAEMON -z
+    fi
+    
+    ldr="/var/log/$NAME"
+    if [ ! -d "$ldr" ]; then
+        mkdir -p $ldr
+	chown $owner $cdr
+    fi
+
+    start-stop-daemon -S -p $PIDFILE -x $DAEMON
+}
+
+stop() {
+        start-stop-daemon -K -p $PIDFILE -x $DAEMON
+}
+
+case "$1" in
+    start)
+        echo -n "Starting $DESC: $NAME... "
+        start
+        echo "done."
+       ;;
+    stop)
+        echo -n "Stopping $DESC: $NAME... "
+        stop
+        echo "done."
+        ;;
+    restart)
+        echo "Restarting $DESC: $NAME... "
+        stop
+        sleep 1
+        start
+        echo "done."
+        ;;
+    *)
+        echo "Usage: $0 {start|stop|restart}"
+        exit 1
+        ;;
+esac
+
+exit 0
============================================================
--- MAINTAINERS	de433c170983a60ed1709174946f4c121b20e5d9
+++ MAINTAINERS	9d64b9db0e89fa6fdd11390962b7ad4cdb7cc68c
@@ -97,7 +97,7 @@ Recipes:    libexosip2, python-cheetah, 
 Website:    http://www.jerryweb.org/
 Machines:   mpc8313e-rdb
 Recipes:    libexosip2, python-cheetah, python-django, python-pyopenssl,
-Recipes:    pump, squidview
+Recipes:    pump, squid, squidview
 
 Person:     Joaquim Duran
 Mail:       joaquinduran at adtelecom.es
============================================================
--- packages/squid/squid_2.6.STABLE14.bb	a3362ec5fbb758d23c416f5a20431fc5e27a6f40
+++ packages/squid/squid_2.6.STABLE14.bb	c0df6545b0a97a3186cdbeb762ef44b380dedc3b
@@ -1,18 +1,36 @@ LICENSE = "GPLv2"
 DESCRIPTION = "Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more"
 LICENSE = "GPLv2"
-
+PR = "r1"
 DEPENDS = "squid-native-${PV}"
 
-SRC_URI = "http://www.squid-cache.org/Versions/v2/2.6/squid-${PV}.tar.bz2"
+SRC_URI = "http://www.squid-cache.org/Versions/v2/2.6/squid-${PV}.tar.bz2 \
+           file://fix_epoll_check.patch;patch=1 \
+           file://squid.init"
 
-inherit autotools
+inherit autotools update-rc.d
 
 EXTRA_OECONF = "--disable-epoll --disable-nls"
 
+logdir = ${localstatedir}/log/squid
+EXTRA_OEMAKE = "\
+  DEFAULT_CACHE_LOG=${logdir}/cache.log \
+  DEFAULT_ACCESS_LOG=${logdir}/access.log \
+  DEFAULT_STORE_LOG=${logdir}/store.log \
+  DEFAULT_PID_FILE=${localstatedir}/run/squid.pid \
+  DEFAULT_SWAP_DIR=${localstatedir}/spool/squid \
+  "
+
+INITSCRIPT_NAME = "squid"
+
 do_configure_append() {
    sed -i -e 's|./cf_gen |${STAGING_BINDIR_NATIVE}/cf_gen |g' src/Makefile
 }
 
+do_install_append() {
+	install -d ${D}${sysconfdir}/init.d
+	install -m 755 ${WORKDIR}/squid.init ${D}${sysconfdir}/init.d/squid
+}
+
 # this packages the languages better and saves some space, installs
 # English as errors default and the others in locale package
 






More information about the Openembedded-commits mailing list