Skip to Content.
Sympa Menu

sm-commit - [SM-Commit] GIT changes to devel-xorg-modular grimoire by Vlad Glagolev (5fb12b6b87236f6c40dec3efc6f6159b42a8ce49)

sm-commit AT lists.ibiblio.org

Subject: Source Mage code commit list

List archive

Chronological Thread  
  • From: Vlad Glagolev <scm AT sourcemage.org>
  • To: sm-commit AT lists.ibiblio.org
  • Subject: [SM-Commit] GIT changes to devel-xorg-modular grimoire by Vlad Glagolev (5fb12b6b87236f6c40dec3efc6f6159b42a8ce49)
  • Date: Thu, 11 Aug 2011 11:07:54 -0500

GIT changes to devel-xorg-modular grimoire by Vlad Glagolev
<stealth AT sourcemage.org>:

ChangeLog | 3
http/nginx/BUILD | 16
http/nginx/CONFIGURE | 13
http/nginx/DEPENDS | 2
http/nginx/DETAILS | 35 -
http/nginx/HISTORY | 17
http/nginx/PREPARE | 6
http/nginx/PRE_BUILD | 12
http/nginx/syslog-0.6.patch | 277 --------
http/nginx/syslog-0.8-1.0.config | 5
http/nginx/syslog-0.8-1.0.patch | 686
++++++++++++++++++++++
libs/nspr/DETAILS | 4
libs/nspr/HISTORY | 3
mail/pflogsumm/BUILD | 1
mail/pflogsumm/DEPENDS | 5
mail/pflogsumm/DETAILS | 16
mail/pflogsumm/HISTORY | 3
mail/pflogsumm/INSTALL | 3
mail/pflogsumm/PRE_BUILD | 6
mail/pflogsumm/pflogsumm-1.1.1_metalog.patch | 16
printer/ghostscript/DEPENDS | 2
printer/ghostscript/DETAILS | 4
printer/ghostscript/HISTORY | 6
utils/sysklogd/DETAILS | 6
utils/sysklogd/HISTORY | 7
utils/sysklogd/PRE_BUILD | 7
utils/sysklogd/sysklogd-1.4.1-kernel_header.patch | 100 ---
27 files changed, 850 insertions(+), 411 deletions(-)

New commits:
commit 2e72ee0754b261bbad9c98d5780d389596e09150
Author: Vlad Glagolev <stealth AT sourcemage.org>
Commit: Vlad Glagolev <stealth AT sourcemage.org>

ghostscript: fixed broken printing -- added missing cups flag (don't just
bump versions, but test basic functionality)

commit f1eda9555d631f7476dc4ea7ef83a3cc0177438b
Author: Vlad Glagolev <stealth AT sourcemage.org>
Commit: Vlad Glagolev <stealth AT sourcemage.org>

nginx: => 1.0.5 (stable), 0.8.54 (legacy), 0.7.69 (old), 1.1.0 (devel)

commit 30a6d7c62799a9cb8699c6a814df49bb77097f0e
Author: Julien ROZO <julien AT rozo.org>
Commit: Julien ROZO <julien AT rozo.org>

nspr: updated version to 4.8.9

commit a4a7a88362d2a3b50c51c8acae50128f5c363327
Author: Vlad Glagolev <stealth AT sourcemage.org>
Commit: Vlad Glagolev <stealth AT sourcemage.org>

pflogsumm: new spell, logfile analyzer utility for Postfix mailer

commit 63f70e6cb3c9392b625be172990ea1e68fe8b005
Author: Treeve Jelbert <treeve AT sourcemage.org>
Commit: Treeve Jelbert <treeve AT sourcemage.org>

ghostscript: => 9.04

commit 238eb25a69259b20a0166f7e0447f911878e7136
Author: Julien ROZO <julien AT rozo.org>
Commit: Julien ROZO <julien AT rozo.org>

sysklogd: updated version to 1.5.0, PATCHLEVEL=0
removed obsolete 1.4.1 patch
compilation uses sorcery configured CFLAGS and LDFLAGS

diff --git a/ChangeLog b/ChangeLog
index caaf24d..858d9b1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,6 @@
+2011-08-11 Vlad Glagolev <stealth AT sourcemage.org>
+ * mail/pflogsumm: new spell, logfile analyzer utility for Postfix
mailer
+
2011-08-09 Ladislav Hagara <hgr AT vabo.cz>
* crypto/p11-kit: new spell, way to load and enumerate PKCS#11 modules

diff --git a/http/nginx/BUILD b/http/nginx/BUILD
index c9f3298..15c6438 100755
--- a/http/nginx/BUILD
+++ b/http/nginx/BUILD
@@ -1,8 +1,22 @@
+. "$GRIMOIRE/FUNCTIONS" &&
+
create_account nginx &&

persistent_add TEMP_DIR &&
local TEMP_DIR="$INSTALL_ROOT/var/spool/nginx" &&

+if [[ $NGINX_SYSLOG == n ]]; then
+ OPTS="--http-log-path=$INSTALL_ROOT/var/log/nginx/access.log \
+ --error-log-path=$INSTALL_ROOT/var/log/nginx/error.log \
+ $OPTS"
+else
+ if is_version_less $VERSION 0.8; then
+ OPTS="--with-syslog $OPTS"
+ else
+ OPTS="--add-module=$SOURCE_DIRECTORY/syslog $OPTS"
+ fi
+fi &&
+
./configure --prefix="$INSTALL_ROOT/etc/nginx" \
--conf-path="$INSTALL_ROOT/etc/nginx/nginx.conf" \
--sbin-path="$INSTALL_ROOT/usr/sbin/nginx" \
@@ -12,8 +26,6 @@ local TEMP_DIR="$INSTALL_ROOT/var/spool/nginx" &&
--http-client-body-temp-path="$TEMP_DIR/client_body_temp" \
--http-proxy-temp-path="$TEMP_DIR/proxy_temp" \
--http-fastcgi-temp-path="$TEMP_DIR/fastcgi_temp" \
- --http-log-path="$INSTALL_ROOT/var/log/nginx/access.log" \
- --error-log-path="$INSTALL_ROOT/var/log/nginx/error.log" \
$NGINX_OPTS \
$OPTS &&

diff --git a/http/nginx/CONFIGURE b/http/nginx/CONFIGURE
index 356eb6d..79893db 100755
--- a/http/nginx/CONFIGURE
+++ b/http/nginx/CONFIGURE
@@ -1,2 +1,11 @@
-config_query_option NGINX_OPTS "build with syslog support?" n \
- "--with-syslog" ""
+. "$GRIMOIRE/FUNCTIONS" &&
+
+if is_version_less $VERSION 1.1; then
+ config_query NGINX_SYSLOG "Build with syslog support?" n
+else
+ persistent_add NGINX_SYSLOG &&
+ local NGINX_SYSLOG="n"
+fi &&
+
+config_query_option NGINX_OPTS "Build with mail support?" n \
+ "--with-mail" ""
diff --git a/http/nginx/DEPENDS b/http/nginx/DEPENDS
index e386f07..ae99755 100755
--- a/http/nginx/DEPENDS
+++ b/http/nginx/DEPENDS
@@ -9,6 +9,6 @@ optional_depends perl \
"--with-http_perl_module" "" \
"for embedded Perl support" &&

