summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStepan Kasal2007-05-15 20:46:03 +0200
committerKarel Zak2007-05-16 11:43:29 +0200
commit3f3c9c909a41611ac5d2a9c151290296aa30a97f (patch)
treeedecba12e0a74bf4dadf9c7216db0ae8ac9dfec9
parentbuild-sys: do not play with DEFS, use AM_CPPFLAGS (diff)
downloadkernel-qcow2-util-linux-3f3c9c909a41611ac5d2a9c151290296aa30a97f.tar.gz
kernel-qcow2-util-linux-3f3c9c909a41611ac5d2a9c151290296aa30a97f.tar.xz
kernel-qcow2-util-linux-3f3c9c909a41611ac5d2a9c151290296aa30a97f.zip
build-sys: add SUID_LDFLAGS
Programs which are usually installed with the setuid bit do need their own CFLAGS and LDFLAGS. SUID_LDFLAGS is analogic to SUID_CFLAGS. Signed-off-by: Stepan Kasal <skasal@redhat.com>
-rw-r--r--README4
-rw-r--r--configure.ac1
-rw-r--r--login-utils/Makefile.am4
-rw-r--r--misc-utils/Makefile.am1
-rw-r--r--mount/Makefile.am2
5 files changed, 10 insertions, 2 deletions
diff --git a/README b/README
index 9d13336d5..8f9364f53 100644
--- a/README
+++ b/README
@@ -40,10 +40,10 @@ COMPILATION:
See the INSTALL file for more details.
Notes:
- * use SUID_CFLAGS when you want to define special compiler options
+ * use SUID_CFLAGS and SUID_LDFLAGS when you want to define special compiler options
for typical suid programs, for example:
- SUID_CFLAGS="-fpic" ./configure
+ SUID_CFLAGS="-fpie" SUID_LDFLAGS="-pie" ./configure
Now this feature is supported for chfn, chsh, newgrp, write,
mount and umount.
diff --git a/configure.ac b/configure.ac
index 8b62decf1..8740086df 100644
--- a/configure.ac
+++ b/configure.ac
@@ -400,6 +400,7 @@ fi
AC_SUBST([SUID_CFLAGS])
+AC_SUBST([SUID_LDFLAGS])
LIBS=""
diff --git a/login-utils/Makefile.am b/login-utils/Makefile.am
index 648cf17c4..f66982175 100644
--- a/login-utils/Makefile.am
+++ b/login-utils/Makefile.am
@@ -55,6 +55,10 @@ chfn_CFLAGS = $(SUID_CFLAGS) $(AM_CFLAGS)
chsh_CFLAGS = $(SUID_CFLAGS) $(AM_CFLAGS)
newgrp_CFLAGS = $(SUID_CFLAGS) $(AM_CFLAGS)
+chfn_LDFLAGS = $(SUID_LDFLAGS) $(AM_LDFLAGS)
+chsh_LDFLAGS = $(SUID_LDFLAGS) $(AM_LDFLAGS)
+newgrp_LDFLAGS = $(SUID_LDFLAGS) $(AM_LDFLAGS)
+
if NEED_LIBCRYPT
chfn_LDADD += -lcrypt
chsh_LDADD += -lcrypt
diff --git a/misc-utils/Makefile.am b/misc-utils/Makefile.am
index 7775bea73..a772a28bd 100644
--- a/misc-utils/Makefile.am
+++ b/misc-utils/Makefile.am
@@ -65,6 +65,7 @@ if BUILD_WRITE
usrbinexec_PROGRAMS += write
man_MANS += write.1
write_CFLAGS = $(SUID_CFLAGS) $(AM_CFLAGS)
+write_LDFLAGS = $(SUID_LDFLAGS) $(AM_LDFLAGS)
if USE_TTY_GROUP
install-exec-hook::
diff --git a/mount/Makefile.am b/mount/Makefile.am
index e52ec6fa9..cf7b00d26 100644
--- a/mount/Makefile.am
+++ b/mount/Makefile.am
@@ -20,6 +20,7 @@ mount_SOURCES = mount.c fstab.c sundries.c xmalloc.c realpath.c mount_mntent.c \
mount_LDADD = $(top_srcdir)/lib/libenv.a $(top_srcdir)/lib/libsetproctitle.a
mount_CFLAGS = $(SUID_CFLAGS) $(AM_CFLAGS)
+mount_LDFLAGS = $(SUID_LDFLAGS) $(AM_LDFLAGS)
umount_SOURCES = umount.c fstab.c sundries.c xmalloc.c realpath.c mount_mntent.c \
getusername.c get_label_uuid.c mount_by_label.c mount_blkid.c \
@@ -28,6 +29,7 @@ umount_SOURCES = umount.c fstab.c sundries.c xmalloc.c realpath.c mount_mntent.c
umount_LDADD = $(top_srcdir)/lib/libenv.a
umount_CFLAGS = $(SUID_CFLAGS) $(AM_CFLAGS)
+umount_LDFLAGS = $(SUID_LDFLAGS) $(AM_LDFLAGS)
swapon_SOURCES = swapon.c xmalloc.c \
get_label_uuid.c mount_by_label.c mount_blkid.c \