[Pkg-voip-commits] r3478 - in openser/trunk/debian: . patches

Julien Blache jblache at alioth.debian.org
Wed Apr 25 16:02:04 UTC 2007


Author: jblache
Date: 2007-04-25 16:02:04 +0000 (Wed, 25 Apr 2007)
New Revision: 3478

Added:
   openser/trunk/debian/patches/22_perl_sysv_sem.dpatch
Modified:
   openser/trunk/debian/changelog
   openser/trunk/debian/patches/00list
Log:
Fix perl module build with USE_SYSV_SEM


Modified: openser/trunk/debian/changelog
===================================================================
--- openser/trunk/debian/changelog	2007-04-25 08:12:49 UTC (rev 3477)
+++ openser/trunk/debian/changelog	2007-04-25 16:02:04 UTC (rev 3478)
@@ -2,8 +2,10 @@
 
   * debian/patches/21_pua_lock_fix.dpatch:
     + Added; fix typo in modules/pua/hash.c.
+  * debian/patches/22_perl_sysv_sem.dpatch:
+    + Added; fix perl module build with USE_SYSV_SEM.
 
- -- Julien BLACHE <jblache at debian.org>  Sun, 22 Apr 2007 17:41:46 +0200
+ -- Julien BLACHE <jblache at debian.org>  Wed, 25 Apr 2007 18:01:06 +0200
 
 openser (1.2.0-3) unstable; urgency=low
 

Modified: openser/trunk/debian/patches/00list
===================================================================
--- openser/trunk/debian/patches/00list	2007-04-25 08:12:49 UTC (rev 3477)
+++ openser/trunk/debian/patches/00list	2007-04-25 16:02:04 UTC (rev 3478)
@@ -2,4 +2,5 @@
 11_always_smp
 20_usrloc_lockset_fixes
 21_pua_lock_fix
+22_perl_sysv_sem
 

