>On Wed Jul 9, 2014 01:54:36 Tzafrir Cohen wrote:
>> On Mon, Jul 07, 2014 at 12:31:50PM +0300, Paul Chitescu wrote:
>> > Hi!
>> >
>> > Can't this FTBFS be fixed by the patches I submitted?
>>
>> Thanks. Applied them. While you're here, what do you think about
>> https://bugs.debian.org/714771 ?
>>
>> Someone went and tried crashing all executables on a Debian system. It
>> turned out that yate modules crashed immediately when executed.
>> Resolution; they should not be executable.
>>
>> I can reset the executable bit in the Debian pacaging, but I guess this
>> is better fixed in the Makefile. It seems that modules are install using
>> INSTALL (install) or INSTALL_D (install -d). Should explicit permissions
>> be added?
>
>I looked at the permissions of libraries on Debian and Ubuntu systems and it
>appears that all libraries are not executable.
>
>So the permission change should apply not only to Yate modules but also to
>various libyate*.so* it installs.
>
>What do other Debian packages use to install their libraries?
>
>Paul

Never mind, fixed in SVN Rev. 5866.

Configure script should detect properly on Debian and Ubuntu else may need to 
specify --disable-lib-exec

Patch attached but may not apply cleanly to older versions.

Paul

Index: Makefile.in
===================================================================
--- Makefile.in	(revision 5865)
+++ Makefile.in	(working copy)
@@ -214,7 +214,7 @@ install-noconf: all
 		f=`readlink "$$i"` ; \
 		ln -sf "$$f" "$(DESTDIR)$(libdir)/$$i" ; \
 	    else \
-		install $$i "$(DESTDIR)$(libdir)/" ; \
+		install @INSTALL_L@ $$i "$(DESTDIR)$(libdir)/" ; \
 	    fi \
 	done
 	@mkdir -p "$(DESTDIR)$(bindir)/" && \
Index: configure.in
===================================================================
--- configure.in	(revision 5865)
+++ configure.in	(working copy)
@@ -1559,6 +1559,31 @@ fi
 fi
 
 
+INSTALL_L=""
+AC_ARG_ENABLE(lib-exec,AC_HELP_STRING([--enable-lib-exec],[Executable libraries and modules (default: auto)]),want_lib_exec=$enableval,want_lib_exec=auto)
+case "x$want_lib_exec" in
+    xyes)
+	;;
+    xno)
+	INSTALL_L="-m 0644"
+	;;
+    xauto)
+	AC_MSG_CHECKING([if shared libraries should be executable])
+	if stat -L "/usr/$ARCHLIB/libm.so" 2>/dev/null | grep -q '(0644/'; then
+	    want_lib_exec=no
+	    INSTALL_L="-m 0644"
+	else
+	    want_lib_exec=yes
+	fi
+	AC_MSG_RESULT([$want_lib_exec])
+	;;
+    *)
+	AC_ERROR([Invalid argument passed to --enable-lib-exec])
+	;;
+esac
+AC_SUBST(INSTALL_L)
+
+
 INSTALL_D="install -D"
 CFLAGS=`echo "$CFLAGS" | sed 's/\(^\| *\)-g[[0-9]]*//' | sed 's/[[[:space:]]]\{2,\}/ /g'`
 MODULE_CFLAGS="-fno-exceptions -fPIC $HAVE_GCC_FORMAT_CHECK $HAVE_BLOCK_RETURN"
Index: clients/qt4/Makefile.in
===================================================================
--- clients/qt4/Makefile.in	(revision 5865)
+++ clients/qt4/Makefile.in	(working copy)
@@ -81,7 +81,7 @@ install: all
 		f=`readlink "../../$$i"` ; \
 		ln -sf "$$f" "$(DESTDIR)$(libdir)/$$i" ; \
 	    else \
-		install ../../$$i "$(DESTDIR)$(libdir)/" ; \
+		install @INSTALL_L@ ../../$$i "$(DESTDIR)$(libdir)/" ; \
 	    fi \
 	done; \
 	mkdir -p "$(DESTDIR)$(incdir)" && \
Index: modules/Makefile.in
===================================================================
--- modules/Makefile.in	(revision 5865)
+++ modules/Makefile.in	(working copy)
@@ -235,7 +235,7 @@ install: all do-install
 	    mkdir -p "$(DESTDIR)$(moddir)/$$i" ; \
 	done; \
 	for i in $(PROGS) ; do \
-	    @INSTALL_D@ "$$i" "$(DESTDIR)$(moddir)/$$i" ; \
+	    @INSTALL_D@ @INSTALL_L@ "$$i" "$(DESTDIR)$(moddir)/$$i" ; \
 	done;
 
 .PHONY: uninstall

Reply via email to