[glite-lbjp-common-gsoap-plugin] Patch for multilib glite-lbjp-common-gsoap-plugin-devel.

František Dvořák valtri at fedoraproject.org
Thu Jul 3 18:37:24 UTC 2014


commit ecdcb8fc2b79ae31d5839e37ed758ff4df013485
Author: František Dvořák <valtri at civ.zcu.cz>
Date:   Thu Jul 3 20:33:46 2014 +0200

    Patch for multilib glite-lbjp-common-gsoap-plugin-devel.

 arched-header.patch                 |  396 +++++++++++++++++++++++++++++++++++
 glite-lbjp-common-gsoap-plugin.spec |   12 +
 2 files changed, 408 insertions(+), 0 deletions(-)
---
diff --git a/arched-header.patch b/arched-header.patch
new file mode 100644
index 0000000..ecb3c08
--- /dev/null
+++ b/arched-header.patch
@@ -0,0 +1,396 @@
+commit 793e9e81f78393cdf6dc1eb6473bf14f8d6973a3
+Author: František Dvořák <valtri at civ.zcu.cz>
+Date:   Wed Jul 2 16:57:30 2014 +0200
+
+    Separate platform-specific parts of the gsoap-plugin helper header into library directory, update necessary build flags and packaging. This is the first part of the fix for issue #26.
+
+diff --git a/org.glite.lbjp-common.gsoap-plugin/Makefile b/org.glite.lbjp-common.gsoap-plugin/Makefile
+index ce3885a..a9f977c 100644
+--- a/org.glite.lbjp-common.gsoap-plugin/Makefile
++++ b/org.glite.lbjp-common.gsoap-plugin/Makefile
+@@ -132,7 +132,7 @@ endif
+ EX_NOTHRLIBS:=-L${stagedir}${prefix}/${libdir} -lglite_security_gss_${nothrflavour}
+ EX_THRLIBS:=-L${stagedir}${prefix}/${libdir} -lglite_security_gss_${thrflavour}
+ EX_LIBS:=-L${stagedir}${prefix}/${libdir} -lglite_security_gss
+-HDRS:=glite_gsplugin.h glite_gsplugin-int.h
++HDRS:=glite_gsplugin.h glite_gsplugin-int.h glite_gscompat.h
+ EXAMPLES:=wscalc_clt_ex wscalc_srv_ex wscalc_srv_ex2
+ TESTS:=test_cxx
+ 
+@@ -233,7 +233,7 @@ endif
+ 
+ all compile: \
+ 	${lib_LTLIBRARIES} \
+-	all-libs-with-soap examples glite_gscompat.h pkgconfig
++	all-libs-with-soap examples glite_gsplatform.h pkgconfig
+ 
+ check: check.cxx
+ 
+@@ -324,9 +324,9 @@ sizeof_soap.o: sizeof_soap.c stdsoap2.h
+ sizeof_soap: sizeof_soap.o
+ 	${LINK} $< -o $@
+ 
+-glite_gscompat.h: glite_gscompat.h.in sizeof_soap
++glite_gsplatform.h: glite_gsplatform.h.in sizeof_soap
+ 	size=${shell ./sizeof_soap}; \
+-	sed "s/@sizeof_struct_soap@/$$size/" ${top_srcdir2}/interface/glite_gscompat.h.in > $@
++	sed "s/@sizeof_struct_soap@/$$size/" ${top_srcdir2}/interface/glite_gsplatform.h.in > $@
+ 
+ pkgconfig: ${PKG_CONFIG_FILES}
+ 
+@@ -339,8 +339,9 @@ install:
+ 	-mkdir -p ${DESTDIR}${PREFIX}${prefix}/${libdir}/pkgconfig
+ 	-mkdir -p ${DESTDIR}${PREFIX}${prefix}/include/glite/security
+ 	-mkdir -p ${DESTDIR}${PREFIX}${prefix}/include/glite/security/
++	-mkdir -p ${DESTDIR}${PREFIX}${prefix}/${libdir}/glite-lb/include/glite/security/
+ 	cd ${top_srcdir2}/interface && ${INSTALL} -m 644 ${HDRS} ${DESTDIR}${PREFIX}${prefix}/include/glite/security/
+-	${INSTALL} -m 644 glite_gscompat.h ${DESTDIR}${PREFIX}${prefix}/include/glite/security/
++	${INSTALL} -m 644 glite_gsplatform.h ${DESTDIR}${PREFIX}${prefix}/${libdir}/glite-lb/include/glite/security/
+ 	for v in ${gsoap_versions_noflavours}; do \
+ 		${MAKE} -C `echo $$v | tr -d .` -f ${top_srcdir_l2}/Makefile install-soaplib gsoap_version=$$v lang= PREFIX=${PREFIX} top_srcdir2=${top_srcdir_l2} || exit $?; \
+ 	done
+@@ -362,7 +363,7 @@ clean:
+ 	rm -rvf *.c *.h *.xml *.nsmap *.o *.lo .libs ${EXAMPLES} ${TESTS}
+ 	rm -vf gsoap.stamp
+ 	rm -rvf CalcService.wsdl wscalc.xsd
+-	rm -rvf glite_gscompat.h sizeof_soap
++	rm -rvf glite_gsplatform.h sizeof_soap
+ 	for v in ${gsoap_versions_noflavours} ${gsoap_versions_flavours}; do \
+ 		rm -rvf `echo $$v | tr -d .`; \
+ 	done
+diff --git a/org.glite.lbjp-common.gsoap-plugin/interface/glite_gscompat.h b/org.glite.lbjp-common.gsoap-plugin/interface/glite_gscompat.h
+new file mode 100644
+index 0000000..9bdc9a0
+--- /dev/null
++++ b/org.glite.lbjp-common.gsoap-plugin/interface/glite_gscompat.h
+@@ -0,0 +1,111 @@
++/*
++Copyright (c) Members of the EGEE Collaboration. 2004-2010.
++See http://www.eu-egee.org/partners for details on the copyright holders.
++
++Licensed under the Apache License, Version 2.0 (the "License");
++you may not use this file except in compliance with the License.
++You may obtain a copy of the License at
++
++    http://www.apache.org/licenses/LICENSE-2.0
++
++Unless required by applicable law or agreed to in writing, software
++distributed under the License is distributed on an "AS IS" BASIS,
++WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
++See the License for the specific language governing permissions and
++limitations under the License.
++*/
++
++#ifndef GLITE_SECURITY_GSCOMPAT_H
++#define GLITE_SECURITY_GSCOMPAT_H
++
++#include <glite/security/glite_gsplatform.h>
++
++#ifndef GSOAP_VERSION
++  #error GSOAP_VERSION required
++#endif
++
++#ifndef GSOAP_VERSION_LETTER
++#define GSOAP_VERSION_LETTER '\0'
++#endif
++
++#if GSOAP_VERSION >= 20709 || GSOAP_VERSION == 20706 && GSOAP_VERSION_LETTER >= 'd'
++  #define GLITE_SECURITY_GSOAP_CHOICE_GET(CHOICE, ITEM, TYPENAME, TYPENO) ((CHOICE)->union_##TYPENAME.ITEM)
++  #define GLITE_SECURITY_GSOAP_CHOICE_SETTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO) ((CHOICE)->__union_##TYPENAME) = SOAP_UNION__##NS##__union_##TYPENAME##_##ITEM
++  #define GLITE_SECURITY_GSOAP_CHOICE_ISTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO) (((CHOICE)->__union_##TYPENAME) == SOAP_UNION__##NS##__union_##TYPENAME##_##ITEM)
++  /** 2.7.10 requires created dummy choice with type == 0 for empty optional choice */
++  #if GSOAP_VERSION >= 20710
++    #define GLITE_SECURITY_GSOAP_CHOICE_SETNULL(CHOICE, TYPENAME) ((CHOICE)->__union_##TYPENAME) = 0
++  #endif
++#elif GSOAP_VERSION >= 20706
++  #define GLITE_SECURITY_GSOAP_CHOICE_GET(CHOICE, ITEM, TYPENAME, TYPENO) ((CHOICE)->union_##TYPENO.ITEM)
++  #define GLITE_SECURITY_GSOAP_CHOICE_SETTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO) ((CHOICE)->__union_##TYPENO) = SOAP_UNION_##NS##__union_##TYPENO##_##ITEM
++  #define GLITE_SECURITY_GSOAP_CHOICE_ISTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO) (((CHOICE)->__union_##TYPENO) == SOAP_UNION_##NS##__union_##TYPENO##_##ITEM)
++#else
++  #define GLITE_SECURITY_GSOAP_CHOICE_GET(CHOICE, ITEM, TYPENAME, TYPENO) ((CHOICE)->ITEM)
++  #define GLITE_SECURITY_GSOAP_CHOICE_SETTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO)
++  #define GLITE_SECURITY_GSOAP_CHOICE_ISTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO) (((CHOICE)->ITEM) != NULL)
++#endif
++#define GLITE_SECURITY_GSOAP_CHOICE_SET(CHOICE, ITEM, NS, TYPENAME, TYPENO, VALUE) do { \
++	memset((CHOICE), 0, sizeof(*(CHOICE))); \
++	GLITE_SECURITY_GSOAP_CHOICE_SETTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO); \
++	GLITE_SECURITY_GSOAP_CHOICE_GET(CHOICE, ITEM, TYPENAME, TYPENO) = (VALUE); \
++} while(0)
++
++#if GSOAP_VERSION >= 20706
++  #define GLITE_SECURITY_GSOAP_REASON2(SOAP) ((SOAP)->fault->SOAP_ENV__Reason ? (SOAP)->fault->SOAP_ENV__Reason->SOAP_ENV__Text : "(no reason)")
++  #define GLITE_SECURITY_GSOAP_TRUE xsd__boolean__true_
++  #define GLITE_SECURITY_GSOAP_FALSE xsd__boolean__false_
++#else
++  #define GLITE_SECURITY_GSOAP_REASON2(SOAP) ((SOAP)->fault->SOAP_ENV__Reason)
++  #define GLITE_SECURITY_GSOAP_TRUE true_
++  #define GLITE_SECURITY_GSOAP_FALSE false_
++#endif
++
++#define GLITE_SECURITY_GSOAP_DETAIL(SOAP) ((SOAP)->version == 2 ? (SOAP)->fault->SOAP_ENV__Detail : (SOAP)->fault->detail)
++#define GLITE_SECURITY_GSOAP_REASON(SOAP) ((SOAP)->version == 2 ? GLITE_SECURITY_GSOAP_REASON2((SOAP)) : (SOAP)->fault->faultstring)
++
++#if GSOAP_VERSION >= 20709
++  #define GLITE_SECURITY_GSOAP_LIST_CREATE0(SOAP, LIST, SIZE, TYPE, N) do { \
++	if ((N) != 0) (LIST) = soap_malloc((SOAP), (N) * sizeof(TYPE)); \
++	else (LIST) = NULL; \
++	(SIZE) = (N); \
++} while (0)
++  #define GLITE_SECURITY_GSOAP_LIST_DESTROY0(SOAP, LIST, SIZE) do { \
++	if ((LIST) && (SIZE) != 0) soap_dealloc((SOAP), (LIST)); \
++	(LIST) = NULL; \
++} while (0)
++  #define GLITE_SECURITY_GSOAP_LIST_GET(LIST, INDEX) (&(LIST)[INDEX])
++  #define GLITE_SECURITY_GSOAP_LIST_TYPE(NS, LIST) struct NS##__##LIST *
++#else
++  #define GLITE_SECURITY_GSOAP_LIST_CREATE0(SOAP, LIST, SIZE, TYPE, N) do { \
++	int ilist; \
++	\
++	if ((N) != 0) (LIST) = soap_malloc((SOAP), (N) * sizeof(void *)); \
++	else (LIST) = NULL; \
++	(SIZE) = (N); \
++	for (ilist = 0; ilist < (N); ilist++) { \
++		(LIST)[ilist] = soap_malloc((SOAP), sizeof(TYPE)); \
++	} \
++} while (0)
++  #define GLITE_SECURITY_GSOAP_LIST_DESTROY0(SOAP, LIST, SIZE) do { \
++	int ilist; \
++	\
++	for (ilist = 0; ilist < (SIZE); ilist++) soap_dealloc((SOAP), (LIST)[ilist]); \
++	if ((LIST) && (SIZE) != 0) soap_dealloc((SOAP), (LIST)); \
++	(LIST) = NULL; \
++} while (0)
++  #define GLITE_SECURITY_GSOAP_LIST_GET(LIST, INDEX) ((LIST)[INDEX])
++  #define GLITE_SECURITY_GSOAP_LIST_TYPE(NS, LIST) struct NS##__##LIST **
++#endif
++#define GLITE_SECURITY_GSOAP_LIST_CREATE(SOAP, CONTAINER, LIST, TYPE, N) GLITE_SECURITY_GSOAP_LIST_CREATE0(SOAP, (CONTAINER)->LIST, (CONTAINER)->__size##LIST, TYPE, N)
++#define GLITE_SECURITY_GSOAP_LIST_DESTROY(SOAP, CONTAINER, LIST) GLITE_SECURITY_GSOAP_LIST_DESTROY0(SOAP, (CONTAINER)->LIST, (CONTAINER)->__size##LIST)
++
++#if GSOAP_VERSION >= 20710
++  #define GLITE_SECURITY_GSOAP_SET_FIXED(soap,attr,value) \
++	(attr) = soap_strdup((soap),(value))
++#else
++/* XXX unsupported */
++  #define GLITE_SECURITY_GSOAP_SET_FIXED(soap,attr,value)
++#endif
++
++#endif
+diff --git a/org.glite.lbjp-common.gsoap-plugin/interface/glite_gscompat.h.in b/org.glite.lbjp-common.gsoap-plugin/interface/glite_gscompat.h.in
+deleted file mode 100644
+index 07c03fc..0000000
+--- a/org.glite.lbjp-common.gsoap-plugin/interface/glite_gscompat.h.in
++++ /dev/null
+@@ -1,119 +0,0 @@
+-/*
+-Copyright (c) Members of the EGEE Collaboration. 2004-2010.
+-See http://www.eu-egee.org/partners for details on the copyright holders.
+-
+-Licensed under the Apache License, Version 2.0 (the "License");
+-you may not use this file except in compliance with the License.
+-You may obtain a copy of the License at
+-
+-    http://www.apache.org/licenses/LICENSE-2.0
+-
+-Unless required by applicable law or agreed to in writing, software
+-distributed under the License is distributed on an "AS IS" BASIS,
+-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-See the License for the specific language governing permissions and
+-limitations under the License.
+-*/
+-
+-#ifndef GLITE_SECURITY_GSCOMPAT_H
+-#define GLITE_SECURITY_GSCOMPAT_H
+-
+-#ident "$Header: "
+-
+-/*
+- * for basic sanity check
+- *
+- * size of the soap structure can differs with compilation flags
+- * or with C/C++ compilers
+- */
+-#define GSOAP_SIZEOF_STRUCT_SOAP @sizeof_struct_soap@
+-
+-#ifndef GSOAP_VERSION
+-  #error GSOAP_VERSION required
+-#endif
+-
+-#ifndef GSOAP_VERSION_LETTER
+-#define GSOAP_VERSION_LETTER '\0'
+-#endif
+-
+-#if GSOAP_VERSION >= 20709 || GSOAP_VERSION == 20706 && GSOAP_VERSION_LETTER >= 'd'
+-  #define GLITE_SECURITY_GSOAP_CHOICE_GET(CHOICE, ITEM, TYPENAME, TYPENO) ((CHOICE)->union_##TYPENAME.ITEM)
+-  #define GLITE_SECURITY_GSOAP_CHOICE_SETTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO) ((CHOICE)->__union_##TYPENAME) = SOAP_UNION__##NS##__union_##TYPENAME##_##ITEM
+-  #define GLITE_SECURITY_GSOAP_CHOICE_ISTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO) (((CHOICE)->__union_##TYPENAME) == SOAP_UNION__##NS##__union_##TYPENAME##_##ITEM)
+-  /** 2.7.10 requires created dummy choice with type == 0 for empty optional choice */
+-  #if GSOAP_VERSION >= 20710
+-    #define GLITE_SECURITY_GSOAP_CHOICE_SETNULL(CHOICE, TYPENAME) ((CHOICE)->__union_##TYPENAME) = 0
+-  #endif
+-#elif GSOAP_VERSION >= 20706
+-  #define GLITE_SECURITY_GSOAP_CHOICE_GET(CHOICE, ITEM, TYPENAME, TYPENO) ((CHOICE)->union_##TYPENO.ITEM)
+-  #define GLITE_SECURITY_GSOAP_CHOICE_SETTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO) ((CHOICE)->__union_##TYPENO) = SOAP_UNION_##NS##__union_##TYPENO##_##ITEM
+-  #define GLITE_SECURITY_GSOAP_CHOICE_ISTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO) (((CHOICE)->__union_##TYPENO) == SOAP_UNION_##NS##__union_##TYPENO##_##ITEM)
+-#else
+-  #define GLITE_SECURITY_GSOAP_CHOICE_GET(CHOICE, ITEM, TYPENAME, TYPENO) ((CHOICE)->ITEM)
+-  #define GLITE_SECURITY_GSOAP_CHOICE_SETTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO)
+-  #define GLITE_SECURITY_GSOAP_CHOICE_ISTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO) (((CHOICE)->ITEM) != NULL)
+-#endif
+-#define GLITE_SECURITY_GSOAP_CHOICE_SET(CHOICE, ITEM, NS, TYPENAME, TYPENO, VALUE) do { \
+-	memset((CHOICE), 0, sizeof(*(CHOICE))); \
+-	GLITE_SECURITY_GSOAP_CHOICE_SETTYPE(CHOICE, ITEM, NS, TYPENAME, TYPENO); \
+-	GLITE_SECURITY_GSOAP_CHOICE_GET(CHOICE, ITEM, TYPENAME, TYPENO) = (VALUE); \
+-} while(0)
+-
+-#if GSOAP_VERSION >= 20706
+-  #define GLITE_SECURITY_GSOAP_REASON2(SOAP) ((SOAP)->fault->SOAP_ENV__Reason ? (SOAP)->fault->SOAP_ENV__Reason->SOAP_ENV__Text : "(no reason)")
+-  #define GLITE_SECURITY_GSOAP_TRUE xsd__boolean__true_
+-  #define GLITE_SECURITY_GSOAP_FALSE xsd__boolean__false_
+-#else
+-  #define GLITE_SECURITY_GSOAP_REASON2(SOAP) ((SOAP)->fault->SOAP_ENV__Reason)
+-  #define GLITE_SECURITY_GSOAP_TRUE true_
+-  #define GLITE_SECURITY_GSOAP_FALSE false_
+-#endif
+-
+-#define GLITE_SECURITY_GSOAP_DETAIL(SOAP) ((SOAP)->version == 2 ? (SOAP)->fault->SOAP_ENV__Detail : (SOAP)->fault->detail)
+-#define GLITE_SECURITY_GSOAP_REASON(SOAP) ((SOAP)->version == 2 ? GLITE_SECURITY_GSOAP_REASON2((SOAP)) : (SOAP)->fault->faultstring)
+-
+-#if GSOAP_VERSION >= 20709
+-  #define GLITE_SECURITY_GSOAP_LIST_CREATE0(SOAP, LIST, SIZE, TYPE, N) do { \
+-	if ((N) != 0) (LIST) = soap_malloc((SOAP), (N) * sizeof(TYPE)); \
+-	else (LIST) = NULL; \
+-	(SIZE) = (N); \
+-} while (0)
+-  #define GLITE_SECURITY_GSOAP_LIST_DESTROY0(SOAP, LIST, SIZE) do { \
+-	if ((LIST) && (SIZE) != 0) soap_dealloc((SOAP), (LIST)); \
+-	(LIST) = NULL; \
+-} while (0)
+-  #define GLITE_SECURITY_GSOAP_LIST_GET(LIST, INDEX) (&(LIST)[INDEX])
+-  #define GLITE_SECURITY_GSOAP_LIST_TYPE(NS, LIST) struct NS##__##LIST *
+-#else
+-  #define GLITE_SECURITY_GSOAP_LIST_CREATE0(SOAP, LIST, SIZE, TYPE, N) do { \
+-	int ilist; \
+-	\
+-	if ((N) != 0) (LIST) = soap_malloc((SOAP), (N) * sizeof(void *)); \
+-	else (LIST) = NULL; \
+-	(SIZE) = (N); \
+-	for (ilist = 0; ilist < (N); ilist++) { \
+-		(LIST)[ilist] = soap_malloc((SOAP), sizeof(TYPE)); \
+-	} \
+-} while (0)
+-  #define GLITE_SECURITY_GSOAP_LIST_DESTROY0(SOAP, LIST, SIZE) do { \
+-	int ilist; \
+-	\
+-	for (ilist = 0; ilist < (SIZE); ilist++) soap_dealloc((SOAP), (LIST)[ilist]); \
+-	if ((LIST) && (SIZE) != 0) soap_dealloc((SOAP), (LIST)); \
+-	(LIST) = NULL; \
+-} while (0)
+-  #define GLITE_SECURITY_GSOAP_LIST_GET(LIST, INDEX) ((LIST)[INDEX])
+-  #define GLITE_SECURITY_GSOAP_LIST_TYPE(NS, LIST) struct NS##__##LIST **
+-#endif
+-#define GLITE_SECURITY_GSOAP_LIST_CREATE(SOAP, CONTAINER, LIST, TYPE, N) GLITE_SECURITY_GSOAP_LIST_CREATE0(SOAP, (CONTAINER)->LIST, (CONTAINER)->__size##LIST, TYPE, N)
+-#define GLITE_SECURITY_GSOAP_LIST_DESTROY(SOAP, CONTAINER, LIST) GLITE_SECURITY_GSOAP_LIST_DESTROY0(SOAP, (CONTAINER)->LIST, (CONTAINER)->__size##LIST)
+-
+-#if GSOAP_VERSION >= 20710
+-  #define GLITE_SECURITY_GSOAP_SET_FIXED(soap,attr,value) \
+-	(attr) = soap_strdup((soap),(value))
+-#else
+-/* XXX unsupported */
+-  #define GLITE_SECURITY_GSOAP_SET_FIXED(soap,attr,value)
+-#endif
+-
+-#endif
+diff --git a/org.glite.lbjp-common.gsoap-plugin/interface/glite_gsplatform.h.in b/org.glite.lbjp-common.gsoap-plugin/interface/glite_gsplatform.h.in
+new file mode 100644
+index 0000000..9f6e03a
+--- /dev/null
++++ b/org.glite.lbjp-common.gsoap-plugin/interface/glite_gsplatform.h.in
+@@ -0,0 +1,29 @@
++/*
++Copyright (c) Members of the EGEE Collaboration. 2004-2010.
++See http://www.eu-egee.org/partners for details on the copyright holders.
++
++Licensed under the Apache License, Version 2.0 (the "License");
++you may not use this file except in compliance with the License.
++You may obtain a copy of the License at
++
++    http://www.apache.org/licenses/LICENSE-2.0
++
++Unless required by applicable law or agreed to in writing, software
++distributed under the License is distributed on an "AS IS" BASIS,
++WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
++See the License for the specific language governing permissions and
++limitations under the License.
++*/
++
++#ifndef GLITE_SECURITY_GSPLATFORM_H
++#define GLITE_SECURITY_GSPLATFORM_H
++
++/*
++ * for basic sanity check
++ *
++ * size of the soap structure can differs with compilation flags
++ * or with C/C++ compilers
++ */
++#define GSOAP_SIZEOF_STRUCT_SOAP @sizeof_struct_soap@
++
++#endif
+diff --git a/org.glite.lbjp-common.gsoap-plugin/project/debian.libglite-lbjp-common-gsoap-plugin-dev.dirs b/org.glite.lbjp-common.gsoap-plugin/project/debian.libglite-lbjp-common-gsoap-plugin-dev.dirs
+new file mode 100644
+index 0000000..479bd8e
+--- /dev/null
++++ b/org.glite.lbjp-common.gsoap-plugin/project/debian.libglite-lbjp-common-gsoap-plugin-dev.dirs
+@@ -0,0 +1,4 @@
++usr/lib/glite-lb
++usr/lib/glite-lb/include
++usr/lib/glite-lb/include/glite
++usr/lib/glite-lb/include/glite/security
+diff --git a/org.glite.lbjp-common.gsoap-plugin/project/debian.libglite-lbjp-common-gsoap-plugin-dev.install b/org.glite.lbjp-common.gsoap-plugin/project/debian.libglite-lbjp-common-gsoap-plugin-dev.install
+index fdd23fd..84b818a 100644
+--- a/org.glite.lbjp-common.gsoap-plugin/project/debian.libglite-lbjp-common-gsoap-plugin-dev.install
++++ b/org.glite.lbjp-common.gsoap-plugin/project/debian.libglite-lbjp-common-gsoap-plugin-dev.install
+@@ -1,4 +1,5 @@
+ usr/include/glite/security/*.h
++usr/lib/glite-lb/include/glite/security/*.h
+ usr/lib/lib*.a
+ usr/lib/lib*.so
+ usr/lib/pkgconfig/*.pc
+diff --git a/org.glite.lbjp-common.gsoap-plugin/project/glite-lbjp-common-gsoap-plugin.spec b/org.glite.lbjp-common.gsoap-plugin/project/glite-lbjp-common-gsoap-plugin.spec
+index 693eaff..30dc661 100644
+--- a/org.glite.lbjp-common.gsoap-plugin/project/glite-lbjp-common-gsoap-plugin.spec
++++ b/org.glite.lbjp-common.gsoap-plugin/project/glite-lbjp-common-gsoap-plugin.spec
+@@ -85,9 +85,14 @@ rm -rf %{buildroot}
+ %files devel
+ %defattr(-,root,root)
+ %doc examples
++%dir %{_libdir}/glite-lb/
++%dir %{_libdir}/glite-lb/include/
++%dir %{_libdir}/glite-lb/include/glite/
++%dir %{_libdir}/glite-lb/include/glite/security/
+ %{_includedir}/glite/security/glite_gscompat.h
+ %{_includedir}/glite/security/glite_gsplugin.h
+ %{_includedir}/glite/security/glite_gsplugin-int.h
++%{_libdir}/glite-lb/include/glite/security/*.h
+ %{_libdir}/libglite_security_gsoap_plugin_*.so
+ %{_libdir}/pkgconfig/*.pc
+ 
+diff --git a/org.glite.lbjp-common.gsoap-plugin/project/gsoap-plugin++.pc.in b/org.glite.lbjp-common.gsoap-plugin/project/gsoap-plugin++.pc.in
+index cf2e8c5..4a93879 100644
+--- a/org.glite.lbjp-common.gsoap-plugin/project/gsoap-plugin++.pc.in
++++ b/org.glite.lbjp-common.gsoap-plugin/project/gsoap-plugin++.pc.in
+@@ -8,4 +8,4 @@ Description: Plugin for gSoap to use glite-security-gss as the communication lay
+ Version: @VERSION@
+ Requires: gsoap++ glite-security-gss
+ Libs: -L${libdir} -lglite_security_gsoap_plugin_ at LIB_SUFFIX@_cxx -lglite_security_gss
+-Cflags: -I${includedir}
++Cflags: -I${includedir} -I${libdir}/glite-lb/include
+diff --git a/org.glite.lbjp-common.gsoap-plugin/project/gsoap-plugin.pc.in b/org.glite.lbjp-common.gsoap-plugin/project/gsoap-plugin.pc.in
+index 55dd6ea..e3c7e4f 100644
+--- a/org.glite.lbjp-common.gsoap-plugin/project/gsoap-plugin.pc.in
++++ b/org.glite.lbjp-common.gsoap-plugin/project/gsoap-plugin.pc.in
+@@ -8,4 +8,4 @@ Description: Plugin for gSoap to use glite-security-gss as the communication lay
+ Version: @VERSION@
+ Requires: gsoap glite-security-gss
+ Libs: -L${libdir} -lglite_security_gsoap_plugin_ at LIB_SUFFIX@_c -lglite_security_gss
+-Cflags: -I${includedir}
++Cflags: -I${includedir} -I${libdir}/glite-lb/include
diff --git a/glite-lbjp-common-gsoap-plugin.spec b/glite-lbjp-common-gsoap-plugin.spec
index a4c3e91..e904755 100644
--- a/glite-lbjp-common-gsoap-plugin.spec
+++ b/glite-lbjp-common-gsoap-plugin.spec
@@ -6,6 +6,9 @@ Summary:        Plugin for gSoap to use glite-security-gss as the communication
 License:        ASL 2.0
 URL:            http://glite.cern.ch
 Source:         http://scientific.zcu.cz/emi/emi.lbjp-common.gsoap-plugin/%{name}-%{version}.tar.gz
+# multilib %%{name}-devel
+# https://github.com/CESNET/glite-lb/commit/793e9e81f78393cdf6dc1eb6473bf14f8d6973a3
+Patch0:         arched-header.patch
 
 BuildRequires:  c-ares-devel
 BuildRequires:  cppunit-devel
@@ -41,6 +44,7 @@ gsoap-plugin.
 
 %prep
 %setup -q
+%patch0 -p2
 
 
 %build
@@ -71,14 +75,22 @@ rm -f %{buildroot}%{_libdir}/*.la
 
 %files devel
 %doc examples
+%dir %{_libdir}/glite-lb/
+%dir %{_libdir}/glite-lb/include/
+%dir %{_libdir}/glite-lb/include/glite/
+%dir %{_libdir}/glite-lb/include/glite/security/
 %{_includedir}/glite/security/glite_gscompat.h
 %{_includedir}/glite/security/glite_gsplugin.h
 %{_includedir}/glite/security/glite_gsplugin-int.h
+%{_libdir}/glite-lb/include/glite/security/*.h
 %{_libdir}/libglite_security_gsoap_plugin_*.so
 %{_libdir}/pkgconfig/*.pc
 
 
 %changelog
+* Thu Jul 03 2014 František Dvořák <valtri at civ.zcu.cz> - 3.2.12-2
+- Patch for multilib %%{name}-devel
+
 * Thu Jun 26 2014 František Dvořák <valtri at civ.zcu.cz> - 3.2.12-1
 - New release 3.2.12 (L&B 4.1.2)
 - Consistent style with buildroot macro


More information about the scm-commits mailing list