Added: openser/trunk/debian/patches/22_perl_sysv_sem.dpatch
===================================================================
--- openser/trunk/debian/patches/22_perl_sysv_sem.dpatch	2007-04-25 08:12:49 UTC (rev 3477)
+++ openser/trunk/debian/patches/22_perl_sysv_sem.dpatch	2007-04-25 16:02:04 UTC (rev 3478)
@@ -0,0 +1,382 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 22_perl_sysv_sem.dpatch by  <jblache at debian.org>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Fix perl module build with USE_SYSV_SEM.
+## DP:  - enum member conflict with global variables in globals.h
+## DP:  - perl and lock_ops.h both defining union semun
+
+ at DPATCH@
+diff -urNad openser-1.2.0~/modules/perl/openserxs.xs openser-1.2.0/modules/perl/openserxs.xs
+--- openser-1.2.0~/modules/perl/openserxs.xs	2007-03-12 16:22:54.000000000 +0100
++++ openser-1.2.0/modules/perl/openserxs.xs	2007-04-22 21:32:06.122254476 +0200
+@@ -29,6 +29,12 @@
+ #include <XSUB.h>
+ #include <unistd.h>
+ #undef load_module
++
++/* perl.h defines union semun */
++#ifdef USE_SYSV_SEM
++# undef _SEM_SEMUN_UNDEFINED
++#endif
++
+ #include "../../sr_module.h"
+ #include "../../parser/msg_parser.h"
+ #include "../../parser/parse_uri.h"
+@@ -43,27 +49,27 @@
+ 
+ extern int unsafemodfnc;
+ 
+-enum uri_members {
+-	user = 0,
+-	passwd,
+-	host,
+-	port,
+-	params,
+-	headers,
+-	transport,
+-	ttl,
+-	user_param,
+-	maddr,
+-	method,
+-	lr,
+-	r2,
+-	transport_val,
+-	ttl_val,
+-	user_param_val,
+-	maddr_val,
+-	method_val,
+-	lr_val,
+-	r2_val
++enum xs_uri_members {
++	XS_URI_USER = 0,
++	XS_URI_PASSWD,
++	XS_URI_HOST,
++	XS_URI_PORT,
++	XS_URI_PARAMS,
++	XS_URI_HEADERS,
++	XS_URI_TRANSPORT,
++	XS_URI_TTL,
++	XS_URI_USER_PARAM,
++	XS_URI_MADDR,
++	XS_URI_METHOD,
++	XS_URI_LR,
++	XS_URI_R2,
++	XS_URI_TRANSPORT_VAL,
++	XS_URI_TTL_VAL,
++	XS_URI_USER_PARAM_VAL,
++	XS_URI_MADDR_VAL,
++	XS_URI_METHOD_VAL,
++	XS_URI_LR_VAL,
++	XS_URI_R2_VAL
+ 	
+ 	/* These members are no strings:
+ 		unsigned short port_no;
+@@ -129,7 +135,7 @@
+ }
+ 		
+ 
+-SV *getStringFromURI(SV *self, enum uri_members what) {
++SV *getStringFromURI(SV *self, enum xs_uri_members what) {
+ 	struct sip_uri *myuri = sv2uri(self);
+ 	str *ret = NULL;
+ 
+@@ -139,45 +145,45 @@
+ 	} else {
+ 		
+ 		switch (what) {
+-			case user:		ret = &(myuri->user);
++			case XS_URI_USER:	ret = &(myuri->user);
+ 						break;
+-			case host:		ret = &(myuri->host);
++			case XS_URI_HOST:	ret = &(myuri->host);
+ 						break;
+-			case passwd:		ret = &(myuri->passwd);
++			case XS_URI_PASSWD:	ret = &(myuri->passwd);
+ 						break;
+-			case port:		ret = &(myuri->port);
++			case XS_URI_PORT:	ret = &(myuri->port);
+ 						break;
+-			case params:		ret = &(myuri->params);
++			case XS_URI_PARAMS:	ret = &(myuri->params);
+ 						break;
+-			case headers:		ret = &(myuri->headers);
++			case XS_URI_HEADERS:	ret = &(myuri->headers);
+ 						break;
+-			case transport:		ret = &(myuri->transport);
++			case XS_URI_TRANSPORT:	ret = &(myuri->transport);
+ 						break;
+-			case ttl:		ret = &(myuri->ttl);
++			case XS_URI_TTL:		ret = &(myuri->ttl);
+ 						break;
+-			case user_param:	ret = &(myuri->user_param);
++			case XS_URI_USER_PARAM:	ret = &(myuri->user_param);
+ 						break;
+-			case maddr:		ret = &(myuri->maddr);
++			case XS_URI_MADDR:	ret = &(myuri->maddr);
+ 						break;
+-			case method:		ret = &(myuri->method);
++			case XS_URI_METHOD:	ret = &(myuri->method);
+ 						break;
+-			case lr:		ret = &(myuri->lr);
++			case XS_URI_LR:		ret = &(myuri->lr);
+ 						break;
+-			case r2:		ret = &(myuri->r2);
++			case XS_URI_R2:		ret = &(myuri->r2);
+ 						break;
+-			case transport_val:	ret = &(myuri->transport_val);
++			case XS_URI_TRANSPORT_VAL:	ret = &(myuri->transport_val);
+ 						break;
+-			case ttl_val:		ret = &(myuri->ttl_val);
++			case XS_URI_TTL_VAL:	ret = &(myuri->ttl_val);
+ 						break;
+-			case user_param_val:	ret = &(myuri->user_param_val);
++			case XS_URI_USER_PARAM_VAL:	ret = &(myuri->user_param_val);
+ 						break;
+-			case maddr_val:		ret = &(myuri->maddr_val);
++			case XS_URI_MADDR_VAL:	ret = &(myuri->maddr_val);
+ 						break;
+-			case method_val:	ret = &(myuri->method_val);
++			case XS_URI_METHOD_VAL:	ret = &(myuri->method_val);
+ 						break;
+-			case lr_val:		ret = &(myuri->lr_val);
++			case XS_URI_LR_VAL:	ret = &(myuri->lr_val);
+ 						break;
+-			case r2_val:		ret = &(myuri->r2_val);
++			case XS_URI_R2_VAL:	ret = &(myuri->r2_val);
+ 						break;
+ 
+ 			default:	LOG(L_INFO, "Unknown URI element"
+@@ -715,7 +721,6 @@
+ getBody(self)
+     SV *self
+   PREINIT:
+-  PREINIT:
+     struct sip_msg *msg = sv2msg(self);
+   INIT:
+   CODE:
+@@ -738,7 +743,6 @@
+ getMessage(self)
+     SV *self
+   PREINIT:
+-  PREINIT:
+     struct sip_msg *msg = sv2msg(self);
+   INIT:
+   CODE:
+@@ -1317,7 +1321,7 @@
+ user(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, user);
++	ST(0) = getStringFromURI(self, XS_URI_USER);
+ 
+ 
+ =head2 host()
+@@ -1330,7 +1334,7 @@
+ host(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, host);
++	ST(0) = getStringFromURI(self, XS_URI_HOST);
+ 
+ 
+ =head2 passwd()
+@@ -1343,7 +1347,7 @@
+ passwd(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, passwd);
++	ST(0) = getStringFromURI(self, XS_URI_PASSWD);
+ 
+ 
+ =head2 port()
+@@ -1356,7 +1360,7 @@
+ port(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, port);
++	ST(0) = getStringFromURI(self, XS_URI_PORT);
+ 
+ 
+ =head2 params()
+@@ -1369,7 +1373,7 @@
+ params(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, params);
++	ST(0) = getStringFromURI(self, XS_URI_PARAMS);
+ 
+ 
+ =head2 headers()
+@@ -1382,7 +1386,7 @@
+ headers(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, headers);
++	ST(0) = getStringFromURI(self, XS_URI_HEADERS);
+ 
+ 
+ =head2 transport()
+@@ -1395,7 +1399,7 @@
+ transport(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, transport);
++	ST(0) = getStringFromURI(self, XS_URI_TRANSPORT);
+ 
+ 
+ =head2 ttl()
+@@ -1408,7 +1412,7 @@
+ ttl(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, ttl);
++	ST(0) = getStringFromURI(self, XS_URI_TTL);
+ 
+ 
+ =head2 user_param()
+@@ -1421,7 +1425,7 @@
+ user_param(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, user_param);
++	ST(0) = getStringFromURI(self, XS_URI_USER_PARAM);
+ 
+ 
+ 
+@@ -1435,7 +1439,7 @@
+ maddr(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, maddr);
++	ST(0) = getStringFromURI(self, XS_URI_MADDR);
+ 
+ =head2 method()
+ 
+@@ -1447,7 +1451,7 @@
+ method(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, method);
++	ST(0) = getStringFromURI(self, XS_URI_METHOD);
+ 
+ 
+ =head2 lr()
+@@ -1460,7 +1464,7 @@
+ lr(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, lr);
++	ST(0) = getStringFromURI(self, XS_URI_LR);
+ 
+ 
+ =head2 r2()
+@@ -1473,7 +1477,7 @@
+ r2(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, r2);
++	ST(0) = getStringFromURI(self, XS_URI_R2);
+ 
+ 
+ =head2 transport_val()
+@@ -1486,7 +1490,7 @@
+ transport_val(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, transport_val);
++	ST(0) = getStringFromURI(self, XS_URI_TRANSPORT_VAL);
+ 
+ 
+ =head2 ttl_val()
+@@ -1499,7 +1503,7 @@
+ ttl_val(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, ttl_val);
++	ST(0) = getStringFromURI(self, XS_URI_TTL_VAL);
+ 
+ 
+ =head2 user_param_val()
+@@ -1512,7 +1516,7 @@
+ user_param_val(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, user_param_val);
++	ST(0) = getStringFromURI(self, XS_URI_USER_PARAM_VAL);
+ 
+ 
+ =head2 maddr_val()
+@@ -1525,7 +1529,7 @@
+ maddr_val(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, maddr_val);
++	ST(0) = getStringFromURI(self, XS_URI_MADDR_VAL);
+ 
+ 
+ =head2 method_val()
+@@ -1538,7 +1542,7 @@
+ method_val(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, method_val);
++	ST(0) = getStringFromURI(self, XS_URI_METHOD_VAL);
+ 
+ 
+ =head2 lr_val()
+@@ -1551,7 +1555,7 @@
+ lr_val(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, lr_val);
++	ST(0) = getStringFromURI(self, XS_URI_LR_VAL);
+ 
+ 
+ =head2 r2_val()
+@@ -1564,7 +1568,7 @@
+ r2_val(self)
+     SV *self;
+   CODE:
+-	ST(0) = getStringFromURI(self, r2_val);
++	ST(0) = getStringFromURI(self, XS_URI_R2_VAL);
+ 
+ 
+ 
+diff -urNad openser-1.2.0~/modules/perl/perl.c openser-1.2.0/modules/perl/perl.c
+--- openser-1.2.0~/modules/perl/perl.c	2007-03-12 16:22:54.000000000 +0100
++++ openser-1.2.0/modules/perl/perl.c	2007-04-22 21:32:06.123254569 +0200
+@@ -37,6 +37,11 @@
+ #include "../rr/api.h"
+ #include "../sl/sl_api.h"
+ 
++/* lock_ops.h defines union semun, perl does not need to redefine it */
++#ifdef USE_SYSV_SEM
++# define HAS_UNION_SEMUN
++#endif
++
+ #include "perlfunc.h"
+ #include "perl.h"
+ 
+diff -urNad openser-1.2.0~/modules/perl/perl.h openser-1.2.0/modules/perl/perl.h
+--- openser-1.2.0~/modules/perl/perl.h	2007-03-12 16:22:54.000000000 +0100
++++ openser-1.2.0/modules/perl/perl.h	2007-04-22 21:32:06.123254569 +0200
+@@ -27,11 +27,16 @@
+ #ifndef PERL_MOD_H
+ #define PERL_MOD_H
+ 
++#include "../sl/sl_api.h"
++
++/* lock_ops.h defines union semun, perl does not need to redefine it */
++#ifdef USE_SYSV_SEM
++# define HAS_UNION_SEMUN
++#endif
++
+ #include <EXTERN.h>
+ #include <perl.h>
+ 
+-#include "../sl/sl_api.h"
+-
+ extern char *filename;
+ extern char *modpath;
+ 


Property changes on: openser/trunk/debian/patches/22_perl_sysv_sem.dpatch
___________________________________________________________________
Name: svn:executable
   + *




More information about the Pkg-voip-commits mailing list