]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
build-sys: add CFLAGS and LDFLAGS for daemons and shared libs
authorKarel Zak <kzak@redhat.com>
Tue, 27 Aug 2013 08:02:04 +0000 (10:02 +0200)
committerKarel Zak <kzak@redhat.com>
Tue, 27 Aug 2013 09:49:01 +0000 (11:49 +0200)
This is necessary for paranoid security guys who believe that things
like "-Wl,-z,relro" or "-Wl,-z,bind_now" is a way how to make the
world a safer place...

Signed-off-by: Karel Zak <kzak@redhat.com>
Documentation/howto-compilation.txt
configure.ac
libblkid/src/Makemodule.am
libmount/src/Makemodule.am
libuuid/src/Makemodule.am
misc-utils/Makemodule.am

index bebe0d257868d4abfd07f544b98b469604d88e3a..4b392461d49a2c779c5d302d524bc1c2ce68e080 100644 (file)
@@ -27,12 +27,12 @@ Compiling
        The SUID_* feature is currently supported for chfn, chsh,
        newgrp, su, write, mount, and umount.
 
-       Preferred compilation options for developers, when
-       using gcc, are:
+       Use DAEMON_CFLAGS and DAEMON_LDFLAGS when you want to define
+       special compiler options for daemons; supported for uuidd.
 
-       export CFLAGS="-Wmissing-parameter-type -Wsign-compare
-       -Wtype-limits -Wuninitialized -Wunused-parameter
-       -Wunused-but-set-parameter -fno-common"
+       Use SOLIB_CFLAGS and SOLIB_LDFLAGS when you want to define
+       special compiler options for shared libraries; supported for
+       libmount, libblkid and libuuid.
 
        FIXME: add notes about klib and uClib.
 
index 982606eb6ebea0acfc951c180f756f0fb48ea67f..a0a72fd2979ecbfa792d05a4107a877535212c99 100644 (file)
@@ -1473,6 +1473,16 @@ AC_ARG_VAR([SUID_CFLAGS],
 AC_ARG_VAR([SUID_LDFLAGS],
           [LDFLAGS used for binaries which are usually with the suid bit])
 
+AC_ARG_VAR([DAEMON_CFLAGS],
+          [CFLAGS used for binaries which are usually executed as daemons])
+AC_ARG_VAR([DAEMON_LDFLAGS],
+          [LDFLAGS used for binaries which are usually executed as daemons])
+
+AC_ARG_VAR([SOLIB_CFLAGS],
+          [CFLAGS used for shared libraries])
+AC_ARG_VAR([SOLIB_LDFLAGS],
+          [LDFLAGS used for shared libraries])
+
 LIBS=""
 
 
index 04d8621001c1a83ddce825986ee5e12267be9c93..15639768a98e3fd41e343d592792eead7d520067 100644 (file)
@@ -113,6 +113,7 @@ libblkid_la_LIBADD = libcommon.la
 
 
 libblkid_la_CFLAGS = \
+       $(SOLIB_CFLAGS) \
        -I$(ul_libblkid_incdir) \
        -I$(top_srcdir)/libblkid/src
 
@@ -128,6 +129,7 @@ libblkid_la_DEPENDENCIES = \
        libblkid/src/blkid.h.in
 
 libblkid_la_LDFLAGS = \
+       $(SOLIB_LDFLAGS) \
        -Wl,--version-script=$(top_srcdir)/libblkid/src/blkid.sym \
        -version-info $(LIBBLKID_VERSION_INFO)
 
index 494e02a34d4351823c2f8ae40d8e03021bef6ee4..8ef07e5519b469990e8e6286281d05667bc38af9 100644 (file)
@@ -33,6 +33,7 @@ nodist_libmount_la_SOURCES = libmount/src/mountP.h
 libmount_la_LIBADD = libcommon.la libblkid.la $(SELINUX_LIBS)
 
 libmount_la_CFLAGS = \
+       $(SOLIB_CFLAGS) \
        -I$(ul_libblkid_incdir) \
        -I$(ul_libmount_incdir) \
        -I$(top_srcdir)/libmount/src
@@ -43,6 +44,7 @@ libmount_la_DEPENDENCIES = \
        libmount/src/libmount.h.in
 
 libmount_la_LDFLAGS = \
+       $(SOLIB_LDFLAGS) \
        -Wl,--version-script=$(top_srcdir)/libmount/src/libmount.sym \
        -version-info $(LIBMOUNT_VERSION_INFO)
 
index 73f1ba9570a879450e0c3a7127fdbefacef367a8..a20cb4ccb6f15757927706e23e2426677078a2f1 100644 (file)
@@ -29,9 +29,14 @@ libuuid_la_SOURCES = \
 
 libuuid_la_DEPENDENCIES = libuuid/src/uuid.sym
 libuuid_la_LIBADD       = $(SOCKET_LIBS)
-libuuid_la_CFLAGS       = -I$(ul_libuuid_incdir) -Ilibuuid/src
+
+libuuid_la_CFLAGS = \
+        $(SOLIB_CFLAGS) \
+        -I$(ul_libuuid_incdir) \
+        -Ilibuuid/src
 
 libuuid_la_LDFLAGS = \
+       $(SOLIB_LDFLAGS) \
        -Wl,--version-script=$(top_srcdir)/libuuid/src/uuid.sym \
        -version-info $(LIBUUID_VERSION_INFO)
 
index dc0686b73b8b51361f162556bff7ac3dc468fcfb..fcfec7bac404c95207562ec80ed0747e4fecf4f0 100644 (file)
@@ -77,7 +77,8 @@ if BUILD_UUIDD
 usrsbin_exec_PROGRAMS += uuidd
 dist_man_MANS += misc-utils/uuidd.8
 uuidd_LDADD = $(LDADD) libuuid.la libcommon.la
-uuidd_CFLAGS = $(AM_CFLAGS) -I$(ul_libuuid_incdir)
+uuidd_CFLAGS = $(DAEMON_CFLAGS) $(AM_CFLAGS) -I$(ul_libuuid_incdir)
+uuidd_LDFLAGS = $(DAEMON_LDFLAGS) $(AM_LDFLAGS)
 uuidd_SOURCES = misc-utils/uuidd.c
 if USE_SOCKET_ACTIVATION
 uuidd_SOURCES += misc-utils/sd-daemon.c misc-utils/sd-daemon.h