summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArturo Borrero Gonzalez <arturo.borrero.glez@gmail.com>2014-01-13 09:37:45 +0000
committerPatrick McHardy <kaber@trash.net>2014-01-13 09:37:45 +0000
commitc54ce2e0fd25d79f5343792c1c620fecdc3b03bc (patch)
treeb687c0ba88f17466dd9bce59fcc6155f60ade5a7
parentb566123b9b60aff8ef21dfa7b21f817261236b1d (diff)
files: replace interpreter during installation
Many systems (for example Debian) don't recognice `#!nft -f' as a valid interpreter. A short way to handle this is to provide the full path to the interpreter in the shebang. That is what this patch does: update the shebang's path during installation. For example, if you are installing under /usr/local, the shebang becomes: #!/usr/local/sbin/nft -f If using --prefix=/, then: #!/sbin/nft -f NOTE: If the shebang in source files are changed in a future, this sed script should be updated as well. Signed-off-by: Arturo Borrero Gonzalez <arturo.borrero.glez@gmail.com> Signed-off-by: Patrick McHardy <kaber@trash.net>
-rw-r--r--Makefile.defs.in1
-rw-r--r--configure.ac1
-rw-r--r--files/Makefile.in1
3 files changed, 3 insertions, 0 deletions
diff --git a/Makefile.defs.in b/Makefile.defs.in
index 502f3748..3fee9c22 100644
--- a/Makefile.defs.in
+++ b/Makefile.defs.in
@@ -5,6 +5,7 @@ LEX = @LEX@
YACC = @YACC@
MKDIR_P = @MKDIR_P@
INSTALL = @INSTALL@
+SED = @SED@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
diff --git a/configure.ac b/configure.ac
index 811d7e22..ca14d835 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,6 +23,7 @@ AC_SUBST([CONFIG_DEBUG])
AC_PROG_CC
AC_PROG_MKDIR_P
AC_PROG_INSTALL
+AC_PROG_SED
AC_CHECK_PROG(CONFIG_MAN, docbook2x-man, y, n)
if test "$CONFIG_MAN" != "y"
diff --git a/files/Makefile.in b/files/Makefile.in
index c3643df2..dc237e23 100644
--- a/files/Makefile.in
+++ b/files/Makefile.in
@@ -2,3 +2,4 @@ install:
@echo -e " INSTALL\tfiles"
$(MKDIR_P) $(DESTDIR)/$(confdir)
$(INSTALL) -m 755 -p $(SUBDIR)nftables/* $(DESTDIR)/$(confdir)/
+ $(SED) -i "s~#\! nft~#\!@sbindir@/nft~" $(DESTDIR)/$(confdir)/*