# # Makefile for lib/ss # srcdir = . top_srcdir = ../.. top_builddir = ../.. my_dir = lib/ss INSTALL = /usr/bin/install -c -o root -g wheel DLOPEN_LIB = -ldl # Beginning of file MCONFIG all:: check:: SHELL = /bin/sh COMPRESS_EXT = gz bz2 bz Z prefix = root_prefix = exec_prefix = ${prefix} root_bindir = ${exec_prefix}/bin root_sbindir = ${exec_prefix}/sbin root_libdir = ${exec_prefix}/lib datarootdir = ${prefix}/share bindir = ${exec_prefix}/bin sbindir = ${exec_prefix}/sbin libdir = ${exec_prefix}/lib datadir= ${datarootdir} localedir = $(datadir)/locale root_sysconfdir= ${prefix}/etc includedir = ${prefix}/include mandir = ${datarootdir}/man man1dir = $(mandir)/man1 man3dir = $(mandir)/man3 man5dir = $(mandir)/man5 man8dir = $(mandir)/man8 infodir = ${datarootdir}/info datadir = ${datarootdir} CC = cc BUILD_CC = cc DEFS = -DLOCALEDIR=\"$(localedir)\" -DROOT_SYSCONFDIR=\"$(root_sysconfdir)\" -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DENABLE_HTREE=1 -DENABLE_SWAPFS=1 -DPACKAGE=\"e2fsprogs\" -DVERSION=\"0.14.1\" -Dconst= -Dsigned= -Dinline= -Doff_t=long\ int -Dsize_t=unsigned\ int -DHAVE_LONG_LONG=1 -DHAVE_POSIX_PRINTF=1 -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 -DHAVE_GETPAGESIZE=1 -DINTDIV0_RAISES_SIGFPE=1 -DHAVE_UNSIGNED_LONG_LONG=1 -Duintmax_t=unsigned\ long\ long -DSIZE_MAX=4294967295U -Dptrdiff_t=long -DHAVE_LIMITS_H=1 -DHAVE_LOCALE_H=1 -DHAVE_NL_TYPES_H=1 -DHAVE_STDDEF_H=1 -DHAVE_SYS_PARAM_H=1 -DHAVE_ASPRINTF=1 -DHAVE_FWPRINTF=1 -DHAVE_GETCWD=1 -DHAVE_GETEGID=1 -DHAVE_GETEUID=1 -DHAVE_GETGID=1 -DHAVE_GETUID=1 -DHAVE_MUNMAP=1 -DHAVE_PUTENV=1 -DHAVE_SETENV=1 -DHAVE_SETLOCALE=1 -DHAVE_SNPRINTF=1 -DHAVE_STPCPY=1 -DHAVE_STRCASECMP=1 -DHAVE_STRDUP=1 -DHAVE_STRTOUL=1 -DHAVE_TSEARCH=1 -DHAVE_WCSLEN=1 -DHAVE_DECL__SNPRINTF=0 -DHAVE_DECL__SNWPRINTF=0 -DHAVE_DECL_FEOF_UNLOCKED=0 -DHAVE_DECL_FGETS_UNLOCKED=0 -DHAVE_DECL_GETC_UNLOCKED=0 -DHAVE_ICONV=1 -DICONV_CONST=const -DHAVE_LANGINFO_CODESET=1 -DHAVE_LC_MESSAGES=1 -DENABLE_NLS=1 -DHAVE_STDARG_H=1 -DHAVE_ERRNO_H=1 -DHAVE_MALLOC_H=1 -DHAVE_PATHS_H=1 -DHAVE_DIRENT_H=1 -DHAVE_GETOPT_H=1 -DHAVE_SETJMP_H=1 -DHAVE_SIGNAL_H=1 -DHAVE_TERMIOS_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_MMAN_H=1 -DHAVE_SYS_QUEUE_H=1 -DHAVE_SYS_SOCKIO_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_SYS_RESOURCE_H=1 -DHAVE_NET_IF_DL_H=1 -DHAVE_NETINET_IN_H=1 -DHAVE_UTIME_H=1 -DHAVE_VPRINTF=1 -DSIZEOF_SHORT=2 -DSIZEOF_INT=4 -DSIZEOF_LONG=4 -DSIZEOF_LONG_LONG=8 -DHAVE_CHFLAGS=1 -DHAVE_GETRUSAGE=1 -DHAVE_GETMNTINFO=1 -DHAVE_STRTOULL=1 -DHAVE_STRCASECMP=1 -DHAVE_SRANDOM=1 -DHAVE_JRAND48=1 -DHAVE_FCHOWN=1 -DHAVE_STRPTIME=1 -DHAVE_STRDUP=1 -DHAVE_SYSCONF=1 -DHAVE_PATHCONF=1 -DHAVE_VALLOC=1 -DHAVE_MMAP=1 -DHAVE_UTIME=1 -DHAVE_DLOPEN=1 -DHAVE_OPTRESET=1 CFLAGS = -fno-common CPPFLAGS = -I$(top_builddir)/lib -I$(top_srcdir)/lib -I/mnt/gmirror/ports/sysutils/e2fsprogs/work/e2fsprogs-1.40.3/lib -I/usr/local/include -D_EXT2_USE_C_VERSIONS_ INTL_FLAGS = -I$(top_builddir)/intl -I$(top_srcdir)/intl ALL_CFLAGS = $(CPPFLAGS) $(DEFS) $(USE_WFLAGS) $(CFLAGS) $(XTRA_CFLAGS) \ $(INTL_FLAGS) $(LINUX_INCLUDE) LDFLAGS = ALL_LDFLAGS = $(LDFLAGS) BUILD_CFLAGS = -fno-common BUILD_LDFLAGS = RM = /usr/local/bin/rm LN = /usr/local/bin/ln LN_S = ln -s MV = /usr/local/bin/mv CP = /usr/local/bin/cp CHMOD = /usr/local/bin/chmod AR = ar AWK = gawk SED = /usr/local/bin/sed PERL = /usr/local/bin/perl RANLIB = ranlib STRIP = strip LD = $(PURE) cc ARUPD = $(AR) r ARGEN = $(AR) rc LDCONFIG = /usr/local/bin/ldconfig INSTALL_PROGRAM = install -s -o root -g wheel -m 555 INSTALL_DATA = install -o root -g wheel -m 444 INSTALL_SCRIPT = install -o root -g wheel -m 555 MKINSTALLDIRS = $(top_builddir)/config/mkinstalldirs # # Library definitions # DEVMAPPER_LIBS = STATIC_DEVMAPPER_LIBS = LIB = $(top_builddir)/lib LIBSS = $(LIB)/libss.a LIBCOM_ERR = $(LIB)/libcom_err.a LIBE2P = $(LIB)/libe2p.a LIBEXT2FS = $(LIB)/libext2fs.a LIBUUID = $(LIB)/libuuid.a LIBBLKID = $(LIB)/libblkid.a LIBINTL = ${top_builddir}/intl/libintl.a -liconv DEPLIBUUID = $(LIB)/libuuid.a DEPLIBBLKID = $(LIB)/libblkid.a STATIC_LIBSS = $(LIB)/libss.a STATIC_LIBCOM_ERR = $(LIB)/libcom_err.a STATIC_LIBE2P = $(LIB)/libe2p.a STATIC_LIBEXT2FS = $(LIB)/libext2fs.a STATIC_LIBUUID = $(LIB)/libuuid.a STATIC_LIBBLKID = $(LIB)/libblkid.a $(STATIC_DEVMAPPER_LIBS) DEPSTATIC_LIBUUID = $(LIB)/libuuid.a DEPSTATIC_LIBBLKID = $(LIB)/libblkid.a PROFILED_LIBSS = $(LIB)/libss PROFILED_LIBCOM_ERR = $(LIB)/libcom_err PROFILED_LIBE2P = $(LIB)/libe2p PROFILED_LIBEXT2FS = $(LIB)/libext2fs PROFILED_LIBUUID = $(LIB)/libuuid PROFILED_LIBBLKID = $(LIB)/libblkid DEPPROFILED_LIBUUID = $(LIB)/libuuid DEPPROFILED_LIBBLKID = $(LIB)/libblkid # An include directive pointing to a directory holding enough linux-like # include files to satisfy some programs here LINUX_INCLUDE=-I$(top_builddir)/include # # A fast substitution command for fixing up man pages, shell scripts, etc. # SUBST_CONF=$(top_builddir)/util/subst.conf SUBSTITUTE= $(top_builddir)/util/subst -f $(SUBST_CONF) SUBSTITUTE_UPTIME= $(top_builddir)/util/subst -t -f $(SUBST_CONF) DEP_SUBSTITUTE= $(top_builddir)/util/subst $(SUBST_CONF) $(top_builddir)/util/subst: cd $(top_builddir)/util ; $(MAKE) subst # # Warning flags # # Run make gcc-wall to do a build with warning messages. # # WFLAGS= -std=c99 -D_XOPEN_SOURCE=600 -D_GNU_SOURCE \ -pedantic $(WFLAGS_EXTRA) \ -Wall -W -Wwrite-strings -Wpointer-arith \ -Wcast-qual -Wcast-align -Wno-variadic-macros \ -Wstrict-prototypes -Wmissing-prototypes \ -Wformat-security -Wformat-nonliteral \ -Wmissing-format-attribute -O2 -Wstrict-aliasing \ -Wnested-externs -Winline -DNO_INLINE_FUNCS -Wshadow \ -UENABLE_NLS gcc-wall-new: (make USE_WFLAGS="$(WFLAGS)" > /dev/null) 2>&1 | sed -f $(top_srcdir)/util/gcc-wall-cleanup gcc-wall: make clean > /dev/null make gcc-wall-new # # Installation user and groups # BINGRP= bin BINOWN= bin BINMODE= 555 INCGRP= bin INCOWN= bin INCMODE= 444 LIBOWN= bin LIBGRP= bin LIBMODE= 444 MANGRP= bin MANOWN= bin MANMODE= 444 # # Autoconf magic... # DEP_LIB_MAKEFILES = $(top_srcdir)/lib/Makefile.elf-lib \ $(top_srcdir)/lib/Makefile.bsd-lib $(top_srcdir)/lib/Makefile.darwin-lib \ $(top_srcdir)/lib/Makefile.solaris-lib $(top_srcdir)/lib/Makefile.checker \ $(top_srcdir)/lib/Makefile.profile $(top_builddir)/config.status: $(top_srcdir)/configure cd $(top_builddir); ./config.status --recheck $(top_builddir)/MCONFIG: $(top_srcdir)/MCONFIG.in $(top_builddir)/config.status cd $(top_builddir); CONFIG_FILES=MCONFIG ./config.status $(top_builddir)/lib/substitute_sh: $(top_srcdir)/lib/substitute_sh.in \ $(top_builddir)/config.status cd $(top_builddir); CONFIG_FILES=lib/substitute_sh ./config.status $(top_builddir)/util/subst.conf: $(top_srcdir)/util/subst.conf.in \ $(top_builddir)/config.status cd $(top_builddir); CONFIG_FILES=util/subst.conf ./config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/MCONFIG \ $(DEP_MAKEFILE) $(top_builddir)/config.status cd $(top_builddir); CONFIG_FILES=$(my_dir)/Makefile ./config.status #$(top_srcdir)/configure: $(top_srcdir)/configure.in # cd $(top_srcdir) && autoconf # # Make depend magic... # .depend: Makefile $(SRCS) $(top_srcdir)/depfix.sed $(top_srcdir)/wordwrap.pl if test -n "$(SRCS)" ; then \ $(CC) -M $(ALL_CFLAGS) $(SRCS) | \ $(SED) -f $(top_srcdir)/depfix.sed \ -e 's; $(srcdir)/; $$(srcdir)/;g' \ -e 's; $(top_srcdir)/; $$(top_srcdir)/;g' \ -e 's; $(top_builddir)/; $$(top_builddir)/;g' \ -e 's; \./; ;g' \ -e '/^#/d' \ -e '/^ *\\$$/d' | \ $(PERL) $(top_srcdir)/wordwrap.pl > .depend; \ else :; fi depend:: .depend if test -n "$(SRCS)" ; then \ sed -e '/^# +++ Dependency line eater +++/,$$d' \ < $(srcdir)/Makefile.in | cat - .depend \ > $(srcdir)/Makefile.in.new; \ if cmp -s $(srcdir)/Makefile.in $(srcdir)/Makefile.in.new ; then \ $(RM) $(srcdir)/Makefile.in.new ; \ else \ $(MV) $(srcdir)/Makefile.in $(srcdir)/Makefile.in.old; \ $(MV) $(srcdir)/Makefile.in.new $(srcdir)/Makefile.in; \ fi ; else :; fi # End of file MCONFIG LIBRARY= libss LIBDIR= ss ELF_VERSION = 2.0 ELF_SO_VERSION = 2 ELF_IMAGE = libss ELF_MYDIR = ss ELF_INSTALL_DIR = $(root_libdir) ELF_OTHER_LIBS = -L../.. -lcom_err $(DLOPEN_LIB) BSDLIB_VERSION = 1.0 BSDLIB_IMAGE = libss BSDLIB_MYDIR = ss BSDLIB_INSTALL_DIR = $(root_libdir) TAGS=etags COMPILE_ET=../et/compile_et --build-tree MK_CMDS=_SS_DIR_OVERRIDE=. ./mk_cmds # -I.. is so that ss/ss_err.h works # -I$(srcdir)/.. is so that ss/ss.h works # -I$(srcdir)/../et is so com_err.h works XTRA_CFLAGS= -I$(srcdir)/../et .c.o: @echo " CC $<" @$(CC) $(ALL_CFLAGS) -c $< # @$(CC) $(ALL_CFLAGS) -g -pg -o profiled/$*.o -c $< # @$(CC) $(ALL_CFLAGS) -checker -g -o checker/$*.o -c $< # @$(CC) $(ALL_CFLAGS) -DSHARED_ELF_LIB -fPIC -o elfshared/$*.o -c $< # @$(CC) $(ALL_CFLAGS) $(BSDLIB_PIC_FLAG) -o pic/$*.o -c $< # for the library # with ss_err.o first, ss_err.h should get rebuilt first too. should not # be relying on this, though. OBJS= ss_err.o \ std_rqs.o \ invocation.o help.o \ execute_cmd.o listen.o parse.o error.o prompt.o \ request_tbl.o list_rqs.o pager.o requests.o \ data.o get_readline.o SRCS= $(srcdir)/invocation.c $(srcdir)/help.c \ $(srcdir)/execute_cmd.c $(srcdir)/listen.c $(srcdir)/parse.c \ $(srcdir)/error.c $(srcdir)/prompt.c $(srcdir)/request_tbl.c \ $(srcdir)/list_rqs.c $(srcdir)/pager.c $(srcdir)/requests.c \ $(srcdir)/data.c $(srcdir)/get_readline.c all:: mk_cmds all:: subdirs $(LIBRARY).a install-shlibs:: uninstall-shlibs:: real-subdirs:: subdirs:: Makefile @$(MAKE) -s real-subdirs @touch subdirs clean:: @$(RM) -f subdirs $(LIBRARY).a: $(OBJS) @echo " GEN_LIB $@" @(if test -r $@; then $(RM) -f $@.bak && $(MV) $@ $@.bak; fi) @$(ARGEN) $@ $(OBJS) -@$(RANLIB) $@ @$(RM) -f ../$@ @$(LN) $@ ../$@ CODE= $(SRCS) $(MKCMDSFILES) MKCMDSOBJS= mk_cmds.o utils.o options.o ct.tab.o cmd_tbl.lex.o MKCMDSFILES= mk_cmds.c utils.c options.c ct.y cmd_tbl.lex.l MKCMDSCSRCS= mk_cmds.c utils.c options.c ct.tab.c cmd_tbl.lex.c HFILES= ss.h ss_internal.h SHARE_FILES= ct_c.awk ct_c.sed INSTALL_HFILES= ss.h # for 'tags' and dependencies CFILES= $(SRCS) $(MKCMDSCSRCS) test_ss.c # for building archives FILES= $(SRCS) $(MKCMDSFILES) $(HFILES) \ ss_err.et std_rqs.ct Makefile \ test_ss.c ss all:: libss.a ss.pc # libss_p.a lint std_rqs.c: std_rqs.ct mk_cmds @echo " MK_CMDS $@" @DIR=$(srcdir) $(MK_CMDS) $(srcdir)/std_rqs.ct std_rqs.o: ss_err.h test_cmd.c: test_cmd.ct mk_cmds @echo " MK_CMDS $@" @DIR=$(srcdir) $(MK_CMDS) $(srcdir)/test_cmd.ct ss_err.c ss_err.h: ss_err.et @echo " COMPILE_ET ss_err.et" @$(COMPILE_ET) $(srcdir)/ss_err.et ct.tab.c ct.tab.h: ct.y $(RM) -f ct.tab.* y.* $(YACC) -d $(srcdir)/ct.y $(MV) -f y.tab.c ct.tab.c $(MV) -f y.tab.h ct.tab.h #libss.o: $(OBJS) # $(LD) -r -s -o $@ $(OBJS) # $(CHMOD) -x $@ mk_cmds: $(DEP_SUBSTITUTE) $(srcdir)/mk_cmds.sh.in @echo " SUBST $@" @$(SUBSTITUTE) $(srcdir)/mk_cmds.sh.in mk_cmds @$(CHMOD) +x mk_cmds ss.pc: $(srcdir)/ss.pc.in $(top_builddir)/config.status @echo " CONFIG.STATUS $@" @cd $(top_builddir); CONFIG_FILES=lib/ss/ss.pc ./config.status installdirs:: @echo " MKINSTALLDIRS $(libdir) $(includedir)/ss $(datadir)/ss $(bindir)" @$(MKINSTALLDIRS) $(DESTDIR)$(libdir) \ $(DESTDIR)$(includedir)/ss $(DESTDIR)$(datadir)/ss \ $(DESTDIR)$(bindir) $(DESTDIR)/usr/local/libdata/pkgconfig install:: libss.a $(INSTALL_HFILES) installdirs ss_err.h mk_cmds ss.pc @echo " INSTALL_DATA $(DESTDIR)$(libdir)/libss.a" @$(INSTALL_DATA) libss.a $(DESTDIR)$(libdir)/libss.a @-$(RANLIB) $(DESTDIR)$(libdir)/libss.a @$(CHMOD) $(LIBMODE) $(DESTDIR)$(libdir)/libss.a @$(RM) -f $(DESTDIR)$(includedir)/ss/* @for i in $(INSTALL_HFILES); do \ echo " INSTALL_DATA $(DESTDIR)$(includedir)/ss/$$i"; \ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(includedir)/ss/$$i; \ done @echo " INSTALL_DATA $(includedir)/ss/ss_err.h" @$(INSTALL_DATA) ss_err.h $(DESTDIR)$(includedir)/ss/ss_err.h @for i in $(SHARE_FILES); do \ echo " INSTALL_DATA $(DESTDIR)$(datadir)/ss/$$i"; \ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(datadir)/ss/$$i; \ done @echo " INSTALL $(bindir)/mk_cmds" @$(INSTALL) mk_cmds $(DESTDIR)$(bindir)/mk_cmds @echo " INSTALL_DATA $(man1dir)/mk_cmds.1" @$(INSTALL_DATA) $(srcdir)/mk_cmds.1 $(DESTDIR)$(man1dir)/mk_cmds.1 @echo " INSTALL_DATA /usr/local/libdata/pkgconfig/ss.pc" @$(INSTALL_DATA) ss.pc $(DESTDIR)/usr/local/libdata/pkgconfig/ss.pc uninstall:: $(RM) -f $(DESTDIR)$(libdir)/libss.a $(DESTDIR)$(bindir)/mk_cmds \ $(DESTDIR)/usr/local/libdata/pkgconfig/ss.pc \ $(DESTDIR)$(man1dir)/mk_cmds.1 $(RM) -rf $(DESTDIR)$(includedir)/ss $(DESTDIR)$(datadir)/ss test_ss: test_ss.o test_cmd.o $(LIBEXT2FS) $(LIBSS) $(LIBCOM_ERR) @echo " LD $@" @$(CC) -o $@ test_ss.o test_cmd.o $(ALL_CFLAGS) \ $(LIBSS) $(LIBCOM_ERR) check:: all test_ss @echo " RUN TEST test_ss" @(test_ss -f $(srcdir)/test_script >& test_out; exit 0) @if ! diff test_out $(srcdir)/test_script_expected > test.diff; then \ echo "Regression test for ss library failed!"; exit 1 ; fi clean:: $(RM) -f ../libss.a libss.a mk_cmds ss_err.h ss_err.c std_rqs.c \ tst_cmds.c test_ss test_out test.diff *.o *~ \#* *.bak core \ test_cmd.c mostlyclean:: clean distclean:: clean $(RM) -f .depend Makefile ss.pc \ $(srcdir)/TAGS $(srcdir)/Makefile.in.old # # Hack to parallel makes recognize dependencies correctly. # $(top_builddir)/lib/ss/ss_err.h: ss_err.h $(OBJS): subdirs # +++ Dependency line eater +++ # # Makefile dependencies follow. This must be the last section in # the Makefile.in file # invocation.o: $(srcdir)/invocation.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h help.o: $(srcdir)/help.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h execute_cmd.o: $(srcdir)/execute_cmd.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h listen.o: $(srcdir)/listen.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h parse.o: $(srcdir)/parse.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h error.o: $(srcdir)/error.c $(top_srcdir)/lib/et/com_err.h \ $(srcdir)/ss_internal.h $(srcdir)/ss.h $(top_builddir)/lib/ss/ss_err.h \ $(top_srcdir)/lib/et/com_err.h prompt.o: $(srcdir)/prompt.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h request_tbl.o: $(srcdir)/request_tbl.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h list_rqs.o: $(srcdir)/list_rqs.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h pager.o: $(srcdir)/pager.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h requests.o: $(srcdir)/requests.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h data.o: $(srcdir)/data.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h get_readline.o: $(srcdir)/get_readline.c $(srcdir)/ss_internal.h \ $(srcdir)/ss.h $(top_builddir)/lib/ss/ss_err.h \ $(top_srcdir)/lib/et/com_err.h