-if list_find "$NGINX_OPTS" "--with-syslog"; then
+if [[ $NGINX_SYSLOG == y ]]; then
depends SYSTEM-LOGGER
fi
diff --git a/http/nginx/DETAILS b/http/nginx/DETAILS
index 60646e1..fd494ef 100755
--- a/http/nginx/DETAILS
+++ b/http/nginx/DETAILS
@@ -1,21 +1,32 @@
SPELL=nginx
-if [[ $NGINX_RELEASE == legacy ]]; then
- VERSION=0.6.39
- SECURITY_PATCH=1
-
SOURCE_HASH=sha512:b8ec805b146eb4050b66987e00d23568cab8dfb620ad021b02e09aac6df37919d17e9ef6102b3b08fbb8b07262da46d595e263b3de62d83f0be624dd8a3822d8
-else
- VERSION=0.7.68
+
+if [[ -z $NGINX_RELEASE ]]; then
+ NGINX_RELEASE="stable"
+fi
+
+case "$NGINX_RELEASE" in
+ stable)
+ VERSION=1.0.5
+ ;;
+ legacy)
+ VERSION=0.8.54
+ ;;
+ old)
+ VERSION=0.7.69
SECURITY_PATCH=2
+ ;;
+ devel)
+ VERSION=1.1.0
+ ;;
+esac
+ SOURCE=$SPELL-$VERSION.tar.gz
SOURCE2=$SPELL-$VERSION.tar.gz.asc
- SOURCE2_URL=http://sysoev.ru/$SPELL/$SOURCE2
+ SOURCE_URL[0]=http://nginx.org/download/$SOURCE
+ SOURCE2_URL=$SOURCE_URL.asc
SOURCE_GPG=sysoev.gpg:$SOURCE2:UPSTREAM_KEY
SOURCE2_IGNORE=signature
-fi
- PATCHLEVEL=1
- SOURCE=$SPELL-$VERSION.tar.gz
- SOURCE_URL[0]=http://sysoev.ru/$SPELL/$SOURCE
SOURCE_DIRECTORY="$BUILD_DIRECTORY/$SPELL-$VERSION"
- WEB_SITE=http://nginx.net/
+ WEB_SITE=http://nginx.org/
LICENSE[0]=BSD
ENTERED=20090203
SHORT="HTTP server and mail proxy server"
diff --git a/http/nginx/HISTORY b/http/nginx/HISTORY
index b4e84a2..974e541 100644
--- a/http/nginx/HISTORY
+++ b/http/nginx/HISTORY
@@ -1,3 +1,20 @@
+2011-08-11 Vlad Glagolev <stealth AT sourcemage.org>
+ * DETAILS: updated spell to 1.0.5 (stable), 0.8.54 (legacy), 0.7.69
+ (old), 1.1.0 (devel); renewed source urls
+ * PREPARE: added 'old' and 'devel' branches
+ * PRE_BUILD: correctly check version to apply syslog patches
+ * DEPENDS: use NGINX_SYSLOG
+ * CONFIGURE: syslog support isn't available for devel version
+ * BUILD: handle configure flags for syslog selection
+ * syslog-0.6.patch: removed, 0.6 branch support has been dropped
+ * syslog-0.8-1.0.{patch,config}: added, for syslog support in
production
+ use (from https://github.com/yaoweibin/nginx_syslog_patch) for 0.8
and
+ 1.0 branches
+
+2011-03-28 Vlad Glagolev <stealth AT sourcemage.org>
+ * PREPARE: added 0.8 branch as stable, marked 0.7 as legacy
+ * CONFIGURE: added mail option
+
2010-12-18 Vlad Glagolev <stealth AT sourcemage.org>
* DETAILS: PATCHLEVEL=1
* init.d/nginx: added graceful reload
diff --git a/http/nginx/PREPARE b/http/nginx/PREPARE
index e261436..5b30791 100755
--- a/http/nginx/PREPARE
+++ b/http/nginx/PREPARE
@@ -1,3 +1,5 @@
config_query_list NGINX_RELEASE "Select which release to build:" \
- stable \
- legacy
+ stable \
+ legacy \
+ old \
+ devel
diff --git a/http/nginx/PRE_BUILD b/http/nginx/PRE_BUILD
index 1760c95..d46cfa0 100755
--- a/http/nginx/PRE_BUILD
+++ b/http/nginx/PRE_BUILD
@@ -1,10 +1,14 @@
+. "$GRIMOIRE/FUNCTIONS" &&
+
default_pre_build &&
cd "$SOURCE_DIRECTORY" &&

-if list_find "$NGINX_OPTS" "--with-syslog"; then
- if [[ $NGINX_RELEASE == legacy ]]; then
- patch -p0 < "$SPELL_DIRECTORY/syslog-0.6.patch"
- else
+if [[ $NGINX_SYSLOG == y ]]; then
+ if is_version_less $VERSION 0.8; then
patch -p0 < "$SPELL_DIRECTORY/syslog-0.7.patch"
+ else
+ mkdir syslog &&
+ cp "$SPELL_DIRECTORY/syslog-0.8-1.0.config" syslog/config &&
+ patch -p1 < "$SPELL_DIRECTORY/syslog-0.8-1.0.patch"
fi
fi
diff --git a/http/nginx/syslog-0.6.patch b/http/nginx/syslog-0.6.patch
deleted file mode 100644
index 5f636b8..0000000
--- a/http/nginx/syslog-0.6.patch
+++ /dev/null
@@ -1,277 +0,0 @@
---- auto/make.orig 2008-03-18 11:36:27.000000000 +0100
-+++ auto/make 2008-05-16 11:12:43.000000000 +0200
-@@ -13,6 +13,10 @@
- ngx_objs_dir=$NGX_OBJS$ngx_regex_dirsep
- ngx_use_pch=`echo $NGX_USE_PCH | sed -e "s/\//$ngx_regex_dirsep/g"`
-
-+#SYSLOG
-+if [[ "${USE_SYSLOG}" == "YES" ]]; then
-+ CFLAGS="$CFLAGS -DUSE_SYSLOG"
-+fi
-
- cat << END >
$NGX_MAKEFILE
-
---- auto/options.orig 2008-04-29 11:27:55.000000000 +0200
-+++ auto/options 2008-05-16 11:12:43.000000000 +0200
-@@ -102,6 +102,8 @@
- MD5_OPT=
- MD5_ASM=NO
-
-+USE_SYSLOG=NO
-+
- USE_SHA1=NO
- SHA1=NONE
- SHA1_OPT=
-@@ -225,6 +227,8 @@
- --with-md5-opt=*) MD5_OPT="$value" ;;
- --with-md5-asm) MD5_ASM=YES ;;
-
-+ --with-syslog) USE_SYSLOG=YES ;;
-+
- --with-sha1=*) SHA1="$value" ;;
- --with-sha1-opt=*) SHA1_OPT="$value" ;;
- --with-sha1-asm) SHA1_ASM=YES ;;
-@@ -233,6 +237,8 @@
- --with-zlib-opt=*) ZLIB_OPT="$value" ;;
- --with-zlib-asm=*) ZLIB_ASM="$value" ;;
-
-+ --with-syslog) USE_SYSLOG="YES" ;;
-+
- --test-build-devpoll) NGX_TEST_BUILD_DEVPOLL=YES ;;
- --test-build-eventport) NGX_TEST_BUILD_EVENTPORT=YES ;;
- --test-build-epoll) NGX_TEST_BUILD_EPOLL=YES ;;
-@@ -341,6 +347,8 @@
- --with-md5-opt=OPTIONS set additional options for md5 building
- --with-md5-asm use md5 assembler sources
-
-+ --with-syslog use syslog instead of files to
log messages
-+
- --with-sha1=DIR set path to sha1 library sources
- --with-sha1-opt=OPTIONS set additional options for sha1
building
- --with-sha1-asm use sha1 assembler sources
-@@ -356,6 +364,8 @@
-
- --with-debug enable the debugging logging
-
-+ --with-syslog enable syslog support (disables
writing to file)
-+
- END
-
- exit 1
---- auto/summary.orig 2008-04-29 11:27:55.000000000 +0200
-+++ auto/summary 2008-05-16 11:12:43.000000000 +0200
-@@ -83,6 +83,11 @@
- *) echo " + using zlib library: $ZLIB" ;;
- esac
-
-+case $USE_SYSLOG in
-+ YES) echo " + using syslog" ;;
-+ *) echo " + syslog is not used" ;;
-+esac
-+
- echo
-
-
---- src/core/nginx.c.orig 2007-12-10 13:09:51.000000000 +0100
-+++ src/core/nginx.c 2008-05-16 11:12:43.000000000 +0200
-@@ -9,6 +9,9 @@
- #include <ngx_event.h>
- #include <nginx.h>
-
-+#ifdef USE_SYSLOG
-+#include <syslog.h>
-+#endif
-
- static ngx_int_t ngx_add_inherited_sockets(ngx_cycle_t *cycle);
- static ngx_int_t ngx_getopt(ngx_cycle_t *cycle, int argc, char *const
*argv);
-@@ -221,6 +224,11 @@
- ngx_ssl_init(log);
- #endif
-
-+ /* SYSLOG SUPPORT */
-+#ifdef USE_SYSLOG
-+ openlog("nginx", LOG_ODELAY, LOG_DAEMON);
-+#endif
-+
- /* init_cycle->log is required for signal handlers and ngx_getopt() */
-
- ngx_memzero(&init_cycle, sizeof(ngx_cycle_t));
-@@ -358,6 +366,10 @@
- ngx_single_process_cycle(cycle);
- }
-
-+#ifdef USE_SYSLOG
-+ closelog();
-+#endif
-+
- return 0;
- }
-
---- src/core/ngx_conf_file.c.orig 2008-04-29 11:28:42.000000000 +0200
-+++ src/core/ngx_conf_file.c 2008-05-16 11:12:43.000000000 +0200
-@@ -751,6 +751,11 @@
- full.data = NULL;
- #endif
-
-+#ifdef USE_SYSLOG
-+if (name) {
-+ name = NULL;
-+}
-+#endif
- if (name) {
- full = *name;
-
---- src/core/ngx_log.c.orig 2009-04-01 20:19:22.000000000 +0400
-+++ src/core/ngx_log.c 2009-04-25 19:45:12.992533679 +0400
-@@ -7,6 +7,9 @@
- #include <ngx_config.h>
- #include <ngx_core.h>
-
-+#ifdef USE_SYSLOG
-+#include <syslog.h>
-+#endif
-
- static char *ngx_set_error_log(ngx_conf_t *cf, ngx_command_t *cmd, void
*conf);
-
-@@ -81,17 +84,22 @@
- #endif
- u_char errstr[NGX_MAX_ERROR_STR], *p, *last;
-
-+#ifndef USE_SYSLOG
- if (log->file->fd == NGX_INVALID_FILE) {
- return;
- }
-+#endif
-
- last = errstr + NGX_MAX_ERROR_STR;
-
-+#ifdef USE_SYSLOG
-+ p = errstr;
-+#else
- ngx_memcpy(errstr, ngx_cached_err_log_time.data,
- ngx_cached_err_log_time.len);
-
- p = errstr + ngx_cached_err_log_time.len;
--
-+#endif
- p = ngx_snprintf(p, last - p, " [%s] ", err_levels[level]);
-
- /* pid#tid */
-@@ -150,7 +158,22 @@
-
- ngx_linefeed(p);
-
-+#ifdef USE_SYSLOG
-+ /* allocate a string which can hold the error message */
-+ char *syslogstr;
-+
-+ if ((syslogstr = calloc((p - errstr + 1), sizeof(char))) != NULL)
-+ {
-+ strncpy(syslogstr, errstr, p - errstr);
-+
-+ /* write to syslog */
-+ syslog(LOG_CRIT, "%s", syslogstr);
-+
-+ free(syslogstr);
-+ }
-+#else
- (void) ngx_write_fd(log->file->fd, errstr, p - errstr);
-+#endif
- }
-
-
-@@ -234,6 +257,9 @@
- ngx_log_t *log;
- ngx_str_t *value, *name;
-
-+#ifdef USE_SYSLOG
-+ name = value = NULL;
-+#else
- if (args) {
- value = args->elts;
- name = &value[1];
-@@ -241,6 +267,7 @@
- } else {
- name = NULL;
- }
-+#endif
-
- log = ngx_pcalloc(cycle->pool, sizeof(ngx_log_t));
- if (log == NULL) {
---- src/http/modules/ngx_http_log_module.c.orig 2007-11-15
15:26:36.000000000 +0100
-+++ src/http/modules/ngx_http_log_module.c 2008-05-16 11:56:39.000000000
+0200
-@@ -9,6 +9,9 @@
- #include <ngx_http.h>
- #include <nginx.h>
-
-+#ifdef USE_SYSLOG
-+#include <syslog.h>
-+#endif
-
- typedef struct ngx_http_log_op_s ngx_http_log_op_t;
-
-@@ -160,7 +163,11 @@
-
-
- static ngx_str_t ngx_http_combined_fmt =
-+#ifdef USE_SYSLOG
-+ ngx_string("$remote_addr - $remote_user "
-+#else
- ngx_string("$remote_addr - $remote_user [$time_local] "
-+#endif
- "\"$request\" $status $body_bytes_sent "
- "\"$http_referer\" \"$http_user_agent\"");
-
-@@ -285,6 +292,20 @@
- ngx_http_log_write(ngx_http_request_t *r, ngx_http_log_t *log, u_char *buf,
- size_t len)
- {
-+#ifdef USE_SYSLOG
-+ /* allocate a string which can hold the error message */
-+ char *syslogstr;
-+
-+ if ((syslogstr = calloc((len + 1), sizeof(char))) != NULL)
-+ {
-+ strncpy(syslogstr, buf, len);
-+
-+ /* write to syslog */
-+ syslog(LOG_NOTICE, "%s", syslogstr);
-+
-+ free(syslogstr);
-+ }
-+#else
- time_t now;
- ssize_t n;
- ngx_err_t err;
-@@ -322,6 +343,7 @@
-
- log->error_log_time = now;
- }
-+#endif
- }
-
-
-@@ -654,7 +676,11 @@
- return NGX_CONF_ERROR;
- }
-
-+#ifdef USE_SYLOG
-+ log->file = ngx_conf_open_file(cf->cycle, NULL);
-+#else
- log->file = ngx_conf_open_file(cf->cycle, &ngx_http_access_log);
-+#endif
- if (log->file == NULL) {
- return NGX_CONF_ERROR;
- }
-@@ -706,7 +732,11 @@
- return NGX_CONF_ERROR;
- }
-
-+#ifdef USE_SYSLOG
-+ log->file = ngx_conf_open_file(cf->cycle, NULL);
-+#else
- log->file = ngx_conf_open_file(cf->cycle, &value[1]);
-+#endif
- if (log->file == NULL) {
- return NGX_CONF_ERROR;
- }
diff --git a/http/nginx/syslog-0.8-1.0.config
b/http/nginx/syslog-0.8-1.0.config
new file mode 100644
index 0000000..05bfcfe
--- /dev/null
+++ b/http/nginx/syslog-0.8-1.0.config
@@ -0,0 +1,5 @@
+
+ngx_feature="nginx_syslog_patch"
+ngx_feature_name="nginx_syslog_patch"
+ngx_feature_run=no
+have=NGX_ENABLE_SYSLOG . auto/have
diff --git a/http/nginx/syslog-0.8-1.0.patch b/http/nginx/syslog-0.8-1.0.patch
new file mode 100644
index 0000000..74262b8
--- /dev/null
+++ b/http/nginx/syslog-0.8-1.0.patch
@@ -0,0 +1,686 @@
+diff --git a/src/core/ngx_cycle.c b/src/core/ngx_cycle.c
+index 7986707..9902ef7 100644
+--- a/src/core/ngx_cycle.c
++++ b/src/core/ngx_cycle.c
+@@ -84,6 +84,12 @@ ngx_init_cycle(ngx_cycle_t *old_cycle)
+ cycle->pool = pool;
+ cycle->log = log;
+ cycle->new_log.log_level = NGX_LOG_ERR;
++#if (NGX_ENABLE_SYSLOG)
++ cycle->new_log.facility = SYSLOG_FACILITY;
++ cycle->new_log.facility = ERR_SYSLOG_PRIORITY;
++ cycle->new_log.syslog_on = 0;
++ cycle->new_log.syslog_set = 0;
++#endif
+ cycle->old_cycle = old_cycle;
+
+ cycle->conf_prefix.len = old_cycle->conf_prefix.len;
+diff --git a/src/core/ngx_log.c b/src/core/ngx_log.c
+index 4433314..9411fc9 100644
+--- a/src/core/ngx_log.c
++++ b/src/core/ngx_log.c
+@@ -9,6 +9,15 @@
+
+
+ static char *ngx_error_log(ngx_conf_t *cf, ngx_command_t *cmd, void *conf);
++#if (NGX_ENABLE_SYSLOG)
++static char *ngx_set_syslog(ngx_conf_t *cf, ngx_command_t *cmd, void *conf);
++void log_exit(ngx_cycle_t *cycle);
++
++typedef struct{
++ ngx_str_t name;
++ ngx_int_t macro;
++} ngx_string_to_macro_t;
++#endif
+
+
+ static ngx_command_t ngx_errlog_commands[] = {
+@@ -20,6 +29,15 @@ static ngx_command_t ngx_errlog_commands[] = {
+ 0,
+ NULL},
+
++#if (NGX_ENABLE_SYSLOG)
++ {ngx_string("syslog"),
++ NGX_MAIN_CONF|NGX_CONF_TAKE12,
++ ngx_set_syslog,
++ 0,
++ 0,
++ NULL},
++#endif
++
+ ngx_null_command
+ };
+
+@@ -42,7 +60,11 @@ ngx_module_t ngx_errlog_module = {
+ NULL, /* init thread */
+ NULL, /* exit thread */
+ NULL, /* exit process */
+- NULL, /* exit master */
++#if (NGX_ENABLE_SYSLOG)
++ log_exit, /* exit master */
++#else
++ NULL,
++#endif
+ NGX_MODULE_V1_PADDING
+ };
+
+@@ -51,6 +73,44 @@ static ngx_log_t ngx_log;
+ static ngx_open_file_t ngx_log_file;
+ ngx_uint_t ngx_use_stderr = 1;
+
++#if (NGX_ENABLE_SYSLOG)
++static ngx_string_to_macro_t ngx_syslog_facilities[] = {
++ {ngx_string("auth"), LOG_AUTH},
++ {ngx_string("authpriv"), LOG_AUTHPRIV},
++ {ngx_string("cron"), LOG_CRON},
++ {ngx_string("daemon"), LOG_DAEMON},
++ {ngx_string("ftp"), LOG_FTP},
++ {ngx_string("kern"), LOG_KERN},
++ {ngx_string("local0"), LOG_LOCAL0},
++ {ngx_string("local1"), LOG_LOCAL1},
++ {ngx_string("local2"), LOG_LOCAL2},
++ {ngx_string("local3"), LOG_LOCAL3},
++ {ngx_string("local4"), LOG_LOCAL4},
++ {ngx_string("local5"), LOG_LOCAL5},
++ {ngx_string("local6"), LOG_LOCAL6},
++ {ngx_string("local7"), LOG_LOCAL7},
++ {ngx_string("lpr"), LOG_LPR},
++ {ngx_string("mail"), LOG_MAIL},
++ {ngx_string("news"), LOG_NEWS},
++ {ngx_string("syslog"), LOG_SYSLOG},
++ {ngx_string("user"), LOG_USER},
++ {ngx_string("uucp"), LOG_UUCP},
++ { ngx_null_string, 0}
++};
++
++static ngx_string_to_macro_t ngx_syslog_priorities[] = {
++ {ngx_string("emerg"), LOG_EMERG},
++ {ngx_string("alert"), LOG_ALERT},
++ {ngx_string("crit"), LOG_CRIT},
++ {ngx_string("error"), LOG_ERR},
++ {ngx_string("err"), LOG_ERR},
++ {ngx_string("warn"), LOG_WARNING},
++ {ngx_string("notice"),LOG_NOTICE},
++ {ngx_string("info"), LOG_INFO},
++ {ngx_string("debug"), LOG_DEBUG},
++ { ngx_null_string, 0}
++};
++#endif
+
+ static ngx_str_t err_levels[] = {
+ ngx_null_string,
+@@ -88,11 +148,16 @@ ngx_log_error_core(ngx_uint_t level, ngx_log_t *log,
ngx_err_t err,
+ va_list args;
+ #endif
+ u_char *p, *last, *msg;
++#if (NGX_ENABLE_SYSLOG)
++ u_char *errstr_syslog;
++#endif
+ u_char errstr[NGX_MAX_ERROR_STR];
+
++#if !(NGX_ENABLE_SYSLOG)
+ if (log->file->fd == NGX_INVALID_FILE) {
+ return;
+ }
++#endif
+
+ last = errstr + NGX_MAX_ERROR_STR;
+
+@@ -101,6 +166,10 @@ ngx_log_error_core(ngx_uint_t level, ngx_log_t *log,
ngx_err_t err,
+
+ p = errstr + ngx_cached_err_log_time.len;
+
++#if (NGX_ENABLE_SYSLOG)
++ errstr_syslog = p;
++#endif
++
+ p = ngx_slprintf(p, last, " [%V] ", &err_levels[level]);
+
+ /* pid#tid */
+@@ -139,11 +208,27 @@ ngx_log_error_core(ngx_uint_t level, ngx_log_t *log,
ngx_err_t err,
+
+ ngx_linefeed(p);
+
++#if (NGX_ENABLE_SYSLOG)
++ if (log->file != NULL && log->file->name.len != 0) {
++ (void) ngx_write_fd(log->file->fd, errstr, p - errstr);
++ }
++
++ /* Don't send the debug level info to syslog */
++ if (log->syslog_on && level < NGX_LOG_DEBUG) {
++ /* write to syslog */
++ syslog(log->priority, "%.*s", (int)(p - errstr_syslog),
errstr_syslog);
++ }
++#else
+ (void) ngx_write_fd(log->file->fd, errstr, p - errstr);
++#endif
+
+ if (!ngx_use_stderr
+ || level > NGX_LOG_WARN
++#if (NGX_ENABLE_SYSLOG)
++ || (log->file != NULL && log->file->fd == ngx_stderr))
++#else
+ || log->file->fd == ngx_stderr)
++#endif
+ {
+ return;
+ }
+@@ -364,6 +449,50 @@ ngx_log_create(ngx_cycle_t *cycle, ngx_str_t *name)
+
+ return log;
+ }
++
++
++#if (NGX_ENABLE_SYSLOG)
++ngx_int_t
++ngx_log_get_priority(ngx_conf_t *cf, ngx_str_t *priority)
++{
++ ngx_int_t p = 0;
++ ngx_uint_t n, match = 0;
++
++ for (n = 0; ngx_syslog_priorities[n].name.len != 0; n++) {
++ if (ngx_strncmp(priority->data, ngx_syslog_priorities[n].name.data,
++ ngx_syslog_priorities[n].name.len) == 0) {
++ p = ngx_syslog_priorities[n].macro;
++ match = 1;
++ }
++ }
++
++ if (!match) {
++ ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
++ "invalid syslog priority \"%V\"", priority);
++ return -1;
++ }
++
++ return p;
++}
++
++
++char *
++ngx_log_set_priority(ngx_conf_t *cf, ngx_str_t *priority, ngx_log_t *log)
++{
++ log->priority = ERR_SYSLOG_PRIORITY;
++
++ if (priority->len == 0) {
++ return NGX_CONF_OK;
++ }
++
++ log->priority = ngx_log_get_priority(cf, priority);
++ if (log->priority == (-1)) {
++ return NGX_CONF_ERROR;
++ }
++
++ return NGX_CONF_OK;
++}
++#endif
+
+
+ char *
+@@ -424,6 +553,13 @@ static char *
+ ngx_error_log(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
+ {
+ ngx_str_t *value, name;
++#if (NGX_ENABLE_SYSLOG)
++ u_char *off = NULL;
++ ngx_str_t priority;
++
++ ngx_str_null(&name);
++ ngx_str_null(&priority);
++#endif
+
+ if (cf->cycle->new_log.file) {
+ return "is duplicate";
+@@ -431,7 +567,44 @@ ngx_error_log(ngx_conf_t *cf, ngx_command_t *cmd, void
*conf)
+
+ value = cf->args->elts;
+
++#if (NGX_ENABLE_SYSLOG)
++ if (ngx_strncmp(value[1].data, "syslog", sizeof("syslog") - 1) == 0) {
++ if (!cf->cycle->new_log.syslog_set) {
++ ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
++ "You must set the syslog directive and enable it
first.");
++ return NGX_CONF_ERROR;
++ }
++
++ cf->cycle->new_log.syslog_on = 1;
++
++ if (value[1].data[sizeof("syslog") - 1] == ':') {
++ priority.len = value[1].len - sizeof("syslog");
++ priority.data = value[1].data + sizeof("syslog");
++
++ off = (u_char *)ngx_strchr(priority.data, (int) '|');
++ if (off != NULL) {
++ priority.len = off - priority.data;
++
++ off++;
++ name.len = value[1].data + value[1].len - off;
++ name.data = off;
++ }
++ }
++ else {
++ if (value[1].len > sizeof("syslog")) {
++ name.len = value[1].len - sizeof("syslog");
++ name.data = value[1].data + sizeof("syslog");
++ }
++ }
++
++ if (ngx_log_set_priority(cf, &priority, &cf->cycle->new_log) ==
NGX_CONF_ERROR) {
++ return NGX_CONF_ERROR;
++ }
++ }
++ else if (ngx_strcmp(value[1].data, "stderr") == 0) {
++#else
+ if (ngx_strcmp(value[1].data, "stderr") == 0) {
++#endif
+ ngx_str_null(&name);
+
+ } else {
+@@ -452,3 +625,63 @@ ngx_error_log(ngx_conf_t *cf, ngx_command_t *cmd, void
*conf)
+
+ return ngx_log_set_levels(cf, &cf->cycle->new_log);
+ }
++
++
++#if (NGX_ENABLE_SYSLOG)
++
++#define SYSLOG_IDENT_NAME "nginx"
++
++static char *
++ngx_set_syslog(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
++{
++ char *program;
++ ngx_str_t *value;
++ ngx_int_t facility, match = 0;
++ ngx_uint_t n;
++
++ value = cf->args->elts;
++
++ if (cf->cycle->new_log.syslog_set) {
++ return "is duplicate";
++ }
++
++ cf->cycle->new_log.syslog_set = 1;
++
++ for (n = 0; ngx_syslog_facilities[n].name.len != 0; n++) {
++ if (ngx_strncmp(value[1].data, ngx_syslog_facilities[n].name.data,
++ ngx_syslog_facilities[n].name.len) == 0) {
++ facility = ngx_syslog_facilities[n].macro;
++ match = 1;
++ break;
++ }
++ }
++
++ if (match) {
++ cf->cycle->new_log.facility = facility;
++ cf->cycle->new_log.priority = ERR_SYSLOG_PRIORITY;
++ }
++ else {
++ ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
++ "invalid syslog facility \"%V\"", &value[1]);
++ return NGX_CONF_ERROR;
++ }
++
++ program = SYSLOG_IDENT_NAME;
++ if (cf->args->nelts > 2) {
++ program = (char *) value[2].data;
++ }
++
++ openlog(program, LOG_ODELAY, facility);
++
++ return NGX_CONF_OK;
++}
++
++
++void log_exit(ngx_cycle_t *cycle)
++{
++ if (cycle->new_log.syslog_set) {
++ closelog();
++ }
++}
++#endif
++
+diff --git a/src/core/ngx_log.h b/src/core/ngx_log.h
+index 1054836..14288ee 100644
+--- a/src/core/ngx_log.h
++++ b/src/core/ngx_log.h
+@@ -11,6 +11,13 @@
+ #include <ngx_config.h>
+ #include <ngx_core.h>
+
++#if (NGX_ENABLE_SYSLOG)
++#include <syslog.h>
++
++#define SYSLOG_FACILITY LOG_LOCAL5
++#define ERR_SYSLOG_PRIORITY LOG_ERR
++#endif
++
+
+ #define NGX_LOG_STDERR 0
+ #define NGX_LOG_EMERG 1
+@@ -60,6 +67,13 @@ struct ngx_log_s {
+ */
+
+ char *action;
++
++#if (NGX_ENABLE_SYSLOG)
++ ngx_int_t priority;
++ ngx_int_t facility;
++ unsigned syslog_on:1; /* unsigned :1 syslog_on */
++ unsigned syslog_set:1; /*unsigned :1 syslog_set */
++#endif
+ };
+
+
+@@ -197,6 +211,10 @@ void ngx_cdecl ngx_log_debug_core(ngx_log_t *log,
ngx_err_t err,
+
+ ngx_log_t *ngx_log_init(u_char *prefix);
+ ngx_log_t *ngx_log_create(ngx_cycle_t *cycle, ngx_str_t *name);
++#if (NGX_ENABLE_SYSLOG)
++ngx_int_t ngx_log_get_priority(ngx_conf_t *cf, ngx_str_t *priority);
++char * ngx_log_set_priority(ngx_conf_t *cf, ngx_str_t *priority, ngx_log_t
*log);
++#endif
+ char *ngx_log_set_levels(ngx_conf_t *cf, ngx_log_t *log);
+ void ngx_cdecl ngx_log_abort(ngx_err_t err, const char *fmt, ...);
+ void ngx_cdecl ngx_log_stderr(ngx_err_t err, const char *fmt, ...);
+diff --git a/src/http/modules/ngx_http_log_module.c
b/src/http/modules/ngx_http_log_module.c
+index e6a7fdb..51c4384 100644
+--- a/src/http/modules/ngx_http_log_module.c
++++ b/src/http/modules/ngx_http_log_module.c
+@@ -8,6 +8,11 @@
+ #include <ngx_core.h>
+ #include <ngx_http.h>
+
++#if (NGX_ENABLE_SYSLOG)
++#include <syslog.h>
++
++#define HTTP_SYSLOG_PRIORITY LOG_NOTICE
++#endif
+
+ typedef struct ngx_http_log_op_s ngx_http_log_op_t;
+
+@@ -51,6 +56,11 @@ typedef struct {
+ time_t disk_full_time;
+ time_t error_log_time;
+ ngx_http_log_fmt_t *format;
++
++#if (NGX_ENABLE_SYSLOG)
++ ngx_int_t priority;
++ unsigned syslog_on:1; /* unsigned :1 syslog_on
*/
++#endif
+ } ngx_http_log_t;
+
+
+@@ -318,11 +328,27 @@ ngx_http_log_write(ngx_http_request_t *r,
ngx_http_log_t *log, u_char *buf,
+ time_t now;
+ ssize_t n;
+ ngx_err_t err;
+-
++
++#if (NGX_ENABLE_SYSLOG)
++ n = 0;
++ if (log->syslog_on) {
++ syslog(log->priority, "%.*s", (int)len, buf);
++ }
++#endif
++
+ if (log->script == NULL) {
+ name = log->file->name.data;
++#if (NGX_ENABLE_SYSLOG)
++ if (name != NULL) {
++ n = ngx_write_fd(log->file->fd, buf, len);
++ }
++ else {
++ n = len;
++ }
++#else
+ n = ngx_write_fd(log->file->fd, buf, len);
+
++#endif
+ } else {
+ name = NULL;
+ n = ngx_http_log_script_write(r, log->script, &name, buf, len);
+@@ -836,6 +862,10 @@ ngx_http_log_merge_loc_conf(ngx_conf_t *cf, void
*parent, void *child)
+ log->script = NULL;
+ log->disk_full_time = 0;
+ log->error_log_time = 0;
++#if (NGX_ENABLE_SYSLOG)
++ log->priority = HTTP_SYSLOG_PRIORITY;
++ log->syslog_on = 0;
++#endif
+
+ lmcf = ngx_http_conf_get_module_main_conf(cf, ngx_http_log_module);
+ fmt = lmcf->formats.elts;
+@@ -861,6 +891,13 @@ ngx_http_log_set_log(ngx_conf_t *cf, ngx_command_t
*cmd, void *conf)
+ ngx_http_log_main_conf_t *lmcf;
+ ngx_http_script_compile_t sc;
+
++#if (NGX_ENABLE_SYSLOG)
++ u_char *off;
++ ngx_str_t priority;
++ ngx_uint_t syslog_on = 0;
++ name = priority = (ngx_str_t)ngx_null_string;
++#endif
++
+ value = cf->args->elts;
+
+ if (ngx_strcmp(value[1].data, "off") == 0) {
+@@ -873,6 +910,38 @@ ngx_http_log_set_log(ngx_conf_t *cf, ngx_command_t
*cmd, void *conf)
+ "invalid parameter \"%V\"", &value[2]);
+ return NGX_CONF_ERROR;
+ }
++#if (NGX_ENABLE_SYSLOG)
++ else if (ngx_strncmp(value[1].data, "syslog", sizeof("syslog") - 1) ==
0) {
++ if (!cf->cycle->new_log.syslog_set) {
++ ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
++ "You must set the syslog directive and
enable it first.");
++ return NGX_CONF_ERROR;
++ }
++
++ syslog_on = 1;
++ if (value[1].data[sizeof("syslog") - 1] == ':') {
++ priority.len = value[1].len - sizeof("syslog");
++ priority.data = value[1].data + sizeof("syslog");
++
++ off = (u_char*) ngx_strchr(priority.data, '|');
++ if (off != NULL) {
++ priority.len = off - priority.data;
++
++ off++;
++ name.len = value[1].data + value[1].len - off;
++ name.data = off;
++ }
++ }
++ else {
++ if (value[1].len > sizeof("syslog")) {
++ name.len = value[1].len - sizeof("syslog");
++ name.data = value[1].data + sizeof("syslog");
++ }
++ }
++ } else {
++ name = value[1];
++ }
++#endif
+
+ if (llcf->logs == NULL) {
+ llcf->logs = ngx_array_create(cf->pool, 2, sizeof(ngx_http_log_t));
+@@ -890,6 +959,52 @@ ngx_http_log_set_log(ngx_conf_t *cf, ngx_command_t
*cmd, void *conf)
+
+ ngx_memzero(log, sizeof(ngx_http_log_t));
+
++#if (NGX_ENABLE_SYSLOG)
++ log->syslog_on = syslog_on;
++
++ if (priority.len == 0) {
++ log->priority = HTTP_SYSLOG_PRIORITY;
++ }
++ else {
++ log->priority = ngx_log_get_priority(cf, &priority);
++ }
++
++ if (name.len != 0) {
++ n = ngx_http_script_variables_count(&name);
++
++ if (n == 0) {
++ log->file = ngx_conf_open_file(cf->cycle, &name);
++ if (log->file == NULL) {
++ return NGX_CONF_ERROR;
++ }
++ } else {
++ if (ngx_conf_full_name(cf->cycle, &name, 0) != NGX_OK) {
++ return NGX_CONF_ERROR;
++ }
++ log->script = ngx_pcalloc(cf->pool,
sizeof(ngx_http_log_script_t));
++ if (log->script == NULL) {
++ return NGX_CONF_ERROR;
++ }
++ ngx_memzero(&sc, sizeof(ngx_http_script_compile_t));
++ sc.cf = cf;
++ sc.source = &name;
++ sc.lengths = &log->script->lengths;
++ sc.values = &log->script->values;
++ sc.variables = n;
++ sc.complete_lengths = 1;
++ sc.complete_values = 1;
++ if (ngx_http_script_compile(&sc) != NGX_OK) {
++ return NGX_CONF_ERROR;
++ }
++ }
++ }
++ else {
++ log->file = ngx_conf_open_file(cf->cycle, &name);
++ if (log->file == NULL) {
++ return NGX_CONF_ERROR;
++ }
++ }
++#else
+ n = ngx_http_script_variables_count(&value[1]);
+
+ if (n == 0) {
+@@ -897,7 +1012,7 @@ ngx_http_log_set_log(ngx_conf_t *cf, ngx_command_t
*cmd, void *conf)
+ if (log->file == NULL) {
+ return NGX_CONF_ERROR;
+ }
+-
++
+ } else {
+ if (ngx_conf_full_name(cf->cycle, &value[1], 0) != NGX_OK) {
+ return NGX_CONF_ERROR;
+@@ -922,6 +1037,7 @@ ngx_http_log_set_log(ngx_conf_t *cf, ngx_command_t
*cmd, void *conf)
+ return NGX_CONF_ERROR;
+ }
+ }
++#endif
+
+ if (cf->args->nelts >= 3) {
+ name = value[2];
+diff --git a/src/http/ngx_http_core_module.c
b/src/http/ngx_http_core_module.c
+index 597b64c..d45beb7 100644
+--- a/src/http/ngx_http_core_module.c
++++ b/src/http/ngx_http_core_module.c
+@@ -1393,6 +1393,9 @@ ngx_http_update_location_config(ngx_http_request_t *r)
+
+ if (r == r->main) {
+ r->connection->log->file = clcf->error_log->file;
++#if (NGX_ENABLE_SYSLOG)
++ r->connection->log->priority = clcf->error_log->priority;
++#endif
+
+ if (!(r->connection->log->log_level & NGX_LOG_DEBUG_CONNECTION)) {
+ r->connection->log->log_level = clcf->error_log->log_level;
+@@ -4280,17 +4283,72 @@ ngx_http_core_error_log(ngx_conf_t *cf,
ngx_command_t *cmd, void *conf)
+
+ ngx_str_t *value;
+
++#if (NGX_ENABLE_SYSLOG)
++ u_char *off = NULL;
++ ngx_int_t syslog_on = 0;
++ ngx_str_t name, priority;
++
++ name = priority = (ngx_str_t) ngx_null_string;
++#endif
++
+ if (clcf->error_log) {
+ return "is duplicate";
+ }
+
+ value = cf->args->elts;
+
++#if (NGX_ENABLE_SYSLOG)
++ if (ngx_strncmp(value[1].data, "syslog", sizeof("syslog") - 1) == 0) {
++ if (!cf->cycle->new_log.syslog_set) {
++ ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
++ "You must set the syslog directive and enable it
first.");
++ return NGX_CONF_ERROR;
++ }
++
++ syslog_on = 1;
++
++ if (value[1].data[sizeof("syslog") - 1] == ':') {
++ priority.len = value[1].len - sizeof("syslog");
++ priority.data = value[1].data + sizeof("syslog");
++
++ off = (u_char*) ngx_strchr(priority.data, '|');
++ if (off != NULL) {
++ priority.len = off - priority.data;
++
++ off++;
++ name.len = value[1].data + value[1].len - off;
++ name.data = off;
++ }
++ }
++ else {
++ if (value[1].len > sizeof("syslog")) {
++ name.len = value[1].len - sizeof("syslog");
++ name.data = value[1].data + sizeof("syslog");
++ }
++ }
++ } else {
++ name = value[1];
++ }
++
++ clcf->error_log = ngx_log_create(cf->cycle, &name);
++#else
+ clcf->error_log = ngx_log_create(cf->cycle, &value[1]);
++#endif
+ if (clcf->error_log == NULL) {
+ return NGX_CONF_ERROR;
+ }
+
++#if (NGX_ENABLE_SYSLOG)
++ if (syslog_on) {
++ clcf->error_log->syslog_on = 1;
++ if (ngx_log_set_priority(cf, &priority, clcf->error_log) ==
NGX_CONF_ERROR) {
++ return NGX_CONF_ERROR;
++ }
++ }
++
++ clcf->error_log->log_level = 0;
++#endif
++
+ if (cf->args->nelts == 2) {
+ clcf->error_log->log_level = NGX_LOG_ERR;
+ return NGX_CONF_OK;
+diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c
+index 2cef4fa..d9debda 100644
+--- a/src/http/ngx_http_request.c
++++ b/src/http/ngx_http_request.c
+@@ -432,6 +432,9 @@ ngx_http_init_request(ngx_event_t *rev)
+
+ clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module);
+ c->log->file = clcf->error_log->file;
++#if (NGX_ENABLE_SYSLOG)
++ c->log->priority = clcf->error_log->priority;
++#endif
+ if (!(c->log->log_level & NGX_LOG_DEBUG_CONNECTION)) {
+ c->log->log_level = clcf->error_log->log_level;
+ }
+@@ -1768,6 +1771,9 @@ found:
+
+ clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module);
+ r->connection->log->file = clcf->error_log->file;
++#if (NGX_ENABLE_SYSLOG)
++ r->connection->log->priority = clcf->error_log->priority;
++#endif
+
+ if (!(r->connection->log->log_level & NGX_LOG_DEBUG_CONNECTION)) {
+ r->connection->log->log_level = clcf->error_log->log_level;
diff --git a/libs/nspr/DETAILS b/libs/nspr/DETAILS
index e922f7b..bc20dfc 100755
--- a/libs/nspr/DETAILS
+++ b/libs/nspr/DETAILS
@@ -1,11 +1,11 @@
SPELL=nspr
- VERSION=4.8.8
+ VERSION=4.8.9
SOURCE=$SPELL-$VERSION.tar.gz
SOURCE_DIRECTORY="$BUILD_DIRECTORY/$SPELL-$VERSION"

SOURCE_URL[0]=http://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v$VERSION/src/$SOURCE
WEB_SITE=http://www.mozilla.org/projects/nspr/
ENTERED=20050512
-
SOURCE_HASH=sha512:26deadeb89b4ce161ea9bf04271ba7895c78cfab1fa4cd1c82b2d5f835381e4c26c9348b690e688c870c842d5465d45113f4dc44cf71ee35d0b64cdde21bcd51
+
SOURCE_HASH=sha512:78e2f444b92af0e931b81a2f0c517c3583010af3c5e5a556d881531289fcf0b2ec17dd623b307938605fbdd0a7d6e4e3e257b4151dc757a8b47a5b2f129081f2
# SOURCE_GPG=gurus.gpg:$SOURCE.sig:WORKS_FOR_ME
LICENSE[0]=MPL
GATHER_DOCS=no
diff --git a/libs/nspr/HISTORY b/libs/nspr/HISTORY
index aecc392..dc4d3b6 100644
--- a/libs/nspr/HISTORY
+++ b/libs/nspr/HISTORY
@@ -1,3 +1,6 @@
+2011-08-11 Julien "_kaze_" ROZO <julien AT rozo.org>
+ * DETAILS: updated version to 4.8.9
+
2011-07-30 Florian Franzmann <siflfran AT hawo.stw.uni-erlangen.de>
* DEPENDS: changed dependency on g++ to dependency on gcc with
sub-depends on CXX (scripted)
diff --git a/mail/pflogsumm/BUILD b/mail/pflogsumm/BUILD
new file mode 100755
index 0000000..27ba77d
--- /dev/null
+++ b/mail/pflogsumm/BUILD
@@ -0,0 +1 @@
+true
diff --git a/mail/pflogsumm/DEPENDS b/mail/pflogsumm/DEPENDS
new file mode 100755
index 0000000..354388c
--- /dev/null
+++ b/mail/pflogsumm/DEPENDS
@@ -0,0 +1,5 @@
+depends perl &&
+
+runtime_depends date-calc &&
+
+optional_depends metalog "" "" "for Metalog support (via patch)"
diff --git a/mail/pflogsumm/DETAILS b/mail/pflogsumm/DETAILS
new file mode 100755
index 0000000..f866b17
--- /dev/null
+++ b/mail/pflogsumm/DETAILS
@@ -0,0 +1,16 @@
+ SPELL=pflogsumm
+ VERSION=1.1.1
+ SOURCE=$SPELL-$VERSION.tar.gz
+ SOURCE_URL[0]=http://jimsun.linxnet.com/downloads/$SOURCE
+ SOURCE_URL[1]=ftp://jimsun.linxnet.com/pub/postfix_contrib/$SOURCE
+
SOURCE_HASH=sha512:efde17ddaaeee9ea87b9c2e1aacc523a419627bb08233bc09e8ae2a7d7d8538f3414fb363202ceb482381ebc1791913e71750340ca457ac67d1a6882881987f9
+SOURCE_DIRECTORY="$BUILD_DIRECTORY/$SPELL-$VERSION"
+ WEB_SITE=http://jimsun.linxnet.com/postfix_contrib.html
+ LICENSE[0]=GPL
+ ENTERED=20110811
+ SHORT="logfile analyzer utility for Postfix mailer"
+cat << EOF
+Pflogsumm.pl is designed to provide an over-view of postfix activity,
+with just enough detail to give the administrator a "heads up" for potential
+trouble spots.
+EOF
diff --git a/mail/pflogsumm/HISTORY b/mail/pflogsumm/HISTORY
new file mode 100644
index 0000000..6370b9e
--- /dev/null
+++ b/mail/pflogsumm/HISTORY
@@ -0,0 +1,3 @@
+2011-04-25 Vlad Glagolev <stealth AT sourcemage.org>
+ * {PRE_,}BUILD, DEPENDS, DETAILS, INSTALL,
+ pflogsumm-1.1.1_metalog.patch: spell created
diff --git a/mail/pflogsumm/INSTALL b/mail/pflogsumm/INSTALL
new file mode 100755
index 0000000..5942426
--- /dev/null
+++ b/mail/pflogsumm/INSTALL
@@ -0,0 +1,3 @@
+install -vm 755 pflogsumm.pl "$INSTALL_ROOT/usr/bin/pflogsumm" &&
+install -vm 755 -d "$INSTALL_ROOT/usr/share/man/man1" &&
+install -vm 644 pflogsumm.1 "$INSTALL_ROOT/usr/share/man/man1"
diff --git a/mail/pflogsumm/PRE_BUILD b/mail/pflogsumm/PRE_BUILD
new file mode 100755
index 0000000..ce7e0a0
--- /dev/null
+++ b/mail/pflogsumm/PRE_BUILD
@@ -0,0 +1,6 @@
+default_pre_build &&
+cd "$SOURCE_DIRECTORY" &&
+
+if is_depends_enabled $SPELL metalog; then
+ patch -p0 -i "$SPELL_DIRECTORY/pflogsumm-1.1.1_metalog.patch"
+fi
diff --git a/mail/pflogsumm/pflogsumm-1.1.1_metalog.patch
b/mail/pflogsumm/pflogsumm-1.1.1_metalog.patch
new file mode 100644
index 0000000..87d2627
--- /dev/null
+++ b/mail/pflogsumm/pflogsumm-1.1.1_metalog.patch
@@ -0,0 +1,16 @@
+*** pflogsumm.pl 2011-04-25 12:10:15.189036001 +0400
+--- pflogsumm.pl.metalog 2011-04-25 12:10:04.633036001 +0400
+***************
+*** 539,544 ****
+--- 539,549 ----
+ while(<>) {
+ next if(defined($dateStr) && ! /^$dateStr/o);
+ s/: \[ID \d+ [^\]]+\] /: /o; # lose "[ID nnnnnn some.thing]" stuff
++
#------------------------------------------------------------------------
++ # metalog hack by David B. Ferguson <david AT linuxnet.ca> 08/19/2008
++ # see http://linuxnet.ca/postfix/pflogsumm_metalog.html for latest
++ s/\[(postfix|$syslogName)\/(.*)\] /metalog $1\/$2\[54321\]: /;
++
#------------------------------------------------------------------------
+ my $logRmdr;
+ next unless((($msgMonStr, $msgDay, $msgHr, $msgMin, $msgSec, $logRmdr)
=
+ /^(...) +(\d+) (..):(..):(..) \S+ (.+)$/o) == 6);
diff --git a/printer/ghostscript/DEPENDS b/printer/ghostscript/DEPENDS
index 8abb6a4..d424e00 100755
--- a/printer/ghostscript/DEPENDS
+++ b/printer/ghostscript/DEPENDS
@@ -33,7 +33,7 @@ optional_depends libpaper \
"papersize support" &&

optional_depends "CUPS" \
- "--enable-cups" \
+ "--enable-cups --with-install-cups" \
"--disable-cups" \
"CUPS print spooler support" &&

diff --git a/printer/ghostscript/DETAILS b/printer/ghostscript/DETAILS
index c4c758e..1aae961 100755
--- a/printer/ghostscript/DETAILS
+++ b/printer/ghostscript/DETAILS
@@ -1,6 +1,6 @@
SPELL=ghostscript
- VERSION=9.02
-
SOURCE_HASH=sha512:a25d65b60b1be8b81de1d7cb55b256c0de883b21b65a7ff241e36a6baf5ec5efbd166031f24e25864417245774a523a0795948c763559875e0b22caa5a61cf5e
+ VERSION=9.04
+
SOURCE_HASH=sha512:f4fd2b5d82a1f9aa918f21a85571f3684778be5b6fe868ae19165717b212aac99b515bb94e3589c3a01b7f836829a283da2162583d4d2dc3c7c267b1926a17ed
SOURCE=$SPELL-$VERSION.tar.bz2
SOURCE_DIRECTORY="$BUILD_DIRECTORY/$SPELL-$VERSION"
WEB_SITE=http://www.ghostscript.com/
diff --git a/printer/ghostscript/HISTORY b/printer/ghostscript/HISTORY
index b871877..293af8d 100644
--- a/printer/ghostscript/HISTORY
+++ b/printer/ghostscript/HISTORY
@@ -1,3 +1,9 @@
+2011-08-11 Vlad Glagolev <stealth AT sourcemage.org>
+ * DEPENDS: fixed broken printing -- added missing cups flag
+
+2011-08-11 Treeve Jelbert <treeve AT sourcemage.org>
+ * DETAILS: version 9.04
+
2011-04-28 Treeve Jelbert <treeve AT sourcemage.org>
* DEPENDS: add optional libidn

diff --git a/utils/sysklogd/DETAILS b/utils/sysklogd/DETAILS
index e114a60..a5ad152 100755
--- a/utils/sysklogd/DETAILS
+++ b/utils/sysklogd/DETAILS
@@ -1,10 +1,10 @@
SPELL=sysklogd
- VERSION=1.4.1
- PATCHLEVEL=1
+ VERSION=1.5
+ PATCHLEVEL=0
SOURCE=$SPELL-$VERSION.tar.gz
SOURCE_DIRECTORY=$BUILD_DIRECTORY/$SPELL-$VERSION
SOURCE_URL[0]=http://www.ibiblio.org/pub/Linux/system/daemons/$SOURCE
-
SOURCE_HASH=sha512:01924f9b9c72e3a0ee1a530eb8bd39779ca52dfabb62725085c6d3d71898777e6a47dae1c104ad6d376064c66b9dada9e3ba27e98ba92915a0875e789d8b2c8b
+
SOURCE_HASH=sha512:19ef104c03a8c87ea30c811fe54bb30e7c73a2834a83c8720841f0d553d41508dbf052d4e3dd9ea929eedff31e9fbb79f8c05546f48005b74f01ebf2a57e48f7
WEB_SITE=http://www.ibiblio.org/pub/Linux/system/daemons
ENTERED=20010922
LICENSE[0]=GPL
diff --git a/utils/sysklogd/HISTORY b/utils/sysklogd/HISTORY
index dd40a2d..6e14c73 100644
--- a/utils/sysklogd/HISTORY
+++ b/utils/sysklogd/HISTORY
@@ -1,3 +1,10 @@
+2011-08-08 Julien "_kaze_" ROZO <julien AT rozo.org>
+ * DETAILS: updated version to 1.5, PATCHLEVEL=0
+ * PRE_BUILD: added sedit rules to use sorcery configured CFLAGS and
+ LDFLAGS, adapted sedit rules for BINDIR and MANDIR to the new
version,
+ removed old version patch
+ * sysklogd-1.4.1-kernel_header.patch: removed, obsolete
+
2008-08-05 Jeremy Blosser <jblosser-smgl AT firinn.org>
* BUILD: Moved most to PRE_BUILD.
* PRE_BUILD: Added, with support for large log files option.
diff --git a/utils/sysklogd/PRE_BUILD b/utils/sysklogd/PRE_BUILD
index 9c9857f..8a39c54 100755
--- a/utils/sysklogd/PRE_BUILD
+++ b/utils/sysklogd/PRE_BUILD
@@ -2,9 +2,10 @@ default_pre_build &&

cd "${SOURCE_DIRECTORY}" &&

-patch -p1 < $SCRIPT_DIRECTORY/sysklogd-1.4.1-kernel_header.patch
&&
-sedit "s:BINDIR = /usr/sbin:BINDIR=$INSTALL_ROOT/sbin:" Makefile
&&
-sedit "s:MANDIR = /usr/man:MANDIR=$INSTALL_ROOT/usr/share/man:" Makefile
&&
+sedit "s:-O3:${CFLAGS} -D_GNU_SOURCE:" Makefile &&
+sedit "s:LDFLAGS= -s:LDFLAGS= ${LDFLAGS}:" Makefile &&
+sedit "s:BINDIR = \$(prefix)/usr/sbin:BINDIR=$INSTALL_ROOT/sbin:" Makefile
&&
+sedit "s:MANDIR = \$(prefix):MANDIR = $INSTALL_ROOT:" Makefile &&

if [ "${LARGE_FILES}" == "y" ]; then
sedit "s:SYSLOGD_FLAGS=:SYSLOGD_FLAGS= -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE:" Makefile
diff --git a/utils/sysklogd/sysklogd-1.4.1-kernel_header.patch
b/utils/sysklogd/sysklogd-1.4.1-kernel_header.patch
deleted file mode 100644
index a30a202..0000000
--- a/utils/sysklogd/sysklogd-1.4.1-kernel_header.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-Submitted by: DJ Lucas (dj_at_lucasit_dot_com)
-Date: 2003-08-17
-Initial Package Version: 1.4.1
-Origin: Linux Standard Base Project
-Description: This patch fixes a dependacy on kernel includes.
- Specifically, it removes the need to have kernel/module.h around. It
- is usable when building a linux-2.6 based system to get around
- compile problems. Source link:
- http://freestandards.org/pipermail/lsb-impl/2002-October/000466.html
-
-diff -Naur sysklogd-1.4.1-orig/Makefile sysklogd-1.4.1/Makefile
---- sysklogd-1.4.1-orig/Makefile 1998-10-12 20:25:15.000000000 +0000
-+++ sysklogd-1.4.1/Makefile 2003-08-17 19:14:38.000000000 +0000
-@@ -3,7 +3,7 @@
- CC= gcc
- #CFLAGS= -g -DSYSV -Wall
- #LDFLAGS= -g
--CFLAGS= $(RPM_OPT_FLAGS) -O3 -DSYSV -fomit-frame-pointer -Wall
-fno-strength-reduce
-+CFLAGS= $(RPM_OPT_FLAGS) -DSYSV -D_GNU_SOURCE -Wall
- LDFLAGS= -s
-
- # Look where your install program is.
-diff -Naur sysklogd-1.4.1-orig/ksym_mod.c sysklogd-1.4.1/ksym_mod.c
---- sysklogd-1.4.1-orig/ksym_mod.c 2000-09-12 21:15:28.000000000 +0000
-+++ sysklogd-1.4.1/ksym_mod.c 2003-08-17 19:14:38.000000000 +0000
-@@ -93,7 +93,7 @@
- #include <linux/time.h>
- #include <linux/module.h>
- #else /* __GLIBC__ */
--#include <linux/module.h>
-+#include "module.h"
- extern __off64_t lseek64 __P ((int __fd, __off64_t __offset, int __whence));
- extern int get_kernel_syms __P ((struct kernel_sym *__table));
- #endif /* __GLIBC__ */
-diff -Naur sysklogd-1.4.1-orig/module.h sysklogd-1.4.1/module.h
---- sysklogd-1.4.1-orig/module.h 1970-01-01 00:00:00.000000000 +0000
-+++ sysklogd-1.4.1/module.h 2003-08-17 19:14:38.000000000 +0000
-@@ -0,0 +1,62 @@
-+/* this file eliminates the need to include <kernel/module.h> */
-+/* Module definitions for klogd's module support */
-+struct kernel_sym
-+{
-+ unsigned long value;
-+ char name[60];
-+};
-+
-+struct module_symbol
-+{
-+ unsigned long value;
-+ const char *name;
-+};
-+
-+struct module_ref
-+{
-+ struct module *dep; /* "parent" pointer */
-+ struct module *ref; /* "child" pointer */
-+ struct module_ref *next_ref;
-+};
-+
-+struct module_info
-+{
-+ unsigned long addr;
-+ unsigned long size;
-+ unsigned long flags;
-+ long usecount;
-+};
-+
-+
-+typedef struct { volatile int counter; } atomic_t;
-+
-+struct module
-+{
-+ unsigned long size_of_struct; /* == sizeof(module) */
-+ struct module *next;
-+ const char *name;
-+ unsigned long size;
-+
-+ union
-+ {
-+ atomic_t usecount;
-+ long pad;
-+ } uc; /* Needs to keep its size - so says
rth */
-+
-+ unsigned long flags; /* AUTOCLEAN et al */
-+
-+ unsigned nsyms;
-+ unsigned ndeps;
-+
-+ struct module_symbol *syms;
-+ struct module_ref *deps;
-+ struct module_ref *refs;
-+ int (*init)(void);
-+ void (*cleanup)(void);
-+ const struct exception_table_entry *ex_table_start;
-+ const struct exception_table_entry *ex_table_end;
-+#ifdef __alpha__
-+ unsigned long gp;
-+#endif
-+};
-+



  • [SM-Commit] GIT changes to devel-xorg-modular grimoire by Vlad Glagolev (5fb12b6b87236f6c40dec3efc6f6159b42a8ce49), Vlad Glagolev, 08/11/2011

Archive powered by MHonArc 2.6.24.

Top of Page