diff options
Diffstat (limited to 'examples/loadables/Makefile.in')
-rw-r--r-- | examples/loadables/Makefile.in | 180 |
1 files changed, 104 insertions, 76 deletions
diff --git a/examples/loadables/Makefile.in b/examples/loadables/Makefile.in index 9773144..799b4cf 100644 --- a/examples/loadables/Makefile.in +++ b/examples/loadables/Makefile.in @@ -1,8 +1,6 @@ # # Simple makefile for the sample loadable builtins # -# This includes some boilerplate definitions added by configure, but will -# still need hand-editing # # Include some boilerplate Gnu makefile definitions. prefix = @prefix@ @@ -22,123 +20,148 @@ VPATH = .:@srcdir@ CC = @CC@ RM = rm -f -SHELL = /bin/sh - -# SunOS 4 -#PICFLAG = -pic -# Some versions of gcc, esp. on NetBSD and FreeBSD -PICFLAG = -fpic -# Linux -- could also be -fpic -#PICFLAG = -fPIC -# SunOS 5 -#PICFLAG = -K pic -# SVR4, SVR4.2, Irix -#PICFLAG = -K PIC -# BSD/OS 2.1, BSD/OS 3.x -#PICFLAG = -# AIX 4.2 -#PICFLAG = -K - -# SunOS 4, BSD/OS 2.1, BSD/OS 3.x, SVR4.2, SVR4, Linux, AIX 4.2, etc. -LD = ld -# SunOS 5, Linux -#LD = ${CC} - -# SunOS 4 -#LDOPT = -assert pure-text -# OSF/1, Digital UNIX -#LDOPT = -shared -soname $@ -expect_unresolved '*' -# SunOS 5 using sun cc -#LDOPT = -dy -z text -G -i -h $@ -# SunOS 5 using gcc with Sun ld -#LDOPT = -shared -Wl,-dy -Wl,-G -Wl,-i -# SVR4, SVR4.2 -#LDOPT = -dy -z text -G -h $@ -# NetBSD, FreeBSD -- might also need -r -LDOPT = -x -Bshareable -# Linux -#LDOPT = -shared -# BSD/OS 2.1, BSD/OS 3.x -#LDOPT = -r -# AIX 4.2 -#LDOPT = -bdynamic -bnoentry -bexpall -G - -# other libraries to link the shared object against -# BSD/OS 2.1 -#LDLIBS = -lc_s.2.1.0 -# BSD/OS 3.0, BSD/OS 3.1 -#LDLIBS = -lc_s.3.0.0 +SHELL = @MAKE_SHELL@ +host_os = @host_os@ +host_cpu = @host_cpu@ +host_vendor = @host_vendor@ + +CFLAGS = @CFLAGS@ + +# +# These values are generated for configure by ${topdir}/support/shobj-conf. +# If your system is not supported by that script, but includes facilities for +# dynamic loading of shared objects, please update the script and send the +# changes to bash-maintainers@gnu.org. +# +SHOBJ_CC = @SHOBJ_CC@ +SHOBJ_CFLAGS = @SHOBJ_CFLAGS@ +SHOBJ_LD = @SHOBJ_LD@ +SHOBJ_LDFLAGS = @SHOBJ_LDFLAGS@ +SHOBJ_XLDFLAGS = @SHOBJ_XLDFLAGS@ +SHOBJ_LIBS = @SHOBJ_LIBS@ +SHOBJ_STATUS = @SHOBJ_STATUS@ INC = -I. -I.. -I$(topdir) -I$(topdir)/lib -I$(topdir)/builtins \ -I$(BUILD_DIR) -I$(BUILD_DIR)/lib -I$(BUILD_DIR)/builtins .c.o: - $(CC) $(PICFLAG) $(CFLAGS) $(INC) -c -o $@ $< + $(SHOBJ_CC) $(SHOBJ_CFLAGS) $(CFLAGS) $(INC) -c -o $@ $< ALLPROG = print truefalse sleep pushd finfo logname basename dirname \ - tty pathchk tee head rmdir sprintf + tty pathchk tee head mkdir rmdir sprintf printenv id whoami \ + uname sync push ln unlink OTHERPROG = necho getconf hello cat -all: $(ALLPROG) -others: $(OTHERPROG) +all: $(SHOBJ_STATUS) + +supported: $(ALLPROG) +others: $(OTHERPROG) + +unsupported: + @echo "Your system (${host_os}) is not supported by the" + @echo "${topdir}/support/shobj-conf script." + @echo "If your operating system provides facilities for dynamic" + @echo "loading of shared objects using the dlopen(3) interface," + @echo "please update the script and re-run configure. + @echo "Please send the changes you made to bash-maintainers@gnu.org" + @echo "for inclusion in future bash releases." -everything: all others +everything: supported others sprintf: sprintf.o - $(LD) $(LDOPT) -o $@ sprintf.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ sprintf.o $(SHOBJ_LIBS) print: print.o - $(LD) $(LDOPT) -o $@ print.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ print.o $(SHOBJ_LIBS) necho: necho.o - $(LD) $(LDOPT) -o $@ necho.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ necho.o $(SHOBJ_LIBS) getconf: getconf.o - $(LD) $(LDOPT) -o $@ getconf.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ getconf.o $(SHOBJ_LIBS) hello: hello.o - $(LD) $(LDOPT) -o $@ hello.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ hello.o $(SHOBJ_LIBS) truefalse: truefalse.o - $(LD) $(LDOPT) -o $@ truefalse.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ truefalse.o $(SHOBJ_LIBS) sleep: sleep.o - $(LD) $(LDOPT) -o $@ sleep.o $(LDLIBS) - -pushd: pushd.o - $(LD) $(LDOPT) -o $@ pushd.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ sleep.o $(SHOBJ_LIBS) finfo: finfo.o - $(LD) $(LDOPT) -o $@ finfo.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ finfo.o $(SHOBJ_LIBS) cat: cat.o - $(LD) $(LDOPT) -o $@ cat.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ cat.o $(SHOBJ_LIBS) logname: logname.o - $(LD) $(LDOPT) -o $@ logname.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ logname.o $(SHOBJ_LIBS) basename: basename.o - $(LD) $(LDOPT) -o $@ basename.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ basename.o $(SHOBJ_LIBS) dirname: dirname.o - $(LD) $(LDOPT) -o $@ dirname.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ dirname.o $(SHOBJ_LIBS) tty: tty.o - $(LD) $(LDOPT) -o $@ tty.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ tty.o $(SHOBJ_LIBS) pathchk: pathchk.o - $(LD) $(LDOPT) -o $@ pathchk.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ pathchk.o $(SHOBJ_LIBS) tee: tee.o - $(LD) $(LDOPT) -o $@ tee.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ tee.o $(SHOBJ_LIBS) + +mkdir: mkdir.o + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ mkdir.o $(SHOBJ_LIBS) rmdir: rmdir.o - $(LD) $(LDOPT) -o $@ rmdir.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ rmdir.o $(SHOBJ_LIBS) head: head.o - $(LD) $(LDOPT) -o $@ head.o $(LDLIBS) + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ head.o $(SHOBJ_LIBS) + +printenv: printenv.o + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ printenv.o $(SHOBJ_LIBS) + +id: id.o + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ id.o $(SHOBJ_LIBS) + +whoami: whoami.o + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ whoami.o $(SHOBJ_LIBS) + +uname: uname.o + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ uname.o $(SHOBJ_LIBS) + +sync: sync.o + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ sync.o $(SHOBJ_LIBS) + +push: push.o + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ push.o $(SHOBJ_LIBS) + +ln: ln.o + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ ln.o $(SHOBJ_LIBS) + +unlink: unlink.o + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ unlink.o $(SHOBJ_LIBS) + + +# pushd is a special case. We use the same source that the builtin version +# uses, with special compilation options. +# +pushd.c: ${topdir}/builtins/pushd.def + $(RM) $@ + ${BUILD_DIR}/builtins/mkbuiltins -D ${topdir}/builtins ${topdir}/builtins/pushd.def + +pushd.o: pushd.c + $(RM) $@ + $(SHOBJ_CC) -DPUSHD_AND_POPD -DLOADABLE_BUILTIN $(SHOBJ_CFLAGS) $(CFLAGS) $(INC) -c -o $@ $< + +pushd: pushd.o + $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ pushd.o $(SHOBJ_LIBS) clean: $(RM) $(ALLPROG) $(OTHERPROG) *.o @@ -146,12 +169,11 @@ clean: mostlyclean: clean distclean maintainer-clean: clean - $(RM) Makefile + $(RM) Makefile pushd.c print.o: print.c truefalse.o: truefalse.c sleep.o: sleep.c -pushd.o: pushd.c finfo.o: finfo.c logname.o: logname.c basename.o: basename.c @@ -166,4 +188,10 @@ necho.o: necho.c getconf.o: getconf.c hello.o: hello.c cat.o: cat.c - +printenv.o: printenv.c +id.o: id.c +whoami.o: whoami.c +uname.o: uname.c +sync.o: sync.c +push.o: push.c +mkdir.o: mkdir.c |