--- embedaddon/sudo/plugins/sample_group/Makefile.in 2012/05/29 12:26:49 1.1.1.2 +++ embedaddon/sudo/plugins/sample_group/Makefile.in 2012/10/09 09:29:52 1.1.1.3 @@ -24,6 +24,7 @@ devdir = @devdir@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ incdir = $(top_srcdir)/include +cross_compiling = @CROSS_COMPILING@ # Compiler & tools to use CC = @CC@ @@ -44,8 +45,12 @@ CFLAGS = @CFLAGS@ # Flags to pass to the link stage LDFLAGS = @LDFLAGS@ -LTLDFLAGS = @LTLDFLAGS@ +LT_LDFLAGS = @LT_LDFLAGS@ @LT_LDMAP@ @LT_LDOPT@ @LT_LDEXPORTS@ +# PIE flags +PIE_CFLAGS = @PIE_CFLAGS@ +PIE_LDFLAGS = @PIE_LDFLAGS@ + # Where to install things... prefix = @prefix@ exec_prefix = @exec_prefix@ @@ -56,7 +61,13 @@ libexecdir = @libexecdir@ datarootdir = @datarootdir@ localstatedir = @localstatedir@ plugindir = @PLUGINDIR@ + +# File extension, mode and map file to use for shared libraries/objects soext = @SOEXT@ +shlib_mode = @SHLIB_MODE@ +shlib_exp = $(srcdir)/sample_group.exp +shlib_map = sample_group.map +shlib_opt = sample_group.opt # OS dependent defines DEFS = @OSDEFS@ @@ -79,11 +90,17 @@ Makefile: $(srcdir)/Makefile.in .SUFFIXES: .o .c .h .lo .c.lo: - $(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $< + $(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(DEFS) $< -sample_group.la: $(OBJS) $(LT_LIBS) - $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) $(LTLDFLAGS) -o $@ $(OBJS) $(LIBS) -module -export-symbols $(srcdir)/sample_group.sym -avoid-version -rpath $(plugindir) +$(shlib_map): $(shlib_exp) + @awk 'BEGIN { print "{\n\tglobal:" } { print "\t\t"$$0";" } END { print "\tlocal:\n\t\t*;\n};" }' $(shlib_exp) > $@ +$(shlib_opt): $(shlib_exp) + @sed 's/^/+e /' $(shlib_exp) > $@ + +sample_group.la: $(OBJS) $(LT_LIBS) @LT_LDDEP@ + $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) $(LT_LDFLAGS) -o $@ $(OBJS) $(LIBS) -module -avoid-version -rpath $(plugindir) + pre-install: install: install-plugin @@ -98,7 +115,7 @@ install-includes: install-doc: install-plugin: install-dirs sample_group.la - $(INSTALL) -b~ -m 0755 .libs/sample_group$(soext) $(DESTDIR)$(plugindir) + $(INSTALL) -b~ -m $(shlib_mode) .libs/sample_group$(soext) $(DESTDIR)$(plugindir) uninstall: -rm -f $(DESTDIR)$(plugindir)/sample_group$(soext) @@ -122,8 +139,8 @@ cleandir: realclean # Autogenerated dependencies, do not modify getgrent.lo: $(srcdir)/getgrent.c $(top_builddir)/config.h $(incdir)/missing.h - $(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(srcdir)/getgrent.c + $(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(DEFS) $(srcdir)/getgrent.c sample_group.lo: $(srcdir)/sample_group.c $(top_builddir)/config.h \ $(top_srcdir)/compat/stdbool.h $(incdir)/sudo_plugin.h \ $(incdir)/missing.h - $(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(srcdir)/sample_group.c + $(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(DEFS) $(srcdir)/sample_group.c