From 65e0231ddbc5866dd473a02631fc0cdfa19f30e9d798ae02c06baeb5d5798ba9 Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Thu, 3 Sep 2015 15:58:41 +0000 Subject: [PATCH] Accepting request 328062 from OFED:Factory Download URI has changed OBS-URL: https://build.opensuse.org/request/show/328062 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/infinipath-psm?expand=0&rev=5 --- infinipath-non_executable_stack.patch | 31 +++++++++++++++ infinipath-psm-3.2-2_ga8c3e3e_open.tar.gz | 3 -- infinipath-psm-3.3-2_g6f42cdb_open.tar.gz | 3 ++ infinipath-psm-cflags.patch | 48 +++++++++++++++-------- infinipath-psm-executable_headers.patch | 24 ++++++------ infinipath-psm-no_werror.patch | 22 +++++------ infinipath-psm.changes | 23 +++++++++++ infinipath-psm.spec | 18 +++++---- 8 files changed, 121 insertions(+), 51 deletions(-) create mode 100644 infinipath-non_executable_stack.patch delete mode 100644 infinipath-psm-3.2-2_ga8c3e3e_open.tar.gz create mode 100644 infinipath-psm-3.3-2_g6f42cdb_open.tar.gz diff --git a/infinipath-non_executable_stack.patch b/infinipath-non_executable_stack.patch new file mode 100644 index 0000000..fde4b6b --- /dev/null +++ b/infinipath-non_executable_stack.patch @@ -0,0 +1,31 @@ +--- + ipath/ipath_dwordcpy-i386.S | 5 +++++ + ipath/ipath_dwordcpy-x86_64-fast.S | 5 +++++ + 2 files changed, 10 insertions(+) + +Index: ipath/ipath_dwordcpy-i386.S +=================================================================== +--- ipath/ipath_dwordcpy-i386.S.orig 2014-10-10 23:07:04.000000000 +0200 ++++ ipath/ipath_dwordcpy-i386.S 2015-08-19 07:41:52.628711854 +0200 +@@ -56,3 +56,8 @@ ipath_dwordcpy: + mov %eax,%edi + mov %edx,%esi + ret ++ ++// Mark stack unexecutable ++#if defined(__linux__) && defined(__ELF__) ++.section .note.GNU-stack,"",%progbits ++#endif +Index: ipath/ipath_dwordcpy-x86_64-fast.S +=================================================================== +--- ipath/ipath_dwordcpy-x86_64-fast.S.orig 2014-10-10 23:07:04.000000000 +0200 ++++ ipath/ipath_dwordcpy-x86_64-fast.S 2015-08-19 07:41:51.293742890 +0200 +@@ -49,3 +49,8 @@ ipath_dwordcpy: + rep + movsd + ret ++ ++// Mark stack unexecutable ++#if defined(__linux__) && defined(__ELF__) ++.section .note.GNU-stack,"",%progbits ++#endif diff --git a/infinipath-psm-3.2-2_ga8c3e3e_open.tar.gz b/infinipath-psm-3.2-2_ga8c3e3e_open.tar.gz deleted file mode 100644 index 5afead7..0000000 --- a/infinipath-psm-3.2-2_ga8c3e3e_open.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:18f96e1412ec62c775663396f81232140b12d4f5f9539bbf86d6763f0f3de429 -size 363401 diff --git a/infinipath-psm-3.3-2_g6f42cdb_open.tar.gz b/infinipath-psm-3.3-2_g6f42cdb_open.tar.gz new file mode 100644 index 0000000..a494783 --- /dev/null +++ b/infinipath-psm-3.3-2_g6f42cdb_open.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60e244f1594bd3b35d0c6dd9bf6594c4d2371ecef72822d84bfefe80997de533 +size 390708 diff --git a/infinipath-psm-cflags.patch b/infinipath-psm-cflags.patch index f41fe84..14e8b71 100644 --- a/infinipath-psm-cflags.patch +++ b/infinipath-psm-cflags.patch @@ -1,21 +1,35 @@ --- - buildflags.mak | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) + buildflags.mak | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) Index: buildflags.mak =================================================================== ---- buildflags.mak.orig 2014-01-08 22:33:34.000000000 +0100 -+++ buildflags.mak 2014-01-17 14:58:34.775548741 +0100 -@@ -108,10 +108,10 @@ else - endif - else - ifeq (${CCARCH},gcc) -- CFLAGS += $(BASECFLAGS) -Wno-strict-aliasing -+ CFLAGS += $(BASECFLAGS) $(RPM_OPT_FLAGS) - else - ifeq (${CCARCH},gcc4) -- CFLAGS += $(BASECFLAGS) -+ CFLAGS += $(BASECFLAGS) $(RPM_OPT_FLAGS) - else - $(error Unknown compiler arch "${CCARCH}") - endif # gcc4 +--- buildflags.mak.orig 2014-10-10 23:07:04.000000000 +0200 ++++ buildflags.mak 2015-05-29 13:40:24.855086640 +0200 +@@ -61,7 +61,7 @@ ifdef SCIF_ROOT_DIR + endif + + PSM_HAVE_SCIF ?= $(shell printf '\#include \nint main(void){return(0);}\n' | \ +- $(CC) $(CFLAGS) $(LDFLAGS) -x c - -o /dev/null &> /dev/null && echo 1 || echo 0) ++ $(CC) $(CFLAGS) $(RPM_OPT_FLAGS) $(LDFLAGS) -x c - -o /dev/null &> /dev/null && echo 1 || echo 0) + + ifeq (1,$(PSM_HAVE_SCIF)) + SCIF_INCLUDE_FLAGS += -DPSM_HAVE_SCIF=1 +@@ -72,7 +72,7 @@ WERROR := -Werror + INCLUDES := -I. -I$(top_srcdir)/include -I$(top_srcdir)/mpspawn \ + -I$(top_srcdir)/include/$(os)-$(arch) $(SCIF_INCLUDE_FLAGS) + BASECFLAGS += $(BASE_FLAGS) $(if $(MIC:0=),$(if $(filter $(CC),icc),-mmic,-D__MIC__)) \ +- -Wall $(WERROR) $(if $(MIC:0=),-Wno-unused) -fpic -fPIC -D_GNU_SOURCE \ ++ -Wall $(WERROR) $(RPM_OPT_FLAGS) $(if $(MIC:0=),-Wno-unused) -fpic -fPIC -D_GNU_SOURCE \ + $(if $(filter $(CC),icc),,-funwind-tables) $(if $(PSM_PROFILE:0=),-DPSM_PROFILE) \ + ${IPATH_CFLAGS} + ASFLAGS += $(BASE_FLAGS) $(if $(MIC:0=),$(if $(filter $(CC),icc),-mmic,-D__MIC__)) -g3 -fpic +@@ -85,8 +85,6 @@ LDFLAGS += $(SCIF_LINK_FLAGS) + ifneq (,${PSM_DEBUG}) + BASECFLAGS += -O -g3 -DPSM_DEBUG $(if $(filter $(CC),icc),,-funit-at-a-time) \ + -Wp,-D_FORTIFY_SOURCE=2 +-else +- BASECFLAGS += -O3 -g3 + endif + ifeq (1,${PSM_USE_SYS_UUID}) + BASECFLAGS += -DPSM_USE_SYS_UUID diff --git a/infinipath-psm-executable_headers.patch b/infinipath-psm-executable_headers.patch index 8cde504..85f38c1 100644 --- a/infinipath-psm-executable_headers.patch +++ b/infinipath-psm-executable_headers.patch @@ -12,16 +12,16 @@ Install headers as normal files. Index: Makefile =================================================================== ---- Makefile.orig 2014-01-17 14:54:38.418004126 +0100 -+++ Makefile 2014-01-17 14:55:35.516686291 +0100 -@@ -149,8 +149,8 @@ install: all - (cd ${DESTDIR}${INSTALL_LIB_TARG} ; \ +--- Makefile.orig 2015-05-29 11:12:00.395739876 +0200 ++++ Makefile 2015-05-29 11:13:00.555359945 +0200 +@@ -188,8 +188,8 @@ install: all ln -sf ${TARGLIB}.so.${MAJOR}.${MINOR} ${TARGLIB}.so.${MAJOR} ; \ - ln -sf ${TARGLIB}.so.${MAJOR} ${TARGLIB}.so) -- install -D psm.h ${DESTDIR}/usr/include/psm.h -- install -D psm_mq.h ${DESTDIR}/usr/include/psm_mq.h -+ install -D -m 644 psm.h ${DESTDIR}/usr/include/psm.h -+ install -D -m 644 psm_mq.h ${DESTDIR}/usr/include/psm_mq.h - - specfile: - sed \ + ln -sf ${TARGLIB}.so.${MAJOR} ${TARGLIB}.so) ; \ + if [ X$(MIC) != X1 ]; then \ +- install -D psm.h ${DESTDIR}/usr/include/psm.h ; \ +- install -D psm_mq.h ${DESTDIR}/usr/include/psm_mq.h ; \ ++ install -D -m 644 psm.h ${DESTDIR}/usr/include/psm.h ; \ ++ install -D -m 644 psm_mq.h ${DESTDIR}/usr/include/psm_mq.h ; \ + else \ + filelist=/opt/intel/mic/psm/psm.filelist ; \ + sed -e 's!%IPATHMAJOR%!$(IPATH_LIB_MAJOR)!g' \ diff --git a/infinipath-psm-no_werror.patch b/infinipath-psm-no_werror.patch index 46c8fd7..dc9d6a0 100644 --- a/infinipath-psm-no_werror.patch +++ b/infinipath-psm-no_werror.patch @@ -4,14 +4,14 @@ Index: buildflags.mak =================================================================== ---- buildflags.mak.orig 2014-01-17 14:58:19.301905910 +0100 -+++ buildflags.mak 2014-01-17 14:58:19.318905518 +0100 -@@ -71,7 +71,7 @@ ASFLAGS += $(BASE_FLAGS) - - WERROR := -Werror - INCLUDES := -I. -I$(top_srcdir)/include -I$(top_srcdir)/mpspawn -I$(top_srcdir)/include/$(os)-$(arch) --BASECFLAGS +=-Wall $(WERROR) -+BASECFLAGS +=-Wall -Wno-attributes - ifneq (,${PSM_DEBUG}) - BASECFLAGS += -O0 -g3 -DPSM_DEBUG -funit-at-a-time -Wp,-D_FORTIFY_SOURCE=2 - else +--- buildflags.mak.orig 2015-05-29 11:10:57.686178275 +0200 ++++ buildflags.mak 2015-05-29 11:11:35.955300481 +0200 +@@ -72,7 +72,7 @@ WERROR := -Werror + INCLUDES := -I. -I$(top_srcdir)/include -I$(top_srcdir)/mpspawn \ + -I$(top_srcdir)/include/$(os)-$(arch) $(SCIF_INCLUDE_FLAGS) + BASECFLAGS += $(BASE_FLAGS) $(if $(MIC:0=),$(if $(filter $(CC),icc),-mmic,-D__MIC__)) \ +- -Wall $(WERROR) $(RPM_OPT_FLAGS) $(if $(MIC:0=),-Wno-unused) -fpic -fPIC -D_GNU_SOURCE \ ++ -Wall -Wno-attributes $(RPM_OPT_FLAGS) $(if $(MIC:0=),-Wno-unused) -fpic -fPIC -D_GNU_SOURCE \ + $(if $(filter $(CC),icc),,-funwind-tables) $(if $(PSM_PROFILE:0=),-DPSM_PROFILE) \ + ${IPATH_CFLAGS} + ASFLAGS += $(BASE_FLAGS) $(if $(MIC:0=),$(if $(filter $(CC),icc),-mmic,-D__MIC__)) -g3 -fpic diff --git a/infinipath-psm.changes b/infinipath-psm.changes index 855b51c..b6968e1 100644 --- a/infinipath-psm.changes +++ b/infinipath-psm.changes @@ -1,3 +1,26 @@ +------------------------------------------------------------------- +Mon Aug 31 07:40:43 CEST 2015 - pth@suse.de + +- Fix source URI. + +------------------------------------------------------------------- +Tue Aug 25 10:11:14 CEST 2015 - pth@suse.de + +- Set libdir when calling make for installing. +- Add infinipath-non_executable_stack.patch to mark the stack + unexecutable (bsc#942689). +- Remove bogus line in spec file. + +------------------------------------------------------------------- +Wed Jun 10 12:49:19 CEST 2015 - pth@suse.de + +- Fix name of libdir. + +------------------------------------------------------------------- +Fri May 29 11:13:39 CEST 2015 - pth@suse.de + +- Adapt patches to changed sources. + ------------------------------------------------------------------- Fri Oct 31 15:09:00 UTC 2014 - Led diff --git a/infinipath-psm.spec b/infinipath-psm.spec index 054ffb7..2db5232 100644 --- a/infinipath-psm.spec +++ b/infinipath-psm.spec @@ -1,7 +1,7 @@ # # spec file for package infinipath-psm # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,22 +16,24 @@ # -%define my_release 2_ga8c3e3e_open +%define my_release -2_g6f42cdb Name: infinipath-psm -Version: 3.2 +Version: 3.3 Release: 0 Summary: QLogic PSM Libraries License: BSD-2-Clause or GPL-2.0 Group: Productivity/Networking/System Url: http://www.qlogic.com/ -Source0: %{name}-%{version}-%{my_release}.tar.gz +Source0: http://downloads.openfabrics.org/downloads/infinipath-psm/%{name}-%{version}%{my_release}_open.tar.gz # PATCH-FIX-UPSTREAM infinipath-psm-cflags.patch pth@suse.de Patch0: infinipath-psm-cflags.patch # PATCH-FIX-UPSTREAM infinipath-psm-no_werror.patch pth@suse.de Patch1: infinipath-psm-no_werror.patch # PATCH-FIX-UPSTREAM infinipath-psm-executable_headers.patch pth@suse.de Patch3: infinipath-psm-executable_headers.patch +# PATCH-FIX-UPSTREAM infinipath-non_executable_stack.patch pth@suse.de +Patch4: infinipath-non_executable_stack.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Conflicts: infinipath-libs ExclusiveArch: %ix86 x86_64 @@ -69,26 +71,26 @@ necessary to implement higher level communications interfaces in parallel environments. %prep -%setup -q -n infinipath-psm-%{version}-%{my_release} +%setup -q -n infinipath-psm-%{version}%{my_release}_open %patch0 %patch1 %patch3 +%patch4 %build %if 0%{?suse_version} >= 1150 export RPM_OPT_FLAGS="%{optflags} -Wno-unused-but-set-variable" %endif -make USE_PSM_UUID=1 %{?_smp_mflags} +make USE_PSM_UUID=1 libdir=%{_libdir} %{?_smp_mflags} %install -make DESTDIR=%{buildroot} install +make USE_PSM_UUID=1 libdir=%{_libdir} DESTDIR=%{buildroot} install %post -n %{lname} -p /sbin/ldconfig %postun -n %{lname} -p /sbin/ldconfig %files -n %{lname} %defattr(-,root,root,-) -%doc COPYING %{_libdir}/libpsm_infinipath.so.* %{_libdir}/libinfinipath.so.*