summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.cvsignore7
-rw-r--r--CHANGES1
-rw-r--r--Makefile.am103
-rw-r--r--Makefile.in841
-rw-r--r--acconfig.h38
-rw-r--r--aclocal.m4630
-rw-r--r--build/.cvsignore1
-rw-r--r--build/Makefile.am23
-rw-r--r--build/Makefile.in410
-rw-r--r--configure.in81
-rw-r--r--convertdb.c4
-rw-r--r--intl/.cvsignore2
-rw-r--r--lib/.cvsignore1
-rw-r--r--lib/Makefile.am42
-rw-r--r--lib/Makefile.in448
-rw-r--r--misc/.cvsignore3
-rw-r--r--misc/Makefile.am19
-rw-r--r--misc/Makefile.in348
-rw-r--r--misc/alloca.c504
-rw-r--r--misc/fnmatch.c4
-rw-r--r--misc/fnmatch.h67
-rw-r--r--misc/getcwd.c52
-rw-r--r--misc/getwd.c29
-rw-r--r--misc/glob.c31
-rw-r--r--misc/glob.h97
-rw-r--r--misc/inet_aton.c4
-rw-r--r--misc/memcmp.c373
-rw-r--r--misc/mktime.c408
-rw-r--r--misc/myrealloc.c6
-rw-r--r--misc/putenv.c110
-rw-r--r--misc/realpath.c16
-rw-r--r--misc/strdup.c65
-rw-r--r--misc/strerror.c7
-rw-r--r--misc/strftime.c1054
-rw-r--r--misc/strspn.c40
-rw-r--r--misc/strstr.c116
-rw-r--r--misc/strtol.c6
-rw-r--r--misc/strtoul.c6
-rwxr-xr-xmissing188
-rw-r--r--oldrpmdb.c2
-rw-r--r--po/.cvsignore2
-rw-r--r--po/Makefile.in2
-rw-r--r--po/Makefile.in.in248
-rw-r--r--po/POTFILES.in61
-rw-r--r--po/rpm.pot2827
-rw-r--r--popt/.cvsignore4
-rw-r--r--popt/Makefile.am9
-rw-r--r--popt/Makefile.in413
-rw-r--r--popt/aclocal.m4246
-rw-r--r--popt/config.h.in10
-rwxr-xr-xpopt/configure.in5
-rw-r--r--popt/stamp-h1
-rw-r--r--popt/stamp-h.in0
-rw-r--r--scripts/Makefile.am11
-rw-r--r--scripts/Makefile.in247
-rw-r--r--stamp-h1
-rw-r--r--stamp-h.in1
-rw-r--r--tests/Makefile.am5
-rw-r--r--tools/.cvsignore3
-rw-r--r--tools/Makefile.am15
-rw-r--r--tools/Makefile.in383
61 files changed, 8623 insertions, 2058 deletions
diff --git a/.cvsignore b/.cvsignore
index 50a9f2736..d3c5e621f 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -1,3 +1,7 @@
+.deps
+.depend
+.depend-done
+Makefile
rpm
rpm.shared
rpm2cpio
@@ -8,9 +12,6 @@ config.guess
config.cache
Makefile.inc
config.status
-Makefile
-.depend
-.depend-done
*.tar.gz
config.log
configure
diff --git a/CHANGES b/CHANGES
index b8fa7c109..b271aed2c 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,4 +1,5 @@
2.5.5 -> 2.90
+ - configure using automake.
- arch/os (and platform) should be case insensitive everywhere forever.
- attempt to deal rationally with os as "Linux" or "linux".
- add generalized expression handler (Tom Dyas<tdyas@remus.rutgers.edu>)
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 000000000..59ee1c58b
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,103 @@
+# Top level Makefile for rpm
+
+AUTOMAKE_OPTIONS = 1.3 foreign
+
+SUBDIRS = popt build lib po intl misc tools scripts
+
+INCLUDES = -I./build -I./lib -I./intl @INCPATH@
+
+LDFLAGS = @LDFLAGS_STATIC@ -L./popt -L./build -L./lib -L./misc
+
+rpmbindir = $(subst usr/bin,bin,$(bindir))
+rpmbin_PROGRAMS = rpm
+
+bin_PROGRAMS = rpm2cpio
+bin_SCRIPTS = gendiff
+noinst_PROGRAMS = rpmconvert
+
+man_MANS = rpm.8 rpm2cpio.8
+
+configdir = @RPMCONFIGDIR@
+config_DATA = rpmrc rpmpopt macros
+config_SCRIPTS = find-provides find-requires mkinstalldirs
+
+noinst_HEADERS = \
+ acconfig.h build.h checksig.h ftp.h \
+ install.h query.h system.h url.h \
+ verify.h
+
+rpm_SOURCES = build.c checksig.c ftp.c install.c query.c rpm.c url.c \
+ verify.c
+rpm_LDADD = -lrpmbuild -lpopt -lrpm @LIBMISC@
+
+rpm.o:
+ $(COMPILE) \
+ -DRPMNLSDIR=\"$(RPMNLSDIR)\" \
+ -DRPMNLSPACKAGE=\"$(PACKAGE)\" \
+ -DVERSION=\"$(VERSION)\" \
+ -DLIBRPMALIAS_FILENAME=\"$(LIBRPMALIAS_FILENAME)\" \
+ -DRPMCONFIGDIR="\"$(RPMCONFIGDIR)"\" \
+ -c rpm.c
+
+include ./Makefile.inc
+
+rpm2cpio_SOURCES = rpm2cpio.c
+rpm2cpio_LDADD = -lrpmbuild -lpopt -lrpm
+
+rpmconvert_SOURCES = convertdb.c oldrpmdb.c
+rpmconvert_LDADD = -lrpmbuild -lpopt -lrpm -lgdbm
+
+install-data-local:
+ ln -s rpm/rpmrc $(libdir)/rpmrc
+ ln -s rpm/rpmpopt $(libdir)/rpmpopt
+
+# FIXME: these should be generated in configure.in
+find-requires: find-requires.sh
+ cp $< $@
+find-provides: find-provides.sh
+ cp $< $@
+rpmrc: lib-rpmrc
+ cp $< $@
+
+# FIXME: these should be checked
+.PHONY: tar
+tar:
+ rm -rf /tmp/rpm-$(VERSION)
+ make installprefix=/tmp/rpm-$(VERSION)$(ROOT) install
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/SOURCES
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/SPECS
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/SRPMS
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/RPMS
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/BUILD
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/var/local/lib/rpm
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/var/tmp
+# Couldn't figure de ARCH value
+# $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/RPMS/i386
+ cd /tmp/rpm-$(VERSION) ; tar cvf /tmp/rpm-$(VERSION).tar .
+
+.PHONY: noconfig
+noconfig:
+ find . -name "Makefile" -exec rm {} \;
+ rm -f *gz *rpm config.*
+
+.PHONY: archive
+archive:
+ @echo " "
+ @echo "I hope you checked everything out and made sure it builds"
+ @echo "maybe someday Erik will get around to making that automatic."
+ @echo
+ @echo "This is version $(VERSION)."
+ @sleep 5
+ @cvs -Q tag -F $(CVSTAG) .
+ @rm -rf /tmp/rpm-$(VERSION) /tmp/rpm
+ @cd /tmp; cvs -Q -d $(CVSROOT) export -r$(CVSTAG) rpm || :
+ @mv /tmp/rpm /tmp/rpm-$(VERSION)
+ @rm /tmp/rpm-$(VERSION)/popt/popt.spec
+ @cd /tmp/rpm-$(VERSION); ./autogen.sh ; make depend; make distclean
+ @cd /tmp/rpm-$(VERSION); ./autogen.sh --noconfigure
+ @cd /tmp; tar czSpf rpm-$(VERSION).tar.gz rpm-$(VERSION)
+ @rm -rf /tmp/rpm-$(VERSION)
+ @cp /tmp/rpm-$(VERSION).tar.gz .
+ @rm -f /tmp/rpm-$(VERSION).tar.gz
+ @echo " "
+ @echo "The final archive is ./rpm-$(VERSION).tar.gz."
diff --git a/Makefile.in b/Makefile.in
index f699b8710..fdcb7cc16 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,195 +1,726 @@
-include Makefile.inc
+# Makefile.in generated automatically by automake 1.3 from Makefile.am
-srcdir= @srcdir@
-VPATH = @srcdir@
-top_srcdir= @top_srcdir@
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+# Top level Makefile for rpm
+
+
+SHELL = /bin/sh
-INSTALL= @INSTALL@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+infodir = @infodir@
+mandir = @mandir@
+includedir = @includedir@
+oldincludedir = /usr/include
+
+DISTDIR =
+
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+
+top_builddir = .
+
+ACLOCAL = @ACLOCAL@
+AUTOCONF = @AUTOCONF@
+AUTOMAKE = @AUTOMAKE@
+AUTOHEADER = @AUTOHEADER@
+
+INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
-#LIBEFENCE = -lefence
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+transform = @program_transform_name@
+
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+host_alias = @host_alias@
+host_triplet = @host@
+AR = @AR@
+AWK = @AWK@
+BZIP2BIN = @BZIP2BIN@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CPP = @CPP@
+DATADIRNAME = @DATADIRNAME@
+FIXPERMS = @FIXPERMS@
+GENCAT = @GENCAT@
+GETTEXTSTUB = @GETTEXTSTUB@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+GT_NO = @GT_NO@
+GT_YES = @GT_YES@
+GZIPBIN = @GZIPBIN@
+INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INCPATH = @INCPATH@
+INSTOBJEXT = @INSTOBJEXT@
+INTLDEF = @INTLDEF@
+INTLDEPS = @INTLDEPS@
+INTLLIBS = @INTLLIBS@
+INTLOBJS = @INTLOBJS@
+LDFLAGS_STATIC = @LDFLAGS_STATIC@
+LIBDL = @LIBDL@
+LIBINTL = @LIBINTL@
+LIBMISC = @LIBMISC@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+MAKEINFO = @MAKEINFO@
+MISCDIR = @MISCDIR@
+MISCPATH = @MISCPATH@
+MKDIR = @MKDIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+PACKAGE = @PACKAGE@
+PO = @PO@
+POFILES = @POFILES@
+POSUB = @POSUB@
+RANLIB = @RANLIB@
+ROOT_GROUP = @ROOT_GROUP@
+RPM = @RPM@
+RPMCONFIGDIR = @RPMCONFIGDIR@
+TARGET = @TARGET@
+U = @U@
+USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+l = @l@
+tmpdir = @tmpdir@
+topdir = @topdir@
+topsrcdir = @topsrcdir@
+varprefix = @varprefix@
+
+AUTOMAKE_OPTIONS = 1.3 foreign
+
+SUBDIRS = popt build lib po intl misc tools scripts
+
+INCLUDES = -I./build -I./lib -I./intl @INCPATH@
+
+LDFLAGS = @LDFLAGS_STATIC@ -L./popt -L./build -L./lib -L./misc
+
+rpmbindir = $(subst usr/bin,bin,$(bindir))
+rpmbin_PROGRAMS = rpm
+
+bin_PROGRAMS = rpm2cpio
+bin_SCRIPTS = gendiff
+noinst_PROGRAMS = rpmconvert
+
+man_MANS = rpm.8 rpm2cpio.8
+
+configdir = @RPMCONFIGDIR@
+config_DATA = rpmrc rpmpopt macros
+config_SCRIPTS = find-provides find-requires mkinstalldirs
+
+noinst_HEADERS = \
+ acconfig.h build.h checksig.h ftp.h \
+ install.h query.h system.h url.h \
+ verify.h
+
+rpm_SOURCES = build.c checksig.c ftp.c install.c query.c rpm.c url.c \
+ verify.c
+rpm_LDADD = -lrpmbuild -lpopt -lrpm @LIBMISC@
+
+rpm2cpio_SOURCES = rpm2cpio.c
+rpm2cpio_LDADD = -lrpmbuild -lpopt -lrpm
+
+rpmconvert_SOURCES = convertdb.c oldrpmdb.c
+rpmconvert_LDADD = -lrpmbuild -lpopt -lrpm -lgdbm
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = config.h
+CONFIG_CLEAN_FILES = Makefile.inc lib-rpmrc macros
+PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) $(rpmbin_PROGRAMS)
+
+
+DEFS = @DEFS@ -I. -I$(srcdir) -I.
+CPPFLAGS = @CPPFLAGS@
+rpm2cpio_OBJECTS = rpm2cpio.o
+rpm2cpio_DEPENDENCIES =
+rpm2cpio_LDFLAGS =
+rpmconvert_OBJECTS = convertdb.o oldrpmdb.o
+rpmconvert_DEPENDENCIES =
+rpmconvert_LDFLAGS =
+rpm_OBJECTS = build.o checksig.o ftp.o install.o query.o rpm.o url.o \
+verify.o
+rpm_DEPENDENCIES =
+rpm_LDFLAGS =
+SCRIPTS = $(bin_SCRIPTS) $(config_SCRIPTS)
+
+CFLAGS = @CFLAGS@
+COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
+LINK = $(CC) $(CFLAGS) $(LDFLAGS) -o $@
+man8dir = $(mandir)/man8
+MANS = $(man_MANS)
+
+NROFF = nroff
+DATA = $(config_DATA)
+
+HEADERS = $(noinst_HEADERS)
+
+DIST_COMMON = README ABOUT-NLS COPYING Makefile.am Makefile.in \
+Makefile.inc.in TODO acconfig.h aclocal.m4 config.guess config.h.in \
+config.sub configure configure.in install-sh lib-rpmrc.in macros.in \
+missing mkinstalldirs stamp-h.in
+
+
+DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+
+TAR = tar
+GZIP = --best
+DEP_FILES = .deps/build.P .deps/checksig.P .deps/convertdb.P \
+.deps/ftp.P .deps/install.P .deps/oldrpmdb.P .deps/query.P .deps/rpm.P \
+.deps/rpm2cpio.P .deps/url.P .deps/verify.P
+SOURCES = $(rpm2cpio_SOURCES) $(rpmconvert_SOURCES) $(rpm_SOURCES)
+OBJECTS = $(rpm2cpio_OBJECTS) $(rpmconvert_OBJECTS) $(rpm_OBJECTS)
+
+all: all-recursive-am all-am
+
+.SUFFIXES:
+.SUFFIXES: .S .c .o .s
+$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+ cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+$(ACLOCAL_M4): configure.in
+ cd $(srcdir) && $(ACLOCAL)
+
+config.status: $(srcdir)/configure
+ $(SHELL) ./config.status --recheck
+$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
+ cd $(srcdir) && $(AUTOCONF)
+
+config.h: stamp-h
+ @:
+stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status
+ cd $(top_builddir) \
+ && CONFIG_FILES= CONFIG_HEADERS=config.h \
+ $(SHELL) ./config.status
+ @echo timestamp > stamp-h
+$(srcdir)/config.h.in: $(srcdir)/stamp-h.in
+$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h
+ cd $(top_srcdir) && $(AUTOHEADER)
+ @echo timestamp > $(srcdir)/stamp-h.in
+
+mostlyclean-hdr:
+
+clean-hdr:
+
+distclean-hdr:
+ -rm -f config.h
+
+maintainer-clean-hdr:
+Makefile.inc: $(top_builddir)/config.status Makefile.inc.in
+ cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status
+lib-rpmrc: $(top_builddir)/config.status lib-rpmrc.in
+ cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status
+macros: $(top_builddir)/config.status macros.in
+ cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status
+
+mostlyclean-binPROGRAMS:
+
+clean-binPROGRAMS:
+ -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
+
+distclean-binPROGRAMS:
+
+maintainer-clean-binPROGRAMS:
+
+install-binPROGRAMS: $(bin_PROGRAMS)
+ @$(NORMAL_INSTALL)
+ $(mkinstalldirs) $(DESTDIR)$(bindir)
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ if test -f $$p; then \
+ echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`"; \
+ $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
+ else :; fi; \
+ done
+
+uninstall-binPROGRAMS:
+ @$(NORMAL_UNINSTALL)
+ list='$(bin_PROGRAMS)'; for p in $$list; do \
+ rm -f $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
+ done
-#DEBUG = -g
-installprefix=$(ROOT)
+mostlyclean-noinstPROGRAMS:
-#LIBEFENCE = -lefence
+clean-noinstPROGRAMS:
+ -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS)
-CVSTAG = r$(subst .,-,$(VERSION))
+distclean-noinstPROGRAMS:
-################################### Leave this stuff alone
+maintainer-clean-noinstPROGRAMS:
-### These are variables meant to be exported
+mostlyclean-rpmbinPROGRAMS:
-BINDIR=$(prefix)/bin
-RPMBINDIR=$(subst usr/bin,bin,$(BINDIR))
-MANDIR=$(prefix)/man/man8
-LIBDIR=$(libdir)
-INCDIR=$(prefix)/include/rpm
-ETCDIR=$(ROOT)/etc
+clean-rpmbinPROGRAMS:
+ -test -z "$(rpmbin_PROGRAMS)" || rm -f $(rpmbin_PROGRAMS)
-# -----------------------------------------------------------------------
+distclean-rpmbinPROGRAMS:
-SUBDIRS = popt @MISCDIR@ lib build tools @PO@
-ALLSUBDIRS = popt misc lib build tools po
-INSTSUBDIRS = lib scripts @PO@
-OTHERSUBDIRS = docs autodeps
-OBJS = rpm.o query.o install.o verify.o checksig.o ftp.o url.o build.o \
- @GETTEXTSTUB@
-PROGS = @RPM@ rpm2cpio
-LIBS = @LIBS@ @LIBINTL@ @LIBDL@ $(LIBEFENCE)
-LOADLIBES = -lrpmbuild -lpopt -lrpm @LIBMISC@
-LDFLAGS_STATIC = @LDFLAGS_STATIC@
+maintainer-clean-rpmbinPROGRAMS:
+
+install-rpmbinPROGRAMS: $(rpmbin_PROGRAMS)
+ @$(NORMAL_INSTALL)
+ $(mkinstalldirs) $(DESTDIR)$(rpmbindir)
+ @list='$(rpmbin_PROGRAMS)'; for p in $$list; do \
+ if test -f $$p; then \
+ echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(rpmbindir)/`echo $$p|sed '$(transform)'`"; \
+ $(INSTALL_PROGRAM) $$p $(DESTDIR)$(rpmbindir)/`echo $$p|sed '$(transform)'`; \
+ else :; fi; \
+ done
-SOURCES = $(subst .o,.c,$(OBJS))
+uninstall-rpmbinPROGRAMS:
+ @$(NORMAL_UNINSTALL)
+ list='$(rpmbin_PROGRAMS)'; for p in $$list; do \
+ rm -f $(DESTDIR)$(rpmbindir)/`echo $$p|sed '$(transform)'`; \
+ done
-ifeq (.depend-done,$(wildcard .depend-done))
-TARGET=everything
-else
-TARGET=@TARGET@
-endif
+.s.o:
+ $(COMPILE) -c $<
-all: $(TARGET)
+.S.o:
+ $(COMPILE) -c $<
-rpm: lib/librpm.a build/librpmbuild.a @MISCPATH@ $(OBJS)
- $(CC) -o rpm $(LDFLAGS_STATIC) $(OBJS) $(LDFLAGS) $(LOADLIBES) $(LIBS)
+mostlyclean-compile:
+ -rm -f *.o core *.core
-rpm.shared: lib/librpm.a build/librpmbuild.a $(OBJS)
- $(CC) -o rpm.shared $(LDFLAGS) $(OBJS) $(LOADLIBES) $(LIBS)
+clean-compile:
-# we don't normally build this, so ./configure doesn't try very hard
-# to make it work
-rpmconvert: lib/librpm.a convertdb.o oldrpmdb.o
- $(CC) -o rpmconvert $(LDFLAGS) convertdb.o oldrpmdb.o -lgdbm \
- $(LOADLIBES) $(LIBS)
+distclean-compile:
+ -rm -f *.tab.c
-rpm2cpio: lib/librpm.a rpm2cpio.o
- $(CC) -o rpm2cpio $(LDFLAGS) rpm2cpio.o $(LOADLIBES) $(LIBS)
+maintainer-clean-compile:
-rpm.o: rpm.c query.h install.h lib/rpmlib.h Makefile
- $(CC) $(CFLAGS) -DRPMNLSPACKAGE=\"$(RPMNLSPACKAGE)\" \
- -DRPMNLSDIR=\"$(RPMNLSDIR)\" \
- -DVERSION=\"$(VERSION)\" \
- -DLIBRPMALIAS_FILENAME="\"$(LIBRPMALIAS_FILENAME)"\" \
- -DRPMCONFIGDIR="\"$(RPMCONFIGDIR)"\" \
- -c $(srcdir)/rpm.c
+rpm2cpio: $(rpm2cpio_OBJECTS) $(rpm2cpio_DEPENDENCIES)
+ @rm -f rpm2cpio
+ $(LINK) $(rpm2cpio_LDFLAGS) $(rpm2cpio_OBJECTS) $(rpm2cpio_LDADD) $(LIBS)
+
+rpmconvert: $(rpmconvert_OBJECTS) $(rpmconvert_DEPENDENCIES)
+ @rm -f rpmconvert
+ $(LINK) $(rpmconvert_LDFLAGS) $(rpmconvert_OBJECTS) $(rpmconvert_LDADD) $(LIBS)
+
+rpm: $(rpm_OBJECTS) $(rpm_DEPENDENCIES)
+ @rm -f rpm
+ $(LINK) $(rpm_LDFLAGS) $(rpm_OBJECTS) $(rpm_LDADD) $(LIBS)
+
+install-binSCRIPTS: $(bin_SCRIPTS)
+ @$(NORMAL_INSTALL)
+ $(mkinstalldirs) $(DESTDIR)$(bindir)
+ @list='$(bin_SCRIPTS)'; for p in $$list; do \
+ if test -f $$p; then \
+ echo " $(INSTALL_SCRIPT) $$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`"; \
+ $(INSTALL_SCRIPT) $$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
+ else if test -f $(srcdir)/$$p; then \
+ echo " $(INSTALL_SCRIPT) $(srcdir)/$$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`"; \
+ $(INSTALL_SCRIPT) $(srcdir)/$$p $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
+ else :; fi; fi; \
+ done
+
+uninstall-binSCRIPTS:
+ @$(NORMAL_UNINSTALL)
+ list='$(bin_SCRIPTS)'; for p in $$list; do \
+ rm -f $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`; \
+ done
-# these rules should be in here, but they drive me batty
-#Makefile: Makefile.in misc/Makefile.in lib/Makefile.in build/Makefile.in \
- #tools/Makefile.in po/Makefile.in config.status
- #sh ./config.status
+install-configSCRIPTS: $(config_SCRIPTS)
+ @$(NORMAL_INSTALL)
+ $(mkinstalldirs) $(DESTDIR)$(configdir)
+ @list='$(config_SCRIPTS)'; for p in $$list; do \
+ if test -f $$p; then \
+ echo " $(INSTALL_SCRIPT) $$p $(DESTDIR)$(configdir)/`echo $$p|sed '$(transform)'`"; \
+ $(INSTALL_SCRIPT) $$p $(DESTDIR)$(configdir)/`echo $$p|sed '$(transform)'`; \
+ else if test -f $(srcdir)/$$p; then \
+ echo " $(INSTALL_SCRIPT) $(srcdir)/$$p $(DESTDIR)$(configdir)/`echo $$p|sed '$(transform)'`"; \
+ $(INSTALL_SCRIPT) $(srcdir)/$$p $(DESTDIR)$(configdir)/`echo $$p|sed '$(transform)'`; \
+ else :; fi; fi; \
+ done
-#config.status: configure
- #sh ./config.status --recheck
+uninstall-configSCRIPTS:
+ @$(NORMAL_UNINSTALL)
+ list='$(config_SCRIPTS)'; for p in $$list; do \
+ rm -f $(DESTDIR)$(configdir)/`echo $$p|sed '$(transform)'`; \
+ done
-#configure: configure.in
- #cd $(srcdir); autoconf
+install-man8:
+ $(mkinstalldirs) $(DESTDIR)$(man8dir)
+ @list='$(man8_MANS)'; \
+ l2='$(man_MANS)'; for i in $$l2; do \
+ case "$$i" in \
+ *.8*) list="$$list $$i" ;; \
+ esac; \
+ done; \
+ for i in $$list; do \
+ if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
+ else file=$$i; fi; \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
+ inst=`echo $$inst | sed '$(transform)'`.$$ext; \
+ echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man8dir)/$$inst"; \
+ $(INSTALL_DATA) $$file $(DESTDIR)$(man8dir)/$$inst; \
+ done
-everything: make-subdirs $(PROGS)
+uninstall-man8:
+ @list='$(man8_MANS)'; \
+ l2='$(man_MANS)'; for i in $$l2; do \
+ case "$$i" in \
+ *.8*) list="$$list $$i" ;; \
+ esac; \
+ done; \
+ for i in $$list; do \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
+ inst=`echo $$inst | sed '$(transform)'`.$$ext; \
+ echo " rm -f $(DESTDIR)$(man8dir)/$$inst"; \
+ rm -f $(DESTDIR)$(man8dir)/$$inst; \
+ done
+install-man: $(MANS)
+ @$(NORMAL_INSTALL)
+ $(MAKE) install-man8
+uninstall-man:
+ @$(NORMAL_UNINSTALL)
+ $(MAKE) uninstall-man8
+
+install-configDATA: $(config_DATA)
+ @$(NORMAL_INSTALL)
+ $(mkinstalldirs) $(DESTDIR)$(configdir)
+ @list='$(config_DATA)'; for p in $$list; do \
+ if test -f $(srcdir)/$$p; then \
+ echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(configdir)/$$p"; \
+ $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(configdir)/$$p; \
+ else if test -f $$p; then \
+ echo " $(INSTALL_DATA) $$p $(DESTDIR)$(configdir)/$$p"; \
+ $(INSTALL_DATA) $$p $(DESTDIR)$(configdir)/$$p; \
+ fi; fi; \
+ done
-make-subdirs:
- for d in $(SUBDIRS); do \
- (cd $$d; $(MAKE)) \
- || case "$(MFLAGS)" in *k*) fail=yes;; *) exit 1;; esac;\
+uninstall-configDATA:
+ @$(NORMAL_UNINSTALL)
+ list='$(config_DATA)'; for p in $$list; do \
+ rm -f $(DESTDIR)$(configdir)/$$p; \
+ done
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+
+@SET_MAKE@
+
+all-recursive install-data-recursive install-exec-recursive \
+installdirs-recursive install-recursive uninstall-recursive \
+check-recursive installcheck-recursive info-recursive dvi-recursive:
+ @set fnord $(MAKEFLAGS); amf=$$2; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ target=`echo $@ | sed s/-recursive//`; \
+ echo "Making $$target in $$subdir"; \
+ (cd $$subdir && $(MAKE) $$target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
-newtree:
- rm -f RCS
- ln -s /usr/rhs/RCS/rpm-2.0 RCS
- for d in $(SUBDIRS) $(OTHERSUBDIRS); do \
- $(mkinstalldirs) $$d ;\
- (cd $$d; rm -f RCS; ln -s /usr/rhs/RCS/rpm-2.0/$$d RCS) \
- || case "$(MFLAGS)" in *k*) fail=yes;; *) exit 1;; esac;\
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+ @set fnord $(MAKEFLAGS); amf=$$2; \
+ rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
+ rev="$$subdir $$rev"; \
+ done; \
+ for subdir in $$rev; do \
+ target=`echo $@ | sed s/-recursive//`; \
+ echo "Making $$target in $$subdir"; \
+ (cd $$subdir && $(MAKE) $$target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ (cd $$subdir && $(MAKE) tags); \
+ done
-$(PROGS): $(OBJS)
-
-install: all
- [ -d $(installprefix)/$(RPMBINDIR) ] || \
- $(mkinstalldirs) $(installprefix)/$(RPMBINDIR)
- [ -d $(installprefix)/$(RPMNLSDIR) ] || \
- $(mkinstalldirs) $(installprefix)/$(RPMNLSDIR)
- [ -d $(installprefix)/$(BINDIR) ] || \
- $(mkinstalldirs) $(installprefix)/$(BINDIR)
- [ -d $(installprefix)/$(MANDIR) ] || \
- $(mkinstalldirs) $(installprefix)/$(MANDIR)
- [ -d $(installprefix)/$(ETCDIR) ] || \
- $(mkinstalldirs) $(installprefix)/$(ETCDIR)
- [ -d $(installprefix)/$(LIBDIR) ] || \
- $(mkinstalldirs) $(installprefix)/$(LIBDIR)
- [ -d $(installprefix)/$(INCDIR) ] || \
- $(mkinstalldirs) $(installprefix)/$(INCDIR)
- [ -d $(installprefix)/$(RPMCONFIGDIR) ] || \
- $(mkinstalldirs) $(installprefix)/$(RPMCONFIGDIR)
- if [ -x ./rpm ]; then \
- $(INSTALL_PROGRAM) -s -m 755 rpm $(installprefix)/$(RPMBINDIR); \
- else \
- $(INSTALL_PROGRAM) -s -m 755 rpm.shared $(installprefix)/$(RPMBINDIR)/rpm; \
- fi
- $(INSTALL_PROGRAM) -m 755 $(srcdir)/gendiff $(installprefix)/$(BINDIR)
- $(INSTALL_PROGRAM) -m 755 $(topdir)/mkinstalldirs $(installprefix)/$(RPMCONFIGDIR)/mkinstalldirs
- $(INSTALL_PROGRAM) -m 755 $(topdir)/find-provides.sh $(installprefix)/$(RPMCONFIGDIR)/find-provides
- $(INSTALL_PROGRAM) -m 755 $(topdir)/find-requires.sh $(installprefix)/$(RPMCONFIGDIR)/find-requires
- $(INSTALL_PROGRAM) -s -m 755 rpm2cpio $(installprefix)/$(BINDIR)
- $(INSTALL_DATA) -m 644 $(srcdir)/rpm.8 $(installprefix)/$(MANDIR)
- $(INSTALL_DATA) -m 644 $(srcdir)/rpm2cpio.8 $(installprefix)/$(MANDIR)
- $(INSTALL_DATA) -m 644 $(topdir)/macros $(installprefix)/$(RPMCONFIGDIR)/macros
- $(INSTALL_DATA) -m 644 $(topdir)/lib-rpmrc $(installprefix)/$(RPMCONFIGDIR)/rpmrc
- $(INSTALL_DATA) -m 644 $(srcdir)/rpmpopt $(installprefix)/$(RPMCONFIGDIR)/rpmpopt
- (cd $(installprefix)/$(LIBDIR); rm -f rpmrc; ln -s $(RPMCONFIGDIR)/rpmrc)
- (cd $(installprefix)/$(LIBDIR); rm -f rpmpopt; ln -s $(RPMCONFIGDIR)/rpmpopt)
- (cd lib; $(MAKE) LIBDIR=$(installprefix)/$(LIBDIR) INCDIR=$(installprefix)/$(INCDIR) install)
- (cd build; $(MAKE) LIBDIR=$(installprefix)/$(LIBDIR) INCDIR=$(installprefix)/$(INCDIR) install)
- for d in $(INSTSUBDIRS); do \
- (cd $$d; $(MAKE) installprefix=$(installprefix) LIBDIR=$(installprefix)/$(LIBDIR) INCDIR=$(installprefix)/$(INCDIR) install) ;\
+tags: TAGS
+
+ID: $(HEADERS) $(SOURCES) $(LISP)
+ here=`pwd` && cd $(srcdir) \
+ && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
+ done; \
+ list='$(SOURCES) $(HEADERS)'; \
+ unique=`for i in $$list; do echo $$i; done | \
+ awk ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(ETAGS_ARGS)config.h.in$$unique$(LISP)$$tags" \
+ || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) -o $$here/TAGS)
+
+mostlyclean-tags:
+
+clean-tags:
+
+distclean-tags:
+ -rm -f TAGS ID
+
+maintainer-clean-tags:
+
+distdir = $(PACKAGE)-$(VERSION)
+top_distdir = $(distdir)
+
+# This target untars the dist file and tries a VPATH configuration. Then
+# it guarantees that the distribution is self-contained by making another
+# tarfile.
+distcheck: dist
+ -rm -rf $(distdir)
+ GZIP=$(GZIP) $(TAR) zxf $(distdir).tar.gz
+ mkdir $(distdir)/=build
+ mkdir $(distdir)/=inst
+ dc_install_base=`cd $(distdir)/=inst && pwd`; \
+ cd $(distdir)/=build \
+ && ../configure --with-included-gettext --srcdir=.. --prefix=$$dc_install_base \
+ && $(MAKE) \
+ && $(MAKE) dvi \
+ && $(MAKE) check \
+ && $(MAKE) install \
+ && $(MAKE) installcheck \
+ && $(MAKE) dist
+ -rm -rf $(distdir)
+ @echo "========================"; \
+ echo "$(distdir).tar.gz is ready for distribution"; \
+ echo "========================"
+dist: distdir
+ -chmod -R a+r $(distdir)
+ GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir)
+ -rm -rf $(distdir)
+dist-all: distdir
+ -chmod -R a+r $(distdir)
+ GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir)
+ -rm -rf $(distdir)
+distdir: $(DISTFILES)
+ -rm -rf $(distdir)
+ mkdir $(distdir)
+ -chmod 777 $(distdir)
+ here=`cd $(top_builddir) && pwd`; \
+ top_distdir=`cd $(distdir) && pwd`; \
+ distdir=`cd $(distdir) && pwd`; \
+ cd $(top_srcdir) \
+ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ test -f $(distdir)/$$file \
+ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
+ || cp -p $$d/$$file $(distdir)/$$file; \
done
+ for subdir in $(SUBDIRS); do \
+ test -d $(distdir)/$$subdir \
+ || mkdir $(distdir)/$$subdir \
+ || exit 1; \
+ chmod 777 $(distdir)/$$subdir; \
+ (cd $$subdir && $(MAKE) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \
+ || exit 1; \
+ done
+
+DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
+-include $(DEP_FILES)
+
+mostlyclean-depend:
+
+clean-depend:
+
+distclean-depend:
+
+maintainer-clean-depend:
+ -rm -rf .deps
+
+%.o: %.c
+ @echo '$(COMPILE) -c $<'; \
+ $(COMPILE) -Wp,-MD,.deps/$(*F).P -c $<
+
+%.lo: %.c
+ @echo '$(LTCOMPILE) -c $<'; \
+ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).p -c $<
+ @-sed -e 's/^\([^:]*\)\.o:/\1.lo \1.o:/' \
+ < .deps/$(*F).p > .deps/$(*F).P
+ @-rm -f .deps/$(*F).p
+info: info-recursive
+dvi: dvi-recursive
+check: all-am
+ $(MAKE) check-recursive
+installcheck: installcheck-recursive
+all-recursive-am: config.h
+ $(MAKE) all-recursive
+
+all-am: Makefile $(PROGRAMS) $(SCRIPTS) $(MANS) $(DATA) $(HEADERS) config.h
+
+install-exec-am: install-binPROGRAMS install-binSCRIPTS
+
+install-data-am: install-rpmbinPROGRAMS install-configSCRIPTS install-man install-configDATA install-data-local
+
+uninstall-am: uninstall-binPROGRAMS uninstall-rpmbinPROGRAMS uninstall-binSCRIPTS uninstall-configSCRIPTS uninstall-man uninstall-configDATA
+
+install-exec: install-exec-recursive install-exec-am
+ @$(NORMAL_INSTALL)
+
+install-data: install-data-recursive install-data-am
+ @$(NORMAL_INSTALL)
+
+install: install-recursive install-exec-am install-data-am
+ @:
+
+uninstall: uninstall-recursive uninstall-am
+
+install-strip:
+ $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install
+installdirs: installdirs-recursive
+ $(mkinstalldirs) $(DATADIR)$(bindir) $(DATADIR)$(rpmbindir) \
+ $(DATADIR)$(bindir) $(DATADIR)$(configdir) \
+ $(DESTDIR)$(mandir)/man8 $(DATADIR)$(configdir)
+
+
+mostlyclean-generic:
+ -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -rm -f Makefile $(DISTCLEANFILES)
+ -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+ -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+mostlyclean-am: mostlyclean-hdr mostlyclean-binPROGRAMS \
+ mostlyclean-noinstPROGRAMS mostlyclean-rpmbinPROGRAMS \
+ mostlyclean-compile mostlyclean-tags mostlyclean-depend \
+ mostlyclean-generic
+
+clean-am: clean-hdr clean-binPROGRAMS clean-noinstPROGRAMS \
+ clean-rpmbinPROGRAMS clean-compile clean-tags \
+ clean-depend clean-generic mostlyclean-am
+
+distclean-am: distclean-hdr distclean-binPROGRAMS \
+ distclean-noinstPROGRAMS distclean-rpmbinPROGRAMS \
+ distclean-compile distclean-tags distclean-depend \
+ distclean-generic clean-am
+
+maintainer-clean-am: maintainer-clean-hdr maintainer-clean-binPROGRAMS \
+ maintainer-clean-noinstPROGRAMS \
+ maintainer-clean-rpmbinPROGRAMS \
+ maintainer-clean-compile maintainer-clean-tags \
+ maintainer-clean-depend maintainer-clean-generic \
+ distclean-am
+
+mostlyclean: mostlyclean-recursive mostlyclean-am
+
+clean: clean-recursive clean-am
+
+distclean: distclean-recursive distclean-am
+ -rm -f config.status
+
+maintainer-clean: maintainer-clean-recursive maintainer-clean-am
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+ -rm -f config.status
+
+.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \
+mostlyclean-binPROGRAMS distclean-binPROGRAMS clean-binPROGRAMS \
+maintainer-clean-binPROGRAMS uninstall-binPROGRAMS install-binPROGRAMS \
+mostlyclean-noinstPROGRAMS distclean-noinstPROGRAMS \
+clean-noinstPROGRAMS maintainer-clean-noinstPROGRAMS \
+mostlyclean-rpmbinPROGRAMS distclean-rpmbinPROGRAMS \
+clean-rpmbinPROGRAMS maintainer-clean-rpmbinPROGRAMS \
+uninstall-rpmbinPROGRAMS install-rpmbinPROGRAMS mostlyclean-compile \
+distclean-compile clean-compile maintainer-clean-compile \
+uninstall-binSCRIPTS install-binSCRIPTS uninstall-configSCRIPTS \
+install-configSCRIPTS install-man8 uninstall-man8 install-man \
+uninstall-man uninstall-configDATA install-configDATA \
+install-data-recursive uninstall-data-recursive install-exec-recursive \
+uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \
+all-recursive check-recursive installcheck-recursive info-recursive \
+dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \
+maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
+distclean-tags clean-tags maintainer-clean-tags distdir \
+mostlyclean-depend distclean-depend clean-depend \
+maintainer-clean-depend info dvi installcheck all-recursive-am all-am \
+install-exec-am install-data-am uninstall-am install-exec install-data \
+install uninstall all installdirs mostlyclean-generic distclean-generic \
+clean-generic maintainer-clean-generic clean mostlyclean distclean \
+maintainer-clean
+
+
+rpm.o:
+ $(COMPILE) \
+ -DRPMNLSDIR=\"$(RPMNLSDIR)\" \
+ -DRPMNLSPACKAGE=\"$(PACKAGE)\" \
+ -DVERSION=\"$(VERSION)\" \
+ -DLIBRPMALIAS_FILENAME=\"$(LIBRPMALIAS_FILENAME)\" \
+ -DRPMCONFIGDIR="\"$(RPMCONFIGDIR)"\" \
+ -c rpm.c
+
+include ./Makefile.inc
+
+install-data-local:
+ ln -s rpm/rpmrc $(libdir)/rpmrc
+ ln -s rpm/rpmpopt $(libdir)/rpmpopt
+
+# FIXME: these should be generated in configure.in
+find-requires: find-requires.sh
+ cp $< $@
+find-provides: find-provides.sh
+ cp $< $@
+rpmrc: lib-rpmrc
+ cp $< $@
+
+# FIXME: these should be checked
.PHONY: tar
tar:
rm -rf /tmp/rpm-$(VERSION)
make installprefix=/tmp/rpm-$(VERSION)$(ROOT) install
- $(mkinstalldirs) /tmp/rpm-$(VERSION)@prefix@/src/redhat/SOURCES
- $(mkinstalldirs) /tmp/rpm-$(VERSION)@prefix@/src/redhat/SPECS
- $(mkinstalldirs) /tmp/rpm-$(VERSION)@prefix@/src/redhat/SRPMS
- $(mkinstalldirs) /tmp/rpm-$(VERSION)@prefix@/src/redhat/RPMS
- $(mkinstalldirs) /tmp/rpm-$(VERSION)@prefix@/src/redhat/BUILD
- $(mkinstalldirs) /tmp/rpm-$(VERSION)@varprefix@/lib/rpm
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/SOURCES
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/SPECS
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/SRPMS
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/RPMS
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/BUILD
+ $(mkinstalldirs) /tmp/rpm-$(VERSION)/var/local/lib/rpm
$(mkinstalldirs) /tmp/rpm-$(VERSION)/var/tmp
# Couldn't figure de ARCH value
# $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/RPMS/i386
cd /tmp/rpm-$(VERSION) ; tar cvf /tmp/rpm-$(VERSION).tar .
-.PHONY: clean
-clean:
- for d in $(ALLSUBDIRS); do \
- (cd $$d; $(MAKE) $@) ;\
- done
- rm -f *.a *.o core *~ $(PROGS) rpm.shared
- find . -name "*.orig" -exec rm {} \;
- find . -name core -exec rm {} \;
-
-.PHONY: distclean
-distclean:
- for d in $(ALLSUBDIRS); do \
- (cd $$d; $(MAKE) $@) ;\
- done
- rm -f *.a *.o core *~ $(PROGS) rpm.shared librpmrc find-provides.sh find-requires.sh
- rm -f .depend-done Makefile Makefile.inc config.h config.cache
- rm -f config.status config.log lib-rpmrc
-
-
-.PHONY: depend
-depend:
- topdir_path=`( cd $(top_srcdir) && pwd )` ; \
- /bin/rm -f .depend ; \
- $(CPP) -MM $(CFLAGS) $(srcdir)/$(SOURCES) | \
- sed s+$$topdir_path+$(top_srcdir)+g > .depend ; \
- for d in $(ALLSUBDIRS); do \
- (cd $$d; $(MAKE) $@) ;\
- done
- /bin/rm -f .depend-done
- echo > .depend-done
-
.PHONY: noconfig
noconfig:
find . -name "Makefile" -exec rm {} \;
@@ -217,6 +748,6 @@ archive:
@echo " "
@echo "The final archive is ./rpm-$(VERSION).tar.gz."
-ifeq (.depend,$(wildcard .depend))
-include .depend
-endif
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/acconfig.h b/acconfig.h
index 36f042cbb..adde4231d 100644
--- a/acconfig.h
+++ b/acconfig.h
@@ -1,3 +1,34 @@
+/* acconfig.h
+ This file is in the public domain.
+
+ Descriptive text for the C preprocessor macros that
+ the distributed Autoconf macros can define.
+ No software package will use all of them; autoheader copies the ones
+ your configure.in uses into your configuration header file templates.
+
+ The entries are in sort -df order: alphabetical, case insensitive,
+ ignoring punctuation (such as underscores). Although this order
+ can split up related entries, it makes it easier to check whether
+ a given entry is in the file.
+
+ Leave the following blank line there!! Autoheader needs it. */
+^L
+
+/* Define to 1 if NLS is requested. */
+#undef ENABLE_NLS
+
+/* Define as 1 if you have catgets and don't want to use GNU gettext. */
+#undef HAVE_CATGETS
+
+/* Define as 1 if you have gettext and don't want to use GNU gettext. */
+#undef HAVE_GETTEXT
+
+/* Define if your locale.h file contains LC_MESSAGES. */
+#undef HAVE_LC_MESSAGES
+
+/* Define to 1 if you have the stpcpy function. */
+#undef HAVE_STPCPY
+
/* Define as 1 if you have inet_aton() */
#undef HAVE_INET_ATON
@@ -49,3 +80,10 @@
/* define this to be whatever root's primary group is, in double quotes */
#undef ROOT_GROUP
+
+^L
+/* Leave that blank line there!! Autoheader needs it.
+ If you're adding to this file, keep in mind:
+ The entries are in sort -df order: alphabetical, case insensitive,
+ ignoring punctuation (such as underscores). */
+
diff --git a/aclocal.m4 b/aclocal.m4
new file mode 100644
index 000000000..3a6b95298
--- /dev/null
+++ b/aclocal.m4
@@ -0,0 +1,630 @@
+dnl aclocal.m4 generated automatically by aclocal 1.3
+
+dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+dnl This Makefile.in is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+dnl PARTICULAR PURPOSE.
+
+# Like AC_CONFIG_HEADER, but automatically create stamp file.
+
+AC_DEFUN(AM_CONFIG_HEADER,
+[AC_PREREQ([2.12])
+AC_CONFIG_HEADER([$1])
+dnl When config.status generates a header, we must update the stamp-h file.
+dnl This file resides in the same directory as the config header
+dnl that is generated. We must strip everything past the first ":",
+dnl and everything past the last "/".
+AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
+ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
+<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
+<<am_indx=1
+for am_file in <<$1>>; do
+ case " <<$>>CONFIG_HEADERS " in
+ *" <<$>>am_file "*<<)>>
+ echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
+ ;;
+ esac
+ am_indx=`expr "<<$>>am_indx" + 1`
+done<<>>dnl>>)
+changequote([,]))])
+
+# Do all the work for Automake. This macro actually does too much --
+# some checks are only needed if your package does certain things.
+# But this isn't really a big deal.
+
+# serial 1
+
+dnl Usage:
+dnl AM_INIT_AUTOMAKE(package,version, [no-define])
+
+AC_DEFUN(AM_INIT_AUTOMAKE,
+[AC_REQUIRE([AM_PROG_INSTALL])
+PACKAGE=[$1]
+AC_SUBST(PACKAGE)
+VERSION=[$2]
+AC_SUBST(VERSION)
+dnl test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
+ AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
+fi
+ifelse([$3],,
+AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
+AC_DEFINE_UNQUOTED(VERSION, "$VERSION"))
+AC_REQUIRE([AM_SANITY_CHECK])
+AC_REQUIRE([AC_ARG_PROGRAM])
+dnl FIXME This is truly gross.
+missing_dir=`cd $ac_aux_dir && pwd`
+AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
+AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
+AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
+AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
+AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
+AC_REQUIRE([AC_PROG_MAKE_SET])])
+
+
+# serial 1
+
+AC_DEFUN(AM_PROG_INSTALL,
+[AC_REQUIRE([AC_PROG_INSTALL])
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
+AC_SUBST(INSTALL_SCRIPT)dnl
+])
+
+#
+# Check to make sure that the build environment is sane.
+#
+
+AC_DEFUN(AM_SANITY_CHECK,
+[AC_MSG_CHECKING([whether build environment is sane])
+# Just in case
+sleep 1
+echo timestamp > conftestfile
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments. Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+ set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
+ if test "[$]*" = "X"; then
+ # -L didn't work.
+ set X `ls -t $srcdir/configure conftestfile`
+ fi
+ if test "[$]*" != "X $srcdir/configure conftestfile" \
+ && test "[$]*" != "X conftestfile $srcdir/configure"; then
+
+ # If neither matched, then we have a broken ls. This can happen
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
+ # broken ls alias from the environment. This has actually
+ # happened. Such a system could not be considered "sane".
+ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
+alias in your environment])
+ fi
+
+ test "[$]2" = conftestfile
+ )
+then
+ # Ok.
+ :
+else
+ AC_MSG_ERROR([newly created file is older than distributed files!
+Check your system clock])
+fi
+rm -f conftest*
+AC_MSG_RESULT(yes)])
+
+dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
+dnl The program must properly implement --version.
+AC_DEFUN(AM_MISSING_PROG,
+[AC_MSG_CHECKING(for working $2)
+# Run test in a subshell; some versions of sh will print an error if
+# an executable is not found, even if stderr is redirected.
+# Redirect stdin to placate older versions of autoconf. Sigh.
+if ($2 --version) < /dev/null > /dev/null 2>&1; then
+ $1=$2
+ AC_MSG_RESULT(found)
+else
+ $1="$3/missing $2"
+ AC_MSG_RESULT(missing)
+fi
+AC_SUBST($1)])
+
+
+# serial 1
+
+AC_DEFUN(AM_C_PROTOTYPES,
+[AC_REQUIRE([AM_PROG_CC_STDC])
+AC_REQUIRE([AC_PROG_CPP])
+AC_MSG_CHECKING([for function prototypes])
+if test "$am_cv_prog_cc_stdc" != no; then
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(PROTOTYPES)
+ U= ANSI2KNR=
+else
+ AC_MSG_RESULT(no)
+ U=_ ANSI2KNR=./ansi2knr
+ # Ensure some checks needed by ansi2knr itself.
+ AC_HEADER_STDC
+ AC_CHECK_HEADERS(string.h)
+fi
+AC_SUBST(U)dnl
+AC_SUBST(ANSI2KNR)dnl
+])
+
+
+# serial 1
+
+# @defmac AC_PROG_CC_STDC
+# @maindex PROG_CC_STDC
+# @ovindex CC
+# If the C compiler in not in ANSI C mode by default, try to add an option
+# to output variable @code{CC} to make it so. This macro tries various
+# options that select ANSI C on some system or another. It considers the
+# compiler to be in ANSI C mode if it handles function prototypes correctly.
+#
+# If you use this macro, you should check after calling it whether the C
+# compiler has been set to accept ANSI C; if not, the shell variable
+# @code{am_cv_prog_cc_stdc} is set to @samp{no}. If you wrote your source
+# code in ANSI C, you can make an un-ANSIfied copy of it by using the
+# program @code{ansi2knr}, which comes with Ghostscript.
+# @end defmac
+
+AC_DEFUN(AM_PROG_CC_STDC,
+[AC_REQUIRE([AC_PROG_CC])
+AC_BEFORE([$0], [AC_C_INLINE])
+AC_BEFORE([$0], [AC_C_CONST])
+dnl Force this before AC_PROG_CPP. Some cpp's, eg on HPUX, require
+dnl a magic option to avoid problems with ANSI preprocessor commands
+dnl like #elif.
+dnl FIXME: can't do this because then AC_AIX won't work due to a
+dnl circular dependency.
+dnl AC_BEFORE([$0], [AC_PROG_CPP])
+AC_MSG_CHECKING(for ${CC-cc} option to accept ANSI C)
+AC_CACHE_VAL(am_cv_prog_cc_stdc,
+[am_cv_prog_cc_stdc=no
+ac_save_CC="$CC"
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX -qlanglvl=ansi
+# Ultrix and OSF/1 -std1
+# HP-UX -Aa -D_HPUX_SOURCE
+# SVR4 -Xc -D__EXTENSIONS__
+for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+ CC="$ac_save_CC $ac_arg"
+ AC_TRY_COMPILE(
+[#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+ char **p;
+ int i;
+{
+ return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+ char *s;
+ va_list v;
+ va_start (v,p);
+ s = g (p, va_arg (v,int));
+ va_end (v);
+ return s;
+}
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
+int argc;
+char **argv;
+], [
+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
+],
+[am_cv_prog_cc_stdc="$ac_arg"; break])
+done
+CC="$ac_save_CC"
+])
+if test -z "$am_cv_prog_cc_stdc"; then
+ AC_MSG_RESULT([none needed])
+else
+ AC_MSG_RESULT($am_cv_prog_cc_stdc)
+fi
+case "x$am_cv_prog_cc_stdc" in
+ x|xno) ;;
+ *) CC="$CC $am_cv_prog_cc_stdc" ;;
+esac
+])
+
+# Macro to add for using GNU gettext.
+# Ulrich Drepper <drepper@cygnus.com>, 1995.
+#
+# This file can be copied and used freely without restrictions. It can
+# be used in projects which are not available under the GNU Public License
+# but which still want to provide support for the GNU gettext functionality.
+# Please note that the actual code is *not* freely available.
+
+# serial 5
+
+AC_DEFUN(AM_WITH_NLS,
+ [AC_MSG_CHECKING([whether NLS is requested])
+ dnl Default is enabled NLS
+ AC_ARG_ENABLE(nls,
+ [ --disable-nls do not use Native Language Support],
+ USE_NLS=$enableval, USE_NLS=yes)
+ AC_MSG_RESULT($USE_NLS)
+ AC_SUBST(USE_NLS)
+
+ USE_INCLUDED_LIBINTL=no
+
+ dnl If we use NLS figure out what method
+ if test "$USE_NLS" = "yes"; then
+ AC_DEFINE(ENABLE_NLS)
+ AC_MSG_CHECKING([whether included gettext is requested])
+ AC_ARG_WITH(included-gettext,
+ [ --with-included-gettext use the GNU gettext library included here],
+ nls_cv_force_use_gnu_gettext=$withval,
+ nls_cv_force_use_gnu_gettext=no)
+ AC_MSG_RESULT($nls_cv_force_use_gnu_gettext)
+
+ nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
+ if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
+ dnl User does not insist on using GNU NLS library. Figure out what
+ dnl to use. If gettext or catgets are available (in this order) we
+ dnl use this. Else we have to fall back to GNU NLS library.
+ dnl catgets is only used if permitted by option --with-catgets.
+ nls_cv_header_intl=
+ nls_cv_header_libgt=
+ CATOBJEXT=NONE
+
+ AC_CHECK_HEADER(libintl.h,
+ [AC_CACHE_CHECK([for gettext in libc], gt_cv_func_gettext_libc,
+ [AC_TRY_LINK([#include <libintl.h>], [return (int) gettext ("")],
+ gt_cv_func_gettext_libc=yes, gt_cv_func_gettext_libc=no)])
+
+ if test "$gt_cv_func_gettext_libc" != "yes"; then
+ AC_CHECK_LIB(intl, bindtextdomain,
+ [AC_CACHE_CHECK([for gettext in libintl],
+ gt_cv_func_gettext_libintl,
+ [AC_CHECK_LIB(intl, gettext,
+ gt_cv_func_gettext_libintl=yes,
+ gt_cv_func_gettext_libintl=no)],
+ gt_cv_func_gettext_libintl=no)])
+ fi
+
+ if test "$gt_cv_func_gettext_libc" = "yes" \
+ || test "$gt_cv_func_gettext_libintl" = "yes"; then
+ AC_DEFINE(HAVE_GETTEXT)
+ AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
+ [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
+ if test "$MSGFMT" != "no"; then
+ AC_CHECK_FUNCS(dcgettext)
+ AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
+ AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
+ [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
+ AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
+ return _nl_msg_cat_cntr],
+ [CATOBJEXT=.gmo
+ DATADIRNAME=share],
+ [CATOBJEXT=.mo
+ DATADIRNAME=lib])
+ INSTOBJEXT=.mo
+ fi
+ fi
+ ])
+
+ if test "$CATOBJEXT" = "NONE"; then
+ AC_MSG_CHECKING([whether catgets can be used])
+ AC_ARG_WITH(catgets,
+ [ --with-catgets use catgets functions if available],
+ nls_cv_use_catgets=$withval, nls_cv_use_catgets=no)
+ AC_MSG_RESULT($nls_cv_use_catgets)
+
+ if test "$nls_cv_use_catgets" = "yes"; then
+ dnl No gettext in C library. Try catgets next.
+ AC_CHECK_LIB(i, main)
+ AC_CHECK_FUNC(catgets,
+ [AC_DEFINE(HAVE_CATGETS)
+ INTLOBJS="\$(CATOBJS)"
+ AC_PATH_PROG(GENCAT, gencat, no)dnl
+ if test "$GENCAT" != "no"; then
+ AC_PATH_PROG(GMSGFMT, gmsgfmt, no)
+ if test "$GMSGFMT" = "no"; then
+ AM_PATH_PROG_WITH_TEST(GMSGFMT, msgfmt,
+ [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)
+ fi
+ AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
+ [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
+ USE_INCLUDED_LIBINTL=yes
+ CATOBJEXT=.cat
+ INSTOBJEXT=.cat
+ DATADIRNAME=lib
+ INTLDEPS='$(top_builddir)/intl/libintl.a'
+ INTLLIBS=$INTLDEPS
+ LIBS=`echo $LIBS | sed -e 's/-lintl//'`
+ nls_cv_header_intl=intl/libintl.h
+ nls_cv_header_libgt=intl/libgettext.h
+ fi])
+ fi
+ fi
+
+ if test "$CATOBJEXT" = "NONE"; then
+ dnl Neither gettext nor catgets in included in the C library.
+ dnl Fall back on GNU gettext library.
+ nls_cv_use_gnu_gettext=yes
+ fi
+ fi
+
+ if test "$nls_cv_use_gnu_gettext" = "yes"; then
+ dnl Mark actions used to generate GNU NLS library.
+ INTLOBJS="\$(GETTOBJS)"
+ AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
+ [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], msgfmt)
+ AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
+ AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
+ [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
+ AC_SUBST(MSGFMT)
+ USE_INCLUDED_LIBINTL=yes
+ CATOBJEXT=.gmo
+ INSTOBJEXT=.mo
+ DATADIRNAME=share
+ INTLDEPS='$(top_builddir)/intl/libintl.a'
+ INTLLIBS=$INTLDEPS
+ LIBS=`echo $LIBS | sed -e 's/-lintl//'`
+ nls_cv_header_intl=intl/libintl.h
+ nls_cv_header_libgt=intl/libgettext.h
+ fi
+
+ dnl Test whether we really found GNU xgettext.
+ if test "$XGETTEXT" != ":"; then
+ dnl If it is no GNU xgettext we define it as : so that the
+ dnl Makefiles still can work.
+ if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
+ : ;
+ else
+ AC_MSG_RESULT(
+ [found xgettext program is not GNU xgettext; ignore it])
+ XGETTEXT=":"
+ fi
+ fi
+
+ # We need to process the po/ directory.
+ POSUB=po
+ else
+ DATADIRNAME=share
+ nls_cv_header_intl=intl/libintl.h
+ nls_cv_header_libgt=intl/libgettext.h
+ fi
+ AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
+ AC_OUTPUT_COMMANDS(
+ [case "$CONFIG_FILES" in *po/Makefile.in*)
+ sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
+ esac])
+
+
+ # If this is used in GNU gettext we have to set USE_NLS to `yes'
+ # because some of the sources are only built for this goal.
+ if test "$PACKAGE" = gettext; then
+ USE_NLS=yes
+ USE_INCLUDED_LIBINTL=yes
+ fi
+
+ dnl These rules are solely for the distribution goal. While doing this
+ dnl we only have to keep exactly one list of the available catalogs
+ dnl in configure.in.
+ for lang in $ALL_LINGUAS; do
+ GMOFILES="$GMOFILES $lang.gmo"
+ POFILES="$POFILES $lang.po"
+ done
+
+ dnl Make all variables we use known to autoconf.
+ AC_SUBST(USE_INCLUDED_LIBINTL)
+ AC_SUBST(CATALOGS)
+ AC_SUBST(CATOBJEXT)
+ AC_SUBST(DATADIRNAME)
+ AC_SUBST(GMOFILES)
+ AC_SUBST(INSTOBJEXT)
+ AC_SUBST(INTLDEPS)
+ AC_SUBST(INTLLIBS)
+ AC_SUBST(INTLOBJS)
+ AC_SUBST(POFILES)
+ AC_SUBST(POSUB)
+ ])
+
+AC_DEFUN(AM_GNU_GETTEXT,
+ [AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+ AC_REQUIRE([AC_PROG_CC])dnl
+ AC_REQUIRE([AC_PROG_RANLIB])dnl
+ AC_REQUIRE([AC_ISC_POSIX])dnl
+ AC_REQUIRE([AC_HEADER_STDC])dnl
+ AC_REQUIRE([AC_C_CONST])dnl
+ AC_REQUIRE([AC_C_INLINE])dnl
+ AC_REQUIRE([AC_TYPE_OFF_T])dnl
+ AC_REQUIRE([AC_TYPE_SIZE_T])dnl
+ AC_REQUIRE([AC_FUNC_ALLOCA])dnl
+ AC_REQUIRE([AC_FUNC_MMAP])dnl
+
+ AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h string.h \
+unistd.h sys/param.h])
+ AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \
+strdup __argz_count __argz_stringify __argz_next])
+
+ if test "${ac_cv_func_stpcpy+set}" != "set"; then
+ AC_CHECK_FUNCS(stpcpy)
+ fi
+ if test "${ac_cv_func_stpcpy}" = "yes"; then
+ AC_DEFINE(HAVE_STPCPY)
+ fi
+
+ AM_LC_MESSAGES
+ AM_WITH_NLS
+
+ if test "x$CATOBJEXT" != "x"; then
+ if test "x$ALL_LINGUAS" = "x"; then
+ LINGUAS=
+ else
+ AC_MSG_CHECKING(for catalogs to be installed)
+ NEW_LINGUAS=
+ for lang in ${LINGUAS=$ALL_LINGUAS}; do
+ case "$ALL_LINGUAS" in
+ *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;;
+ esac
+ done
+ LINGUAS=$NEW_LINGUAS
+ AC_MSG_RESULT($LINGUAS)
+ fi
+
+ dnl Construct list of names of catalog files to be constructed.
+ if test -n "$LINGUAS"; then
+ for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
+ fi
+ fi
+
+ dnl The reference to <locale.h> in the installed <libintl.h> file
+ dnl must be resolved because we cannot expect the users of this
+ dnl to define HAVE_LOCALE_H.
+ if test $ac_cv_header_locale_h = yes; then
+ INCLUDE_LOCALE_H="#include <locale.h>"
+ else
+ INCLUDE_LOCALE_H="\
+/* The system does not provide the header <locale.h>. Take care yourself. */"
+ fi
+ AC_SUBST(INCLUDE_LOCALE_H)
+
+ dnl Determine which catalog format we have (if any is needed)
+ dnl For now we know about two different formats:
+ dnl Linux libc-5 and the normal X/Open format
+ test -d intl || mkdir intl
+ if test "$CATOBJEXT" = ".cat"; then
+ AC_CHECK_HEADER(linux/version.h, msgformat=linux, msgformat=xopen)
+
+ dnl Transform the SED scripts while copying because some dumb SEDs
+ dnl cannot handle comments.
+ sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed
+ fi
+ dnl po2tbl.sed is always needed.
+ sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \
+ $srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed
+
+ dnl In the intl/Makefile.in we have a special dependency which makes
+ dnl only sense for gettext. We comment this out for non-gettext
+ dnl packages.
+ if test "$PACKAGE" = "gettext"; then
+ GT_NO="#NO#"
+ GT_YES=
+ else
+ GT_NO=
+ GT_YES="#YES#"
+ fi
+ AC_SUBST(GT_NO)
+ AC_SUBST(GT_YES)
+
+ dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
+ dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
+ dnl Try to locate is.
+ MKINSTALLDIRS=
+ if test -n "$ac_aux_dir"; then
+ MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
+ fi
+ if test -z "$MKINSTALLDIRS"; then
+ MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
+ fi
+ AC_SUBST(MKINSTALLDIRS)
+
+ dnl *** For now the libtool support in intl/Makefile is not for real.
+ l=
+ AC_SUBST(l)
+
+ dnl Generate list of files to be processed by xgettext which will
+ dnl be included in po/Makefile.
+ test -d po || mkdir po
+ if test "x$srcdir" != "x."; then
+ if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
+ posrcprefix="$srcdir/"
+ else
+ posrcprefix="../$srcdir/"
+ fi
+ else
+ posrcprefix="../"
+ fi
+ rm -f po/POTFILES
+ sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
+ < $srcdir/po/POTFILES.in > po/POTFILES
+ ])
+
+# Search path for a program which passes the given test.
+# Ulrich Drepper <drepper@cygnus.com>, 1996.
+#
+# This file can be copied and used freely without restrictions. It can
+# be used in projects which are not available under the GNU Public License
+# but which still want to provide support for the GNU gettext functionality.
+# Please note that the actual code is *not* freely available.
+
+# serial 1
+
+dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
+dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
+AC_DEFUN(AM_PATH_PROG_WITH_TEST,
+[# Extract the first word of "$2", so it can be a program name with args.
+set dummy $2; ac_word=[$]2
+AC_MSG_CHECKING([for $ac_word])
+AC_CACHE_VAL(ac_cv_path_$1,
+[case "[$]$1" in
+ /*)
+ ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
+ ;;
+ *)
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
+ for ac_dir in ifelse([$5], , $PATH, [$5]); do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ if [$3]; then
+ ac_cv_path_$1="$ac_dir/$ac_word"
+ break
+ fi
+ fi
+ done
+ IFS="$ac_save_ifs"
+dnl If no 4th arg is given, leave the cache variable unset,
+dnl so AC_PATH_PROGS will keep looking.
+ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
+])dnl
+ ;;
+esac])dnl
+$1="$ac_cv_path_$1"
+if test -n "[$]$1"; then
+ AC_MSG_RESULT([$]$1)
+else
+ AC_MSG_RESULT(no)
+fi
+AC_SUBST($1)dnl
+])
+
+# Check whether LC_MESSAGES is available in <locale.h>.
+# Ulrich Drepper <drepper@cygnus.com>, 1995.
+#
+# This file can be copied and used freely without restrictions. It can
+# be used in projects which are not available under the GNU Public License
+# but which still want to provide support for the GNU gettext functionality.
+# Please note that the actual code is *not* freely available.
+
+# serial 1
+
+AC_DEFUN(AM_LC_MESSAGES,
+ [if test $ac_cv_header_locale_h = yes; then
+ AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
+ [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
+ am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
+ if test $am_cv_val_LC_MESSAGES = yes; then
+ AC_DEFINE(HAVE_LC_MESSAGES)
+ fi
+ fi])
+
diff --git a/build/.cvsignore b/build/.cvsignore
index 5dae353d9..7401f9d96 100644
--- a/build/.cvsignore
+++ b/build/.cvsignore
@@ -1,2 +1,3 @@
+.deps
.depend
Makefile
diff --git a/build/Makefile.am b/build/Makefile.am
new file mode 100644
index 000000000..1f44c958b
--- /dev/null
+++ b/build/Makefile.am
@@ -0,0 +1,23 @@
+# Makefile for rpmbuild library.
+
+AUTOMAKE_OPTIONS = 1.3 foreign
+
+INCLUDES = -I../lib @INCPATH@
+
+include_HEADERS = rpmbuild.h rpmspec.h
+noinst_HEADERS = buildio.h myftw.h
+
+lib_LIBRARIES = librpmbuild.a
+librpmbuild_a_SOURCES = \
+ build.c expression.c files.c misc.c myftw.c names.c pack.c \
+ parseBuildInstallClean.c parseChangelog.c parseDescription.c \
+ parseFiles.c parsePreamble.c parsePrep.c parseReqs.c parseScript.c \
+ parseSpec.c reqprov.c spec.c
+
+include ../Makefile.inc
+
+pack.o: pack.c
+ $(COMPILE) -DVERSION=\"$(VERSION)\" -o $@ -c $<
+
+files.o: files.c
+ $(COMPILE) -DFINDPROVIDES=\"$(FINDPROVIDES)\" -DFINDREQUIRES=\"$(FINDREQUIRES)\" -o $@ -c $<
diff --git a/build/Makefile.in b/build/Makefile.in
index df50eda1f..8e35420cc 100644
--- a/build/Makefile.in
+++ b/build/Makefile.in
@@ -1,62 +1,388 @@
+# Makefile.in generated automatically by automake 1.3 from Makefile.am
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+# Makefile for rpmbuild library.
+
+
+SHELL = /bin/sh
+
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
+prefix = @prefix@
+exec_prefix = @exec_prefix@
-LIBOBJECTS = \
- build.o expression.o files.o misc.o myftw.o names.o pack.o \
- parseBuildInstallClean.o parseChangelog.o parseDescription.o \
- parseFiles.o parsePreamble.o parsePrep.o parseReqs.o \
- parseScript.o parseSpec.o reqprov.o spec.o
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+infodir = @infodir@
+mandir = @mandir@
+includedir = @includedir@
+oldincludedir = /usr/include
-LIBBUILD = librpmbuild.a
-LOADLIBES = -lrpm -lz ../popt/libpopt.a $(LIBEFENCE)
-PROGS =
-INSTALL= @INSTALL@
-INSTALL_PROGRAM= @INSTALL_PROGRAM@
-INSTALL_DATA= @INSTALL_DATA@
+DISTDIR =
-# -----------------------------------------------------------------------
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
-include ../Makefile.inc
+top_builddir = ..
-TARGET=everything
+ACLOCAL = @ACLOCAL@
+AUTOCONF = @AUTOCONF@
+AUTOMAKE = @AUTOMAKE@
+AUTOHEADER = @AUTOHEADER@
-all: $(TARGET)
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+transform = @program_transform_name@
-everything: $(LIBBUILD)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+host_alias = @host_alias@
+host_triplet = @host@
+AR = @AR@
+AWK = @AWK@
+BZIP2BIN = @BZIP2BIN@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CPP = @CPP@
+DATADIRNAME = @DATADIRNAME@
+FIXPERMS = @FIXPERMS@
+GENCAT = @GENCAT@
+GETTEXTSTUB = @GETTEXTSTUB@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+GT_NO = @GT_NO@
+GT_YES = @GT_YES@
+GZIPBIN = @GZIPBIN@
+INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INCPATH = @INCPATH@
+INSTOBJEXT = @INSTOBJEXT@
+INTLDEF = @INTLDEF@
+INTLDEPS = @INTLDEPS@
+INTLLIBS = @INTLLIBS@
+INTLOBJS = @INTLOBJS@
+LDFLAGS_STATIC = @LDFLAGS_STATIC@
+LIBDL = @LIBDL@
+LIBINTL = @LIBINTL@
+LIBMISC = @LIBMISC@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+MAKEINFO = @MAKEINFO@
+MISCDIR = @MISCDIR@
+MISCPATH = @MISCPATH@
+MKDIR = @MKDIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+PACKAGE = @PACKAGE@
+PO = @PO@
+POFILES = @POFILES@
+POSUB = @POSUB@
+RANLIB = @RANLIB@
+ROOT_GROUP = @ROOT_GROUP@
+RPM = @RPM@
+RPMCONFIGDIR = @RPMCONFIGDIR@
+TARGET = @TARGET@
+U = @U@
+USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+l = @l@
+tmpdir = @tmpdir@
+topdir = @topdir@
+topsrcdir = @topsrcdir@
+varprefix = @varprefix@
-$(LIBBUILD): $(LIBOBJECTS)
- $(AR) r $@ $(LIBOBJECTS)
- $(RANLIB) $@
+AUTOMAKE_OPTIONS = 1.3 foreign
-$(PROGS): $(LIBOBJECTS)
+INCLUDES = -I../lib @INCPATH@
-# GNU make doesn't need the pack.c on here, but broken makes may
-pack.o: pack.c
- $(CC) $(CFLAGS) -DVERSION=\"$(VERSION)\" -o $@ -c $<
+include_HEADERS = rpmbuild.h rpmspec.h
+noinst_HEADERS = buildio.h myftw.h
-files.o: files.c
- $(CC) $(CFLAGS) -DFINDPROVIDES=\"$(FINDPROVIDES)\" -DFINDREQUIRES=\"$(FINDREQUIRES)\" -o $@ -c $<
+lib_LIBRARIES = librpmbuild.a
+librpmbuild_a_SOURCES = \
+ build.c expression.c files.c misc.c myftw.c names.c pack.c \
+ parseBuildInstallClean.c parseChangelog.c parseDescription.c \
+ parseFiles.c parsePreamble.c parsePrep.c parseReqs.c parseScript.c \
+ parseSpec.c reqprov.c spec.c
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = ../config.h
+CONFIG_CLEAN_FILES =
+LIBRARIES = $(lib_LIBRARIES)
+
+
+DEFS = @DEFS@ -I. -I$(srcdir) -I..
+CPPFLAGS = @CPPFLAGS@
+LDFLAGS = @LDFLAGS@
+librpmbuild_a_LIBADD =
+librpmbuild_a_OBJECTS = build.o expression.o files.o misc.o myftw.o \
+names.o pack.o parseBuildInstallClean.o parseChangelog.o \
+parseDescription.o parseFiles.o parsePreamble.o parsePrep.o parseReqs.o \
+parseScript.o parseSpec.o reqprov.o spec.o
+CFLAGS = @CFLAGS@
+COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
+LINK = $(CC) $(CFLAGS) $(LDFLAGS) -o $@
+HEADERS = $(include_HEADERS) $(noinst_HEADERS)
+
+DIST_COMMON = Makefile.am Makefile.in TODO
+
+
+DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+
+TAR = tar
+GZIP = --best
+DEP_FILES = .deps/build.P .deps/expression.P .deps/files.P .deps/misc.P \
+.deps/myftw.P .deps/names.P .deps/pack.P .deps/parseBuildInstallClean.P \
+.deps/parseChangelog.P .deps/parseDescription.P .deps/parseFiles.P \
+.deps/parsePreamble.P .deps/parsePrep.P .deps/parseReqs.P \
+.deps/parseScript.P .deps/parseSpec.P .deps/reqprov.P .deps/spec.P
+SOURCES = $(librpmbuild_a_SOURCES)
+OBJECTS = $(librpmbuild_a_OBJECTS)
+
+all: Makefile $(LIBRARIES) $(HEADERS)
+
+.SUFFIXES:
+.SUFFIXES: .S .c .o .s
+$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+ cd $(top_srcdir) && $(AUTOMAKE) --foreign build/Makefile
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+
+mostlyclean-libLIBRARIES:
+
+clean-libLIBRARIES:
+ -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
+
+distclean-libLIBRARIES:
+
+maintainer-clean-libLIBRARIES:
+
+install-libLIBRARIES: $(lib_LIBRARIES)
+ @$(NORMAL_INSTALL)
+ $(mkinstalldirs) $(DESTDIR)$(libdir)
+ list='$(lib_LIBRARIES)'; for p in $$list; do \
+ if test -f $$p; then \
+ echo " $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/$$p"; \
+ $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/$$p; \
+ else :; fi; \
+ done
+ @$(POST_INSTALL)
+ @list='$(lib_LIBRARIES)'; for p in $$list; do \
+ if test -f $$p; then \
+ echo " $(RANLIB) $(DESTDIR)$(libdir)/$$p"; \
+ $(RANLIB) $(DESTDIR)$(libdir)/$$p; \
+ else :; fi; \
+ done
+
+uninstall-libLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ list='$(lib_LIBRARIES)'; for p in $$list; do \
+ rm -f $(DESTDIR)$(libdir)/$$p; \
+ done
+
+.s.o:
+ $(COMPILE) -c $<
+
+.S.o:
+ $(COMPILE) -c $<
+
+mostlyclean-compile:
+ -rm -f *.o core *.core
+
+clean-compile:
+
+distclean-compile:
+ -rm -f *.tab.c
+
+maintainer-clean-compile:
+
+librpmbuild.a: $(librpmbuild_a_OBJECTS) $(librpmbuild_a_DEPENDENCIES)
+ -rm -f librpmbuild.a
+ $(AR) cru librpmbuild.a $(librpmbuild_a_OBJECTS) $(librpmbuild_a_LIBADD)
+ $(RANLIB) librpmbuild.a
+
+install-includeHEADERS: $(include_HEADERS)
+ @$(NORMAL_INSTALL)
+ $(mkinstalldirs) $(DESTDIR)$(includedir)
+ @list='$(include_HEADERS)'; for p in $$list; do \
+ if test -f "$$p"; then d= ; else d="$(srcdir)/"; fi; \
+ echo " $(INSTALL_DATA) $$d$$p $(DESTDIR)$(includedir)/$$p"; \
+ $(INSTALL_DATA) $$d$$p $(DESTDIR)$(includedir)/$$p; \
+ done
+
+uninstall-includeHEADERS:
+ @$(NORMAL_UNINSTALL)
+ list='$(include_HEADERS)'; for p in $$list; do \
+ rm -f $(DESTDIR)$(includedir)/$$p; \
+ done
-rpminject: rpminject.o ../build/librpmbuild.a ../popt/libpopt.a ../lib/librpm.a
+tags: TAGS
-install:
- $(INSTALL_DATA) -m 644 $(srcdir)/rpmbuild.h $(INCDIR)
- $(INSTALL_DATA) -m 644 $(srcdir)/rpmspec.h $(INCDIR)
- $(INSTALL_DATA) -m 644 librpmbuild.a $(LIBDIR)
+ID: $(HEADERS) $(SOURCES) $(LISP)
+ here=`pwd` && cd $(srcdir) \
+ && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)
-distclean: clean
- rm -f Makefile
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS)'; \
+ unique=`for i in $$list; do echo $$i; done | \
+ awk ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
+ || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
-clean:
- rm -f *.a *.o *~ $(PROGS)
+mostlyclean-tags:
-depend:
- topdir_path=`( cd $(top_srcdir) && pwd )` ; \
- /bin/rm -f .depend ; \
- $(CPP) $(CFLAGS) -MM $(srcdir)/*.c | \
- sed s+$$topdir_path+$(top_srcdir)+g > .depend
+clean-tags:
+
+distclean-tags:
+ -rm -f TAGS ID
+
+maintainer-clean-tags:
+
+distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+
+subdir = build
+
+distdir: $(DISTFILES)
+ here=`cd $(top_builddir) && pwd`; \
+ top_distdir=`cd $(top_distdir) && pwd`; \
+ distdir=`cd $(distdir) && pwd`; \
+ cd $(top_srcdir) \
+ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign build/Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ test -f $(distdir)/$$file \
+ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
+ || cp -p $$d/$$file $(distdir)/$$file; \
+ done
+
+DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
+
+-include $(DEP_FILES)
+
+mostlyclean-depend:
+
+clean-depend:
+
+distclean-depend:
+
+maintainer-clean-depend:
+ -rm -rf .deps
+
+%.o: %.c
+ @echo '$(COMPILE) -c $<'; \
+ $(COMPILE) -Wp,-MD,.deps/$(*F).P -c $<
+
+%.lo: %.c
+ @echo '$(LTCOMPILE) -c $<'; \
+ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).p -c $<
+ @-sed -e 's/^\([^:]*\)\.o:/\1.lo \1.o:/' \
+ < .deps/$(*F).p > .deps/$(*F).P
+ @-rm -f .deps/$(*F).p
+info:
+dvi:
+check: all
+ $(MAKE)
+installcheck:
+install-exec: install-libLIBRARIES
+ @$(NORMAL_INSTALL)
+
+install-data: install-includeHEADERS
+ @$(NORMAL_INSTALL)
+
+install: install-exec install-data all
+ @:
+
+uninstall: uninstall-libLIBRARIES uninstall-includeHEADERS
+
+install-strip:
+ $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install
+installdirs:
+ $(mkinstalldirs) $(DATADIR)$(libdir) $(DATADIR)$(includedir)
+
+
+mostlyclean-generic:
+ -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -rm -f Makefile $(DISTCLEANFILES)
+ -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+ -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+mostlyclean: mostlyclean-libLIBRARIES mostlyclean-compile \
+ mostlyclean-tags mostlyclean-depend mostlyclean-generic
+
+clean: clean-libLIBRARIES clean-compile clean-tags clean-depend \
+ clean-generic mostlyclean
+
+distclean: distclean-libLIBRARIES distclean-compile distclean-tags \
+ distclean-depend distclean-generic clean
+ -rm -f config.status
+
+maintainer-clean: maintainer-clean-libLIBRARIES \
+ maintainer-clean-compile maintainer-clean-tags \
+ maintainer-clean-depend maintainer-clean-generic \
+ distclean
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+
+.PHONY: mostlyclean-libLIBRARIES distclean-libLIBRARIES \
+clean-libLIBRARIES maintainer-clean-libLIBRARIES uninstall-libLIBRARIES \
+install-libLIBRARIES mostlyclean-compile distclean-compile \
+clean-compile maintainer-clean-compile uninstall-includeHEADERS \
+install-includeHEADERS tags mostlyclean-tags distclean-tags clean-tags \
+maintainer-clean-tags distdir mostlyclean-depend distclean-depend \
+clean-depend maintainer-clean-depend info dvi installcheck install-exec \
+install-data install uninstall all installdirs mostlyclean-generic \
+distclean-generic clean-generic maintainer-clean-generic clean \
+mostlyclean distclean maintainer-clean
+
+
+include ../Makefile.inc
+
+pack.o: pack.c
+ $(COMPILE) -DVERSION=\"$(VERSION)\" -o $@ -c $<
+
+files.o: files.c
+ $(COMPILE) -DFINDPROVIDES=\"$(FINDPROVIDES)\" -DFINDREQUIRES=\"$(FINDREQUIRES)\" -o $@ -c $<
-ifeq (.depend,$(wildcard .depend))
-include .depend
-endif
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/configure.in b/configure.in
index 66a724429..c68565206 100644
--- a/configure.in
+++ b/configure.in
@@ -5,7 +5,16 @@ dnl failing causes the script to bomb out with a message. If we can't fix
dnl it, why check it?
AC_INIT(rpm.c)
-AC_CONFIG_HEADER(config.h)
+AM_CONFIG_HEADER(config.h)
+AC_PREREQ(2.12) dnl Minimum Autoconf version required.
+
+AM_INIT_AUTOMAKE(rpm, 2.90)
+
+AC_CANONICAL_HOST
+dnl XXX AM_MAINTAINER_MODE
+
+dnl Set of available languages.
+ALL_LINGUAS="cz de fi fr pt_BR ru sk sr sv tr"
dnl default to not using NLS
XGETTEXT=""
@@ -13,14 +22,18 @@ LIBINTL=""
PO=""
GETTEXTSTUB="gettextstub.o"
-MISCOBJS=
+LIBOBJS=
-AC_CANONICAL_SYSTEM
+dnl YYY AC_CANONICAL_SYSTEM
RPMCONFIGDIR='$(libdir)/rpm'
dnl Checks for programs.
AC_PROG_CC
+if test "$ac_cv_prog_gcc" = yes; then
+ CFLAGS="$CFLAGS -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wno-char-subscripts"
+fi
+
AC_PROG_CPP
AC_PROG_GCC_TRADITIONAL
AC_PROG_INSTALL
@@ -149,6 +162,11 @@ AC_AIX
AC_MINIX
AC_ISC_POSIX
+dnl This test must precede tests of compiler characteristics like
+dnl that for the inline keyword, since it may change the degree to
+dnl which the compiler supports such features.
+AM_C_PROTOTYPES
+
AC_PROG_AWK
AC_PROG_LN_S
AC_PROG_MAKE_SET
@@ -325,7 +343,7 @@ AC_CHECK_FUNC(dbopen, [],
)
AC_CHECK_FUNC(fork, [], [echo "using vfork() instead of fork()";
- MISCOBJS=fakefork.o])
+ LIBOBJS=fakefork.o])
dnl AmigaOS and IXEmul have a fork() dummy
case "$target" in
@@ -362,11 +380,11 @@ AC_CHECK_HEADERS(sys/mman.h sys/param.h sys/resource.h sys/utsname.h sys/wait.h)
# solaris2.4 and sinix 5.42 have broken fnmatch. get glob also to be safe.
case $target in
*-*-solaris2.4|mips-sni-sysv4*)
- MISCOBJS="$MISCOBJS glob.o fnmatch.o"
+ LIBOBJS="$LIBOBJS glob.o fnmatch.o"
;;
*)
- AC_CHECK_HEADERS(glob.h,,MISCOBJS="$MISCOBJS glob.o")
- AC_CHECK_HEADERS(fnmatch.h,,MISCOBJS="$MISCOBJS fnmatch.o")
+ AC_CHECK_HEADERS(glob.h,,LIBOBJS="$LIBOBJS glob.o")
+ AC_CHECK_HEADERS(fnmatch.h,,LIBOBJS="$LIBOBJS fnmatch.o")
;;
esac
@@ -426,18 +444,38 @@ AC_TYPE_MODE_T
AC_TYPE_PID_T
dnl Checks for library functions.
-AC_CHECK_FUNC(inet_aton, AC_DEFINE(HAVE_INET_ATON), MISCOBJS="$MISCOBJS inet_aton.o")
-AC_CHECK_FUNC(realpath, AC_DEFINE(HAVE_REALPATH), MISCOBJS="$MISCOBJS realpath.o")
+AC_FUNC_ALLOCA
+
+dnl XXX AC_FUNC_FNMATCH
+dnl XXX if test $ac_cv_func_fnmatch_works = no; then
+dnl XXX LIBOBJS="$LIBOBJS fnmatch.o"
+dnl XXX AC_DEFINE_UNQUOTED(fnmatch, rpl_fnmatch)
+dnl XXX fi
+
+dnl XXX AC_FUNC_MEMCMP
+dnl XXX AC_FUNC_MMAP
+dnl XXX AC_TYPE_SIGNAL
+dnl XXX AC_FUNC_STRCOLL
+dnl XXX AC_FUNC_STRFTIME
+dnl XXX AC_FUNC_UTIME_NULL
+dnl XXX AC_FUNC_VFORK
+dnl XXX AC_FUNC_VPRINTF
+dnl XXX AC_CHECK_FUNCS(gethostname lchown mkdir mkfifo rmdir select uname)
+
+dnl XXX AC_REPLACE_FUNCS(getcwd getwd glob inet_aton putenv realpath strdup strerror strtol strtoul strspn strstr)
+
+AC_CHECK_FUNC(inet_aton, AC_DEFINE(HAVE_INET_ATON), LIBOBJS="$LIBOBJS inet_aton.o")
+AC_CHECK_FUNC(realpath, AC_DEFINE(HAVE_REALPATH), LIBOBJS="$LIBOBJS realpath.o")
AC_CHECK_FUNC(getmntent, AC_DEFINE(HAVE_GETMNTENT), [
AC_CHECK_FUNC(mntctl, AC_DEFINE(HAVE_MNTCTL),[
AC_CHECK_FUNC(getmntinfo_r, AC_DEFINE(HAVE_GETMNTINFO_R), [
AC_CHECK_LIB(c_r, getmntinfo_r, [LIBS="$LIBS -lc_r";
AC_DEFINE(HAVE_GETMNTINFO_R)],
- MISCOBJS="$MISCOBJS getmntent.o")])])])
-AC_CHECK_FUNC(strerror, [], MISCOBJS="$MISCOBJS strerror.o")
-AC_CHECK_FUNC(strtol, [], MISCOBJS="$MISCOBJS strtol.o")
-AC_CHECK_FUNC(strtoul, [], MISCOBJS="$MISCOBJS strtoul.o")
-AC_CHECK_FUNC(strdup, [], MISCOBJS="$MISCOBJS strdup.o")
+ LIBOBJS="$LIBOBJS getmntent.o")])])])
+AC_CHECK_FUNC(strerror, [], LIBOBJS="$LIBOBJS strerror.o")
+AC_CHECK_FUNC(strtol, [], LIBOBJS="$LIBOBJS strtol.o")
+AC_CHECK_FUNC(strtoul, [], LIBOBJS="$LIBOBJS strtoul.o")
+AC_CHECK_FUNC(strdup, [], LIBOBJS="$LIBOBJS strdup.o")
LCHOWN=no
AC_CHECK_FUNC(lchown, [LCHOWN=yes; AC_DEFINE(HAVE_LCHOWN)])
@@ -513,6 +551,7 @@ AC_DEFINE_UNQUOTED(ROOT_GROUP, "$ROOT_GROUP")
AC_MSG_RESULT($ROOT_GROUP)
AC_SUBST(ROOT_GROUP)
+AM_GNU_GETTEXT
if test "x$varprefix" = "x"; then
varprefix=`echo $prefix | sed 's/usr/var/'`
@@ -540,7 +579,7 @@ elif echo "$build_os" | grep sunos > /dev/null; then
CFLAGS="$CFLAGS -D__USE_FIXED_PROTOTYPES__"
AC_DEFINE(NEED_STRINGS_H)
AC_DEFINE(NEED_MYREALLOC)
- MISCOBJS="$MISCOBJS myrealloc.o"
+ LIBOBJS="$LIBOBJS myrealloc.o"
elif echo "$build_os" | grep hpux > /dev/null; then
LIBDL=-ldld
echo "hacking things up for hpux"
@@ -590,13 +629,13 @@ else
fi
-if test -n "$MISCOBJS" ; then
+if test -n "$LIBOBJS" ; then
MISCDIR=misc
LIBMISC=-lmisc
MISCPATH=misc/libmisc.a
fi
-AC_SUBST(MISCOBJS)
+AC_SUBST(LIBOBJS)
AC_SUBST(INCPATH)
AC_SUBST(LIBINTL)
AC_SUBST(varprefix)
@@ -621,14 +660,8 @@ AC_SUBST(RPMCONFIGDIR)
AC_SUBST(MKDIR_P)
AC_SUBST(LDFLAGS_STATIC)
-if test -d newbuild ; then
- NBMAKEFILE=newbuild/Makefile
-else
- NBMAKEFILE=
-fi
-
# XXX Propagate -lucb to popt ...
export LIBS INCPATH
AC_CONFIG_SUBDIRS(popt)
-AC_OUTPUT(Makefile Makefile.inc lib-rpmrc macros lib/Makefile build/Makefile $NBMAKEFILE tools/Makefile po/Makefile misc/Makefile)
+AC_OUTPUT(Makefile Makefile.inc lib-rpmrc macros lib/Makefile build/Makefile tools/Makefile scripts/Makefile misc/Makefile po/Makefile intl/Makefile)
diff --git a/convertdb.c b/convertdb.c
index f770cef11..63a9d5123 100644
--- a/convertdb.c
+++ b/convertdb.c
@@ -4,6 +4,8 @@
#include "build/rpmbuild.h"
+#include "intl.h"
+
#include "falloc.h"
#include "oldrpmdb.h"
#include "oldheader.h"
@@ -201,7 +203,7 @@ int main(int argc, char ** argv) {
exit(1);
}
- rpmReadConfigFiles(NULL, NULL, NULL, 0);
+ rpmReadConfigFiles(NULL, NULL, NULL, 0, NULL);
printf(_("rpmconvert 1.0 - converting database in /var/lib/rpm\n"));
convertDB();
diff --git a/intl/.cvsignore b/intl/.cvsignore
new file mode 100644
index 000000000..3b6496f88
--- /dev/null
+++ b/intl/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+po2tbl.sed
diff --git a/lib/.cvsignore b/lib/.cvsignore
index 8bb729308..289842eb5 100644
--- a/lib/.cvsignore
+++ b/lib/.cvsignore
@@ -1,3 +1,4 @@
+.deps
.depend
Makefile
tagtable.c
diff --git a/lib/Makefile.am b/lib/Makefile.am
new file mode 100644
index 000000000..d136e087b
--- /dev/null
+++ b/lib/Makefile.am
@@ -0,0 +1,42 @@
+# Makefile for rpm library.
+
+AUTOMAKE_OPTIONS = 1.3 foreign
+
+INCLUDES = -I../build @INCPATH@
+
+rpmincdir = $(includedir)/rpm
+rpminc_HEADERS = dbindex.h header.h misc.h rpmlib.h rpmmacro.h stringbuf.h
+noinst_HEADERS = \
+ cpio.h depends.h falloc.h install.h \
+ md5.h oldheader.h oldrpmdb.h rpm_malloc.h \
+ rpmdb.h rpmlead.h signature.h tread.h
+
+lib_LIBRARIES = librpm.a
+librpm_a_SOURCES = \
+ cpio.c dbindex.c depends.c falloc.c \
+ formats.c fs.c header.c install.c \
+ lookup.c macro.c md5.c md5sum.c \
+ messages.c misc.c oldheader.c package.c \
+ rebuilddb.c rpmdb.c rpmerr.c rpmlead.c \
+ rpmrc.c signature.c stringbuf.c tagtable.c \
+ tread.c uninstall.c verify.c
+
+include ../Makefile.inc
+
+misc.o: misc.c
+ $(COMPILE) -DVERSION=\"$(VERSION)\" -o $@ -c $<
+
+rpmrc.o: rpmrc.c
+ $(COMPILE) -DLIBRPMRC_FILENAME="\"$(LIBRPMRC_FILENAME)"\" -DMACROFILES=\"$(MACROFILES)\" -o $@ -c $<
+
+tagtable.c: rpmlib.h
+ echo '#include "rpmlib.h"' > tagtable.c
+ echo '' >> tagtable.c
+ echo 'const struct headerTagTableEntry rpmTagTable[] = {' >> tagtable.c
+ awk '/(RPMTAG_[A-Z0-9]*)[ \t]+([0-9]*)/ && !/internal/ { printf("\t{ \"%s\", %s },\n", $$2, $$3); }' < $(srcdir)/rpmlib.h >> tagtable.c
+ echo ' { NULL, 0 }' >> tagtable.c
+ echo '};' >> tagtable.c
+ echo '' >> tagtable.c
+ echo 'const int rpmTagTableSize = sizeof(rpmTagTable) / sizeof(struct headerTagTableEntry) - 1;' >> tagtable.c
+
+BUILT_SOURCES = tagtable.c
diff --git a/lib/Makefile.in b/lib/Makefile.in
index fbcd8d13e..08dbe16cb 100644
--- a/lib/Makefile.in
+++ b/lib/Makefile.in
@@ -1,48 +1,398 @@
+# Makefile.in generated automatically by automake 1.3 from Makefile.am
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+# Makefile for rpm library.
+
+
+SHELL = /bin/sh
+
srcdir = @srcdir@
-VPATH = @srcdir@
top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+prefix = @prefix@
+exec_prefix = @exec_prefix@
-LIBOBJECTS = header.o misc.o messages.o \
- rpmerr.o falloc.o macro.o \
- md5.o md5sum.o dbindex.o \
- rpmrc.o depends.o rpmdb.o \
- stringbuf.o rpmlead.o package.o \
- uninstall.o oldheader.o install.o \
- signature.o verify.o rebuilddb.o \
- tread.o cpio.o formats.o \
- fs.o lookup.o
-
-SOURCES = $(addprefix $(srcdir)/,$(subst .o,.c,$(LIBOBJECTS)))
-TAGTABLE = tagtable.o
-LIBRPM = librpm.a
-LOADLIBES = -lrpm -lgdbm -ldb $(LIBEFENCE)
-PROGS =
-INSTALL= @INSTALL@
-INSTALL_PROGRAM= @INSTALL_PROGRAM@
-INSTALL_DATA= @INSTALL_DATA@
-
-# -----------------------------------------------------------------------
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+infodir = @infodir@
+mandir = @mandir@
+includedir = @includedir@
+oldincludedir = /usr/include
-include ../Makefile.inc
+DISTDIR =
-TARGET=allprogs
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
-all: $(TARGET)
+top_builddir = ..
-allprogs: $(LIBRPM) $(PROGS)
+ACLOCAL = @ACLOCAL@
+AUTOCONF = @AUTOCONF@
+AUTOMAKE = @AUTOMAKE@
+AUTOHEADER = @AUTOHEADER@
-# GNU make doesn't need this, but stupid ones may
-misc.o: misc.c
- $(CC) $(CFLAGS) -DVERSION=\"$(VERSION)\" -o $@ -c $<
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+transform = @program_transform_name@
-# ditto
-rpmrc.o: rpmrc.c
- $(CC) $(CFLAGS) -DLIBRPMRC_FILENAME="\"$(LIBRPMRC_FILENAME)"\" -DMACROFILES=\"$(MACROFILES)\" -o $@ -c $<
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+host_alias = @host_alias@
+host_triplet = @host@
+AR = @AR@
+AWK = @AWK@
+BZIP2BIN = @BZIP2BIN@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CPP = @CPP@
+DATADIRNAME = @DATADIRNAME@
+FIXPERMS = @FIXPERMS@
+GENCAT = @GENCAT@
+GETTEXTSTUB = @GETTEXTSTUB@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+GT_NO = @GT_NO@
+GT_YES = @GT_YES@
+GZIPBIN = @GZIPBIN@
+INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INCPATH = @INCPATH@
+INSTOBJEXT = @INSTOBJEXT@
+INTLDEF = @INTLDEF@
+INTLDEPS = @INTLDEPS@
+INTLLIBS = @INTLLIBS@
+INTLOBJS = @INTLOBJS@
+LDFLAGS_STATIC = @LDFLAGS_STATIC@
+LIBDL = @LIBDL@
+LIBINTL = @LIBINTL@
+LIBMISC = @LIBMISC@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+MAKEINFO = @MAKEINFO@
+MISCDIR = @MISCDIR@
+MISCPATH = @MISCPATH@
+MKDIR = @MKDIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+PACKAGE = @PACKAGE@
+PO = @PO@
+POFILES = @POFILES@
+POSUB = @POSUB@
+RANLIB = @RANLIB@
+ROOT_GROUP = @ROOT_GROUP@
+RPM = @RPM@
+RPMCONFIGDIR = @RPMCONFIGDIR@
+TARGET = @TARGET@
+U = @U@
+USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+l = @l@
+tmpdir = @tmpdir@
+topdir = @topdir@
+topsrcdir = @topsrcdir@
+varprefix = @varprefix@
+
+AUTOMAKE_OPTIONS = 1.3 foreign
+
+INCLUDES = -I../build @INCPATH@
+
+rpmincdir = $(includedir)/rpm
+rpminc_HEADERS = dbindex.h header.h misc.h rpmlib.h rpmmacro.h stringbuf.h
+noinst_HEADERS = \
+ cpio.h depends.h falloc.h install.h \
+ md5.h oldheader.h oldrpmdb.h rpm_malloc.h \
+ rpmdb.h rpmlead.h signature.h tread.h
+
+lib_LIBRARIES = librpm.a
+librpm_a_SOURCES = \
+ cpio.c dbindex.c depends.c falloc.c \
+ formats.c fs.c header.c install.c \
+ lookup.c macro.c md5.c md5sum.c \
+ messages.c misc.c oldheader.c package.c \
+ rebuilddb.c rpmdb.c rpmerr.c rpmlead.c \
+ rpmrc.c signature.c stringbuf.c tagtable.c \
+ tread.c uninstall.c verify.c
+
+BUILT_SOURCES = tagtable.c
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = ../config.h
+CONFIG_CLEAN_FILES =
+LIBRARIES = $(lib_LIBRARIES)
+
+
+DEFS = @DEFS@ -I. -I$(srcdir) -I..
+CPPFLAGS = @CPPFLAGS@
+LDFLAGS = @LDFLAGS@
+librpm_a_LIBADD =
+librpm_a_OBJECTS = cpio.o dbindex.o depends.o falloc.o formats.o fs.o \
+header.o install.o lookup.o macro.o md5.o md5sum.o messages.o misc.o \
+oldheader.o package.o rebuilddb.o rpmdb.o rpmerr.o rpmlead.o rpmrc.o \
+signature.o stringbuf.o tagtable.o tread.o uninstall.o verify.o
+CFLAGS = @CFLAGS@
+COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
+LINK = $(CC) $(CFLAGS) $(LDFLAGS) -o $@
+HEADERS = $(noinst_HEADERS) $(rpminc_HEADERS)
+
+DIST_COMMON = Makefile.am Makefile.in
+
+
+DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+
+TAR = tar
+GZIP = --best
+DEP_FILES = .deps/cpio.P .deps/dbindex.P .deps/depends.P .deps/falloc.P \
+.deps/formats.P .deps/fs.P .deps/header.P .deps/install.P \
+.deps/lookup.P .deps/macro.P .deps/md5.P .deps/md5sum.P \
+.deps/messages.P .deps/misc.P .deps/oldheader.P .deps/package.P \
+.deps/rebuilddb.P .deps/rpmdb.P .deps/rpmerr.P .deps/rpmlead.P \
+.deps/rpmrc.P .deps/signature.P .deps/stringbuf.P .deps/tagtable \
+.deps/tagtable.P .deps/tread.P .deps/uninstall.P .deps/verify.P
+SOURCES = $(librpm_a_SOURCES)
+OBJECTS = $(librpm_a_OBJECTS)
+
+all: Makefile $(LIBRARIES) $(HEADERS)
+
+.SUFFIXES:
+.SUFFIXES: .S .c .o .s
+$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+ cd $(top_srcdir) && $(AUTOMAKE) --foreign lib/Makefile
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+
+mostlyclean-libLIBRARIES:
+
+clean-libLIBRARIES:
+ -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
+
+distclean-libLIBRARIES:
+
+maintainer-clean-libLIBRARIES:
+
+install-libLIBRARIES: $(lib_LIBRARIES)
+ @$(NORMAL_INSTALL)
+ $(mkinstalldirs) $(DESTDIR)$(libdir)
+ list='$(lib_LIBRARIES)'; for p in $$list; do \
+ if test -f $$p; then \
+ echo " $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/$$p"; \
+ $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/$$p; \
+ else :; fi; \
+ done
+ @$(POST_INSTALL)
+ @list='$(lib_LIBRARIES)'; for p in $$list; do \
+ if test -f $$p; then \
+ echo " $(RANLIB) $(DESTDIR)$(libdir)/$$p"; \
+ $(RANLIB) $(DESTDIR)$(libdir)/$$p; \
+ else :; fi; \
+ done
+
+uninstall-libLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ list='$(lib_LIBRARIES)'; for p in $$list; do \
+ rm -f $(DESTDIR)$(libdir)/$$p; \
+ done
+
+.s.o:
+ $(COMPILE) -c $<
+
+.S.o:
+ $(COMPILE) -c $<
+
+mostlyclean-compile:
+ -rm -f *.o core *.core
+
+clean-compile:
+
+distclean-compile:
+ -rm -f *.tab.c
+
+maintainer-clean-compile:
+
+librpm.a: $(librpm_a_OBJECTS) $(librpm_a_DEPENDENCIES)
+ -rm -f librpm.a
+ $(AR) cru librpm.a $(librpm_a_OBJECTS) $(librpm_a_LIBADD)
+ $(RANLIB) librpm.a
-$(PROGS): $(LIBRPM)
+install-rpmincHEADERS: $(rpminc_HEADERS)
+ @$(NORMAL_INSTALL)
+ $(mkinstalldirs) $(DESTDIR)$(rpmincdir)
+ @list='$(rpminc_HEADERS)'; for p in $$list; do \
+ if test -f "$$p"; then d= ; else d="$(srcdir)/"; fi; \
+ echo " $(INSTALL_DATA) $$d$$p $(DESTDIR)$(rpmincdir)/$$p"; \
+ $(INSTALL_DATA) $$d$$p $(DESTDIR)$(rpmincdir)/$$p; \
+ done
-$(LIBRPM): $(LIBRPM)($(LIBOBJECTS) $(TAGTABLE))
- $(RANLIB) $@
+uninstall-rpmincHEADERS:
+ @$(NORMAL_UNINSTALL)
+ list='$(rpminc_HEADERS)'; for p in $$list; do \
+ rm -f $(DESTDIR)$(rpmincdir)/$$p; \
+ done
+
+tags: TAGS
+
+ID: $(HEADERS) $(SOURCES) $(LISP)
+ here=`pwd` && cd $(srcdir) \
+ && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS)'; \
+ unique=`for i in $$list; do echo $$i; done | \
+ awk ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
+ || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
+
+mostlyclean-tags:
+
+clean-tags:
+
+distclean-tags:
+ -rm -f TAGS ID
+
+maintainer-clean-tags:
+
+distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+
+subdir = lib
+
+distdir: $(DISTFILES)
+ here=`cd $(top_builddir) && pwd`; \
+ top_distdir=`cd $(top_distdir) && pwd`; \
+ distdir=`cd $(distdir) && pwd`; \
+ cd $(top_srcdir) \
+ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign lib/Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ test -f $(distdir)/$$file \
+ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
+ || cp -p $$d/$$file $(distdir)/$$file; \
+ done
+
+DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
+
+-include $(DEP_FILES)
+
+mostlyclean-depend:
+
+clean-depend:
+
+distclean-depend:
+
+maintainer-clean-depend:
+ -rm -rf .deps
+
+%.o: %.c
+ @echo '$(COMPILE) -c $<'; \
+ $(COMPILE) -Wp,-MD,.deps/$(*F).P -c $<
+
+%.lo: %.c
+ @echo '$(LTCOMPILE) -c $<'; \
+ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).p -c $<
+ @-sed -e 's/^\([^:]*\)\.o:/\1.lo \1.o:/' \
+ < .deps/$(*F).p > .deps/$(*F).P
+ @-rm -f .deps/$(*F).p
+info:
+dvi:
+check: all
+ $(MAKE)
+installcheck:
+install-exec: install-libLIBRARIES
+ @$(NORMAL_INSTALL)
+
+install-data: install-rpmincHEADERS
+ @$(NORMAL_INSTALL)
+
+install: install-exec install-data all
+ @:
+
+uninstall: uninstall-libLIBRARIES uninstall-rpmincHEADERS
+
+install-strip:
+ $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install
+installdirs:
+ $(mkinstalldirs) $(DATADIR)$(libdir) $(DATADIR)$(rpmincdir)
+
+
+mostlyclean-generic:
+ -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -rm -f Makefile $(DISTCLEANFILES)
+ -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+ -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+mostlyclean: mostlyclean-libLIBRARIES mostlyclean-compile \
+ mostlyclean-tags mostlyclean-depend mostlyclean-generic
+
+clean: clean-libLIBRARIES clean-compile clean-tags clean-depend \
+ clean-generic mostlyclean
+
+distclean: distclean-libLIBRARIES distclean-compile distclean-tags \
+ distclean-depend distclean-generic clean
+ -rm -f config.status
+
+maintainer-clean: maintainer-clean-libLIBRARIES \
+ maintainer-clean-compile maintainer-clean-tags \
+ maintainer-clean-depend maintainer-clean-generic \
+ distclean
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+
+.PHONY: mostlyclean-libLIBRARIES distclean-libLIBRARIES \
+clean-libLIBRARIES maintainer-clean-libLIBRARIES uninstall-libLIBRARIES \
+install-libLIBRARIES mostlyclean-compile distclean-compile \
+clean-compile maintainer-clean-compile uninstall-rpmincHEADERS \
+install-rpmincHEADERS tags mostlyclean-tags distclean-tags clean-tags \
+maintainer-clean-tags distdir mostlyclean-depend distclean-depend \
+clean-depend maintainer-clean-depend info dvi installcheck install-exec \
+install-data install uninstall all installdirs mostlyclean-generic \
+distclean-generic clean-generic maintainer-clean-generic clean \
+mostlyclean distclean maintainer-clean
+
+
+include ../Makefile.inc
+
+misc.o: misc.c
+ $(COMPILE) -DVERSION=\"$(VERSION)\" -o $@ -c $<
+
+rpmrc.o: rpmrc.c
+ $(COMPILE) -DLIBRPMRC_FILENAME="\"$(LIBRPMRC_FILENAME)"\" -DMACROFILES=\"$(MACROFILES)\" -o $@ -c $<
tagtable.c: rpmlib.h
echo '#include "rpmlib.h"' > tagtable.c
@@ -54,30 +404,6 @@ tagtable.c: rpmlib.h
echo '' >> tagtable.c
echo 'const int rpmTagTableSize = sizeof(rpmTagTable) / sizeof(struct headerTagTableEntry) - 1;' >> tagtable.c
-install:
- $(INSTALL_DATA) -m 644 $(srcdir)/rpmlib.h $(INCDIR)
- $(INSTALL_DATA) -m 644 $(srcdir)/rpmmacro.h $(INCDIR)
- $(INSTALL_DATA) -m 644 $(srcdir)/dbindex.h $(INCDIR)
- $(INSTALL_DATA) -m 644 $(srcdir)/header.h $(INCDIR)
- $(INSTALL_DATA) -m 644 $(srcdir)/misc.h $(INCDIR)
- $(INSTALL_DATA) -m 644 $(srcdir)/stringbuf.h $(INCDIR)
- $(INSTALL_DATA) -m 644 librpm.a $(LIBDIR)
-
-distclean: clean
- rm -f Makefile
-
-clean:
- rm -f *.a *.o *~ $(PROGS) test.out tagtable.c
-
-squeaky: clean
- rm -f depend
-
-depend:
- topdir_path=`( cd $(top_srcdir) && pwd )` ; \
- /bin/rm -f .depend ; \
- $(CPP) $(CFLAGS) -MM $(SOURCES) | \
- sed s+$$topdir_path+$(top_srcdir)+g > .depend
-
-ifeq (.depend,$(wildcard .depend))
-include .depend
-endif
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/misc/.cvsignore b/misc/.cvsignore
index 5a6d76bd2..7401f9d96 100644
--- a/misc/.cvsignore
+++ b/misc/.cvsignore
@@ -1,2 +1,3 @@
-Makefile
+.deps
.depend
+Makefile
diff --git a/misc/Makefile.am b/misc/Makefile.am
new file mode 100644
index 000000000..2b7dec4f4
--- /dev/null
+++ b/misc/Makefile.am
@@ -0,0 +1,19 @@
+# Makefile for misc library.
+
+AUTOMAKE_OPTIONS = 1.3 foreign
+
+EXTRA_DIST = \
+ alloca.c fakefork.c fnmatch.c getcwd.c \
+ getmntent.c getwd.c glob.c inet_aton.c \
+ memcmp.c mktime.c myrealloc.c putenv.c \
+ realpath.c strdup.c strerror.c strftime.c \
+ strspn.c strstr.c strtol.c strtoul.c
+
+noinst_HEADERS = \
+ inet_aton.h fnmatch.h glob.h
+noinst_LIBRARIES = libmisc.a
+
+libmisc_a_SOURCES =
+
+libmisc_a_LIBADD = @LIBOBJS@ @ALLOCA@
+libmisc_a_DEPENDENCIES = $(libmisc_a_LIBADD)
diff --git a/misc/Makefile.in b/misc/Makefile.in
index bac491ce4..704638410 100644
--- a/misc/Makefile.in
+++ b/misc/Makefile.in
@@ -1,38 +1,340 @@
+# Makefile.in generated automatically by automake 1.3 from Makefile.am
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+# Makefile for misc library.
+
+
+SHELL = /bin/sh
+
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+infodir = @infodir@
+mandir = @mandir@
+includedir = @includedir@
+oldincludedir = /usr/include
+
+DISTDIR =
+
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+
+top_builddir = ..
+
+ACLOCAL = @ACLOCAL@
+AUTOCONF = @AUTOCONF@
+AUTOMAKE = @AUTOMAKE@
+AUTOHEADER = @AUTOHEADER@
+
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+transform = @program_transform_name@
+
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+host_alias = @host_alias@
+host_triplet = @host@
+AR = @AR@
+AWK = @AWK@
+BZIP2BIN = @BZIP2BIN@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CPP = @CPP@
+DATADIRNAME = @DATADIRNAME@
+FIXPERMS = @FIXPERMS@
+GENCAT = @GENCAT@
+GETTEXTSTUB = @GETTEXTSTUB@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+GT_NO = @GT_NO@
+GT_YES = @GT_YES@
+GZIPBIN = @GZIPBIN@
+INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INCPATH = @INCPATH@
+INSTOBJEXT = @INSTOBJEXT@
+INTLDEF = @INTLDEF@
+INTLDEPS = @INTLDEPS@
+INTLLIBS = @INTLLIBS@
+INTLOBJS = @INTLOBJS@
+LDFLAGS_STATIC = @LDFLAGS_STATIC@
+LIBDL = @LIBDL@
+LIBINTL = @LIBINTL@
+LIBMISC = @LIBMISC@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+MAKEINFO = @MAKEINFO@
+MISCDIR = @MISCDIR@
+MISCPATH = @MISCPATH@
+MKDIR = @MKDIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+PACKAGE = @PACKAGE@
+PO = @PO@
+POFILES = @POFILES@
+POSUB = @POSUB@
+RANLIB = @RANLIB@
+ROOT_GROUP = @ROOT_GROUP@
+RPM = @RPM@
+RPMCONFIGDIR = @RPMCONFIGDIR@
+TARGET = @TARGET@
+U = @U@
+USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+l = @l@
+tmpdir = @tmpdir@
+topdir = @topdir@
+topsrcdir = @topsrcdir@
+varprefix = @varprefix@
+
+AUTOMAKE_OPTIONS = 1.3 foreign
+
+EXTRA_DIST = \
+ alloca.c fakefork.c fnmatch.c getcwd.c \
+ getmntent.c getwd.c glob.c inet_aton.c \
+ memcmp.c mktime.c myrealloc.c putenv.c \
+ realpath.c strdup.c strerror.c strftime.c \
+ strspn.c strstr.c strtol.c strtoul.c
+
+noinst_HEADERS = \
+ inet_aton.h fnmatch.h glob.h
+noinst_LIBRARIES = libmisc.a
+
+libmisc_a_SOURCES =
+
+libmisc_a_LIBADD = @LIBOBJS@ @ALLOCA@
+libmisc_a_DEPENDENCIES = $(libmisc_a_LIBADD)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = ../config.h
+CONFIG_CLEAN_FILES =
+LIBRARIES = $(noinst_LIBRARIES)
+
+
+DEFS = @DEFS@ -I. -I$(srcdir) -I..
+CPPFLAGS = @CPPFLAGS@
+LDFLAGS = @LDFLAGS@
+libmisc_a_OBJECTS =
+CFLAGS = @CFLAGS@
+COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
+LINK = $(CC) $(CFLAGS) $(LDFLAGS) -o $@
+HEADERS = $(noinst_HEADERS)
+
+DIST_COMMON = Makefile.am Makefile.in alloca.c fnmatch.c getmntent.c \
+glob.c inet_aton.c myrealloc.c realpath.c strdup.c strerror.c strtol.c \
+strtoul.c
+
+
+DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+
+TAR = tar
+GZIP = --best
+DEP_FILES = .deps/alloca.P .deps/fnmatch.P .deps/getmntent.P \
+.deps/glob.P .deps/inet_aton.P .deps/myrealloc.P .deps/realpath.P \
+.deps/strdup.P .deps/strerror.P .deps/strtol.P .deps/strtoul.P
+SOURCES = $(libmisc_a_SOURCES)
+OBJECTS = $(libmisc_a_OBJECTS)
+
+all: Makefile $(LIBRARIES) $(HEADERS)
+
+.SUFFIXES:
+.SUFFIXES: .S .c .o .s
+$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+ cd $(top_srcdir) && $(AUTOMAKE) --foreign misc/Makefile
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+
+mostlyclean-noinstLIBRARIES:
+
+clean-noinstLIBRARIES:
+ -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
+
+distclean-noinstLIBRARIES:
+
+maintainer-clean-noinstLIBRARIES:
+
+.s.o:
+ $(COMPILE) -c $<
+
+.S.o:
+ $(COMPILE) -c $<
+
+mostlyclean-compile:
+ -rm -f *.o core *.core
+
+clean-compile:
+
+distclean-compile:
+ -rm -f *.tab.c
+
+maintainer-clean-compile:
+
+libmisc.a: $(libmisc_a_OBJECTS) $(libmisc_a_DEPENDENCIES)
+ -rm -f libmisc.a
+ $(AR) cru libmisc.a $(libmisc_a_OBJECTS) $(libmisc_a_LIBADD)
+ $(RANLIB) libmisc.a
+
+tags: TAGS
+
+ID: $(HEADERS) $(SOURCES) $(LISP)
+ here=`pwd` && cd $(srcdir) \
+ && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS)'; \
+ unique=`for i in $$list; do echo $$i; done | \
+ awk ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
+ || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
+
+mostlyclean-tags:
+
+clean-tags:
+
+distclean-tags:
+ -rm -f TAGS ID
+
+maintainer-clean-tags:
+
+distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+
+subdir = misc
+
+distdir: $(DISTFILES)
+ here=`cd $(top_builddir) && pwd`; \
+ top_distdir=`cd $(top_distdir) && pwd`; \
+ distdir=`cd $(distdir) && pwd`; \
+ cd $(top_srcdir) \
+ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign misc/Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ test -f $(distdir)/$$file \
+ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
+ || cp -p $$d/$$file $(distdir)/$$file; \
+ done
+
+DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
+
+-include $(DEP_FILES)
+
+mostlyclean-depend:
+
+clean-depend:
+
+distclean-depend:
+
+maintainer-clean-depend:
+ -rm -rf .deps
+
+%.o: %.c
+ @echo '$(COMPILE) -c $<'; \
+ $(COMPILE) -Wp,-MD,.deps/$(*F).P -c $<
+
+%.lo: %.c
+ @echo '$(LTCOMPILE) -c $<'; \
+ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).p -c $<
+ @-sed -e 's/^\([^:]*\)\.o:/\1.lo \1.o:/' \
+ < .deps/$(*F).p > .deps/$(*F).P
+ @-rm -f .deps/$(*F).p
+info:
+dvi:
+check: all
+ $(MAKE)
+installcheck:
+install-exec:
+ @$(NORMAL_INSTALL)
+
+install-data:
+ @$(NORMAL_INSTALL)
+
+install: install-exec install-data all
+ @:
+
+uninstall:
-include ../Makefile.inc
+install-strip:
+ $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install
+installdirs:
-LIBOBJECTS = @MISCOBJS@
-LIBMISC = libmisc.a
-# -----------------------------------------------------------------------
+mostlyclean-generic:
+ -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
-TARGET=everything
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-all: $(TARGET)
+distclean-generic:
+ -rm -f Makefile $(DISTCLEANFILES)
+ -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-everything: $(LIBMISC)
+maintainer-clean-generic:
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+ -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+mostlyclean: mostlyclean-noinstLIBRARIES mostlyclean-compile \
+ mostlyclean-tags mostlyclean-depend mostlyclean-generic
-$(LIBMISC): $(LIBOBJECTS)
- $(AR) r $@ $(LIBOBJECTS)
- $(RANLIB) $@
+clean: clean-noinstLIBRARIES clean-compile clean-tags clean-depend \
+ clean-generic mostlyclean
-$(PROGS): $(LIBOBJECTS)
+distclean: distclean-noinstLIBRARIES distclean-compile distclean-tags \
+ distclean-depend distclean-generic clean
+ -rm -f config.status
-clean:
- rm -f *.a *.o *~ $(PROGS)
+maintainer-clean: maintainer-clean-noinstLIBRARIES \
+ maintainer-clean-compile maintainer-clean-tags \
+ maintainer-clean-depend maintainer-clean-generic \
+ distclean
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
-distclean: clean
- rm -f Makefile
+.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \
+clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \
+mostlyclean-compile distclean-compile clean-compile \
+maintainer-clean-compile tags mostlyclean-tags distclean-tags \
+clean-tags maintainer-clean-tags distdir mostlyclean-depend \
+distclean-depend clean-depend maintainer-clean-depend info dvi \
+installcheck install-exec install-data install uninstall all \
+installdirs mostlyclean-generic distclean-generic clean-generic \
+maintainer-clean-generic clean mostlyclean distclean maintainer-clean
-depend:
- topdir_path=`( cd $(top_srcdir) && pwd )` ; \
- /bin/rm -f .depend ; \
- $(CPP) $(CFLAGS) -MM $(srcdir)/*.c | \
- sed s+$$topdir_path+$(top_srcdir)+g > .depend
-ifeq (.depend,$(wildcard .depend))
-include .depend
-endif
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/misc/alloca.c b/misc/alloca.c
new file mode 100644
index 000000000..c1699c42d
--- /dev/null
+++ b/misc/alloca.c
@@ -0,0 +1,504 @@
+/* alloca.c -- allocate automatically reclaimed memory
+ (Mostly) portable public-domain implementation -- D A Gwyn
+
+ This implementation of the PWB library alloca function,
+ which is used to allocate space off the run-time stack so
+ that it is automatically reclaimed upon procedure exit,
+ was inspired by discussions with J. Q. Johnson of Cornell.
+ J.Otto Tennant <jot@cray.com> contributed the Cray support.
+
+ There are some preprocessor constants that can
+ be defined when compiling for your specific system, for
+ improved efficiency; however, the defaults should be okay.
+
+ The general concept of this implementation is to keep
+ track of all alloca-allocated blocks, and reclaim any
+ that are found to be deeper in the stack than the current
+ invocation. This heuristic does not reclaim storage as
+ soon as it becomes invalid, but it will do so eventually.
+
+ As a special case, alloca(0) reclaims storage without
+ allocating any. It is a good idea to use alloca(0) in
+ your main control loop, etc. to force garbage collection. */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#ifdef HAVE_STRING_H
+#include <string.h>
+#endif
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+
+#ifdef emacs
+#include "blockinput.h"
+#endif
+
+/* If compiling with GCC 2, this file's not needed. */
+#if !defined (__GNUC__) || __GNUC__ < 2
+
+/* If someone has defined alloca as a macro,
+ there must be some other way alloca is supposed to work. */
+#ifndef alloca
+
+#ifdef emacs
+#ifdef static
+/* actually, only want this if static is defined as ""
+ -- this is for usg, in which emacs must undefine static
+ in order to make unexec workable
+ */
+#ifndef STACK_DIRECTION
+you
+lose
+-- must know STACK_DIRECTION at compile-time
+#endif /* STACK_DIRECTION undefined */
+#endif /* static */
+#endif /* emacs */
+
+/* If your stack is a linked list of frames, you have to
+ provide an "address metric" ADDRESS_FUNCTION macro. */
+
+#if defined (CRAY) && defined (CRAY_STACKSEG_END)
+long i00afunc ();
+#define ADDRESS_FUNCTION(arg) (char *) i00afunc (&(arg))
+#else
+#define ADDRESS_FUNCTION(arg) &(arg)
+#endif
+
+#if __STDC__
+typedef void *pointer;
+#else
+typedef char *pointer;
+#endif
+
+#ifndef NULL
+#define NULL 0
+#endif
+
+/* Different portions of Emacs need to call different versions of
+ malloc. The Emacs executable needs alloca to call xmalloc, because
+ ordinary malloc isn't protected from input signals. On the other
+ hand, the utilities in lib-src need alloca to call malloc; some of
+ them are very simple, and don't have an xmalloc routine.
+
+ Non-Emacs programs expect this to call xmalloc.
+
+ Callers below should use malloc. */
+
+#ifndef emacs
+#define malloc xmalloc
+#endif
+extern pointer malloc ();
+
+/* Define STACK_DIRECTION if you know the direction of stack
+ growth for your system; otherwise it will be automatically
+ deduced at run-time.
+
+ STACK_DIRECTION > 0 => grows toward higher addresses
+ STACK_DIRECTION < 0 => grows toward lower addresses
+ STACK_DIRECTION = 0 => direction of growth unknown */
+
+#ifndef STACK_DIRECTION
+#define STACK_DIRECTION 0 /* Direction unknown. */
+#endif
+
+#if STACK_DIRECTION != 0
+
+#define STACK_DIR STACK_DIRECTION /* Known at compile-time. */
+
+#else /* STACK_DIRECTION == 0; need run-time code. */
+
+static int stack_dir; /* 1 or -1 once known. */
+#define STACK_DIR stack_dir
+
+static void
+find_stack_direction ()
+{
+ static char *addr = NULL; /* Address of first `dummy', once known. */
+ auto char dummy; /* To get stack address. */
+
+ if (addr == NULL)
+ { /* Initial entry. */
+ addr = ADDRESS_FUNCTION (dummy);
+
+ find_stack_direction (); /* Recurse once. */
+ }
+ else
+ {
+ /* Second entry. */
+ if (ADDRESS_FUNCTION (dummy) > addr)
+ stack_dir = 1; /* Stack grew upward. */
+ else
+ stack_dir = -1; /* Stack grew downward. */
+ }
+}
+
+#endif /* STACK_DIRECTION == 0 */
+
+/* An "alloca header" is used to:
+ (a) chain together all alloca'ed blocks;
+ (b) keep track of stack depth.
+
+ It is very important that sizeof(header) agree with malloc
+ alignment chunk size. The following default should work okay. */
+
+#ifndef ALIGN_SIZE
+#define ALIGN_SIZE sizeof(double)
+#endif
+
+typedef union hdr
+{
+ char align[ALIGN_SIZE]; /* To force sizeof(header). */
+ struct
+ {
+ union hdr *next; /* For chaining headers. */
+ char *deep; /* For stack depth measure. */
+ } h;
+} header;
+
+static header *last_alloca_header = NULL; /* -> last alloca header. */
+
+/* Return a pointer to at least SIZE bytes of storage,
+ which will be automatically reclaimed upon exit from
+ the procedure that called alloca. Originally, this space
+ was supposed to be taken from the current stack frame of the
+ caller, but that method cannot be made to work for some
+ implementations of C, for example under Gould's UTX/32. */
+
+pointer
+alloca (size)
+ unsigned size;
+{
+ auto char probe; /* Probes stack depth: */
+ register char *depth = ADDRESS_FUNCTION (probe);
+
+#if STACK_DIRECTION == 0
+ if (STACK_DIR == 0) /* Unknown growth direction. */
+ find_stack_direction ();
+#endif
+
+ /* Reclaim garbage, defined as all alloca'd storage that
+ was allocated from deeper in the stack than currently. */
+
+ {
+ register header *hp; /* Traverses linked list. */
+
+#ifdef emacs
+ BLOCK_INPUT;
+#endif
+
+ for (hp = last_alloca_header; hp != NULL;)
+ if ((STACK_DIR > 0 && hp->h.deep > depth)
+ || (STACK_DIR < 0 && hp->h.deep < depth))
+ {
+ register header *np = hp->h.next;
+
+ free ((pointer) hp); /* Collect garbage. */
+
+ hp = np; /* -> next header. */
+ }
+ else
+ break; /* Rest are not deeper. */
+
+ last_alloca_header = hp; /* -> last valid storage. */
+
+#ifdef emacs
+ UNBLOCK_INPUT;
+#endif
+ }
+
+ if (size == 0)
+ return NULL; /* No allocation required. */
+
+ /* Allocate combined header + user data storage. */
+
+ {
+ register pointer new = malloc (sizeof (header) + size);
+ /* Address of header. */
+
+ if (new == 0)
+ abort();
+
+ ((header *) new)->h.next = last_alloca_header;
+ ((header *) new)->h.deep = depth;
+
+ last_alloca_header = (header *) new;
+
+ /* User storage begins just after header. */
+
+ return (pointer) ((char *) new + sizeof (header));
+ }
+}
+
+#if defined (CRAY) && defined (CRAY_STACKSEG_END)
+
+#ifdef DEBUG_I00AFUNC
+#include <stdio.h>
+#endif
+
+#ifndef CRAY_STACK
+#define CRAY_STACK
+#ifndef CRAY2
+/* Stack structures for CRAY-1, CRAY X-MP, and CRAY Y-MP */
+struct stack_control_header
+ {
+ long shgrow:32; /* Number of times stack has grown. */
+ long shaseg:32; /* Size of increments to stack. */
+ long shhwm:32; /* High water mark of stack. */
+ long shsize:32; /* Current size of stack (all segments). */
+ };
+
+/* The stack segment linkage control information occurs at
+ the high-address end of a stack segment. (The stack
+ grows from low addresses to high addresses.) The initial
+ part of the stack segment linkage control information is
+ 0200 (octal) words. This provides for register storage
+ for the routine which overflows the stack. */
+
+struct stack_segment_linkage
+ {
+ long ss[0200]; /* 0200 overflow words. */
+ long sssize:32; /* Number of words in this segment. */
+ long ssbase:32; /* Offset to stack base. */
+ long:32;
+ long sspseg:32; /* Offset to linkage control of previous
+ segment of stack. */
+ long:32;
+ long sstcpt:32; /* Pointer to task common address block. */
+ long sscsnm; /* Private control structure number for
+ microtasking. */
+ long ssusr1; /* Reserved for user. */
+ long ssusr2; /* Reserved for user. */
+ long sstpid; /* Process ID for pid based multi-tasking. */
+ long ssgvup; /* Pointer to multitasking thread giveup. */
+ long sscray[7]; /* Reserved for Cray Research. */
+ long ssa0;
+ long ssa1;
+ long ssa2;
+ long ssa3;
+ long ssa4;
+ long ssa5;
+ long ssa6;
+ long ssa7;
+ long sss0;
+ long sss1;
+ long sss2;
+ long sss3;
+ long sss4;
+ long sss5;
+ long sss6;
+ long sss7;
+ };
+
+#else /* CRAY2 */
+/* The following structure defines the vector of words
+ returned by the STKSTAT library routine. */
+struct stk_stat
+ {
+ long now; /* Current total stack size. */
+ long maxc; /* Amount of contiguous space which would
+ be required to satisfy the maximum
+ stack demand to date. */
+ long high_water; /* Stack high-water mark. */
+ long overflows; /* Number of stack overflow ($STKOFEN) calls. */
+ long hits; /* Number of internal buffer hits. */
+ long extends; /* Number of block extensions. */
+ long stko_mallocs; /* Block allocations by $STKOFEN. */
+ long underflows; /* Number of stack underflow calls ($STKRETN). */
+ long stko_free; /* Number of deallocations by $STKRETN. */
+ long stkm_free; /* Number of deallocations by $STKMRET. */
+ long segments; /* Current number of stack segments. */
+ long maxs; /* Maximum number of stack segments so far. */
+ long pad_size; /* Stack pad size. */
+ long current_address; /* Current stack segment address. */
+ long current_size; /* Current stack segment size. This
+ number is actually corrupted by STKSTAT to
+ include the fifteen word trailer area. */
+ long initial_address; /* Address of initial segment. */
+ long initial_size; /* Size of initial segment. */
+ };
+
+/* The following structure describes the data structure which trails
+ any stack segment. I think that the description in 'asdef' is
+ out of date. I only describe the parts that I am sure about. */
+
+struct stk_trailer
+ {
+ long this_address; /* Address of this block. */
+ long this_size; /* Size of this block (does not include
+ this trailer). */
+ long unknown2;
+ long unknown3;
+ long link; /* Address of trailer block of previous
+ segment. */
+ long unknown5;
+ long unknown6;
+ long unknown7;
+ long unknown8;
+ long unknown9;
+ long unknown10;
+ long unknown11;
+ long unknown12;
+ long unknown13;
+ long unknown14;
+ };
+
+#endif /* CRAY2 */
+#endif /* not CRAY_STACK */
+
+#ifdef CRAY2
+/* Determine a "stack measure" for an arbitrary ADDRESS.
+ I doubt that "lint" will like this much. */
+
+static long
+i00afunc (long *address)
+{
+ struct stk_stat status;
+ struct stk_trailer *trailer;
+ long *block, size;
+ long result = 0;
+
+ /* We want to iterate through all of the segments. The first
+ step is to get the stack status structure. We could do this
+ more quickly and more directly, perhaps, by referencing the
+ $LM00 common block, but I know that this works. */
+
+ STKSTAT (&status);
+
+ /* Set up the iteration. */
+
+ trailer = (struct stk_trailer *) (status.current_address
+ + status.current_size
+ - 15);
+
+ /* There must be at least one stack segment. Therefore it is
+ a fatal error if "trailer" is null. */
+
+ if (trailer == 0)
+ abort ();
+
+ /* Discard segments that do not contain our argument address. */
+
+ while (trailer != 0)
+ {
+ block = (long *) trailer->this_address;
+ size = trailer->this_size;
+ if (block == 0 || size == 0)
+ abort ();
+ trailer = (struct stk_trailer *) trailer->link;
+ if ((block <= address) && (address < (block + size)))
+ break;
+ }
+
+ /* Set the result to the offset in this segment and add the sizes
+ of all predecessor segments. */
+
+ result = address - block;
+
+ if (trailer == 0)
+ {
+ return result;
+ }
+
+ do
+ {
+ if (trailer->this_size <= 0)
+ abort ();
+ result += trailer->this_size;
+ trailer = (struct stk_trailer *) trailer->link;
+ }
+ while (trailer != 0);
+
+ /* We are done. Note that if you present a bogus address (one
+ not in any segment), you will get a different number back, formed
+ from subtracting the address of the first block. This is probably
+ not what you want. */
+
+ return (result);
+}
+
+#else /* not CRAY2 */
+/* Stack address function for a CRAY-1, CRAY X-MP, or CRAY Y-MP.
+ Determine the number of the cell within the stack,
+ given the address of the cell. The purpose of this
+ routine is to linearize, in some sense, stack addresses
+ for alloca. */
+
+static long
+i00afunc (long address)
+{
+ long stkl = 0;
+
+ long size, pseg, this_segment, stack;
+ long result = 0;
+
+ struct stack_segment_linkage *ssptr;
+
+ /* Register B67 contains the address of the end of the
+ current stack segment. If you (as a subprogram) store
+ your registers on the stack and find that you are past
+ the contents of B67, you have overflowed the segment.
+
+ B67 also points to the stack segment linkage control
+ area, which is what we are really interested in. */
+
+ stkl = CRAY_STACKSEG_END ();
+ ssptr = (struct stack_segment_linkage *) stkl;
+
+ /* If one subtracts 'size' from the end of the segment,
+ one has the address of the first word of the segment.
+
+ If this is not the first segment, 'pseg' will be
+ nonzero. */
+
+ pseg = ssptr->sspseg;
+ size = ssptr->sssize;
+
+ this_segment = stkl - size;
+
+ /* It is possible that calling this routine itself caused
+ a stack overflow. Discard stack segments which do not
+ contain the target address. */
+
+ while (!(this_segment <= address && address <= stkl))
+ {
+#ifdef DEBUG_I00AFUNC
+ fprintf (stderr, "%011o %011o %011o\n", this_segment, address, stkl);
+#endif
+ if (pseg == 0)
+ break;
+ stkl = stkl - pseg;
+ ssptr = (struct stack_segment_linkage *) stkl;
+ size = ssptr->sssize;
+ pseg = ssptr->sspseg;
+ this_segment = stkl - size;
+ }
+
+ result = address - this_segment;
+
+ /* If you subtract pseg from the current end of the stack,
+ you get the address of the previous stack segment's end.
+ This seems a little convoluted to me, but I'll bet you save
+ a cycle somewhere. */
+
+ while (pseg != 0)
+ {
+#ifdef DEBUG_I00AFUNC
+ fprintf (stderr, "%011o %011o\n", pseg, size);
+#endif
+ stkl = stkl - pseg;
+ ssptr = (struct stack_segment_linkage *) stkl;
+ size = ssptr->sssize;
+ pseg = ssptr->sspseg;
+ result += size;
+ }
+ return (result);
+}
+
+#endif /* not CRAY2 */
+#endif /* CRAY */
+
+#endif /* no alloca */
+#endif /* not GCC version 2 */
diff --git a/misc/fnmatch.c b/misc/fnmatch.c
index f802d4042..ca38e1daf 100644
--- a/misc/fnmatch.c
+++ b/misc/fnmatch.c
@@ -15,9 +15,7 @@ License along with this library; see the file COPYING.LIB. If
not, write to the Free Software Foundation, Inc., 675 Mass Ave,
Cambridge, MA 02139, USA. */
-#include <errno.h>
-#include <ctype.h>
-
+#include "system.h"
/* Comment out all this code if we are using the GNU C Library, and are not
actually compiling the library itself. This code is part of the GNU C
diff --git a/misc/fnmatch.h b/misc/fnmatch.h
new file mode 100644
index 000000000..d9d73b3d8
--- /dev/null
+++ b/misc/fnmatch.h
@@ -0,0 +1,67 @@
+/* Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc.
+
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Library General Public License as
+published by the Free Software Foundation; either version 2 of the
+License, or (at your option) any later version.
+
+This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Library General Public License for more details.
+
+You should have received a copy of the GNU Library General Public
+License along with this library; see the file COPYING.LIB. If
+not, write to the Free Software Foundation, Inc., 675 Mass Ave,
+Cambridge, MA 02139, USA. */
+
+#ifndef _FNMATCH_H
+
+#define _FNMATCH_H 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#if defined (__cplusplus) || (defined (__STDC__) && __STDC__)
+#undef __P
+#define __P(protos) protos
+#else /* Not C++ or ANSI C. */
+#undef __P
+#define __P(protos) ()
+/* We can get away without defining `const' here only because in this file
+ it is used only inside the prototype for `fnmatch', which is elided in
+ non-ANSI C where `const' is problematical. */
+#endif /* C++ or ANSI C. */
+
+
+/* We #undef these before defining them because some losing systems
+ (HP-UX A.08.07 for example) define these in <unistd.h>. */
+#undef FNM_PATHNAME
+#undef FNM_NOESCAPE
+#undef FNM_PERIOD
+
+/* Bits set in the FLAGS argument to `fnmatch'. */
+#define FNM_PATHNAME (1 << 0) /* No wildcard can ever match `/'. */
+#define FNM_NOESCAPE (1 << 1) /* Backslashes don't quote special chars. */
+#define FNM_PERIOD (1 << 2) /* Leading `.' is matched only explicitly. */
+
+#if !defined (_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 2 || defined (_GNU_SOURCE)
+#define FNM_FILE_NAME FNM_PATHNAME /* Preferred GNU name. */
+#define FNM_LEADING_DIR (1 << 3) /* Ignore `/...' after a match. */
+#define FNM_CASEFOLD (1 << 4) /* Compare without regard to case. */
+#endif
+
+/* Value returned by `fnmatch' if STRING does not match PATTERN. */
+#define FNM_NOMATCH 1
+
+/* Match STRING against the filename pattern PATTERN,
+ returning zero if it matches, FNM_NOMATCH if not. */
+extern int fnmatch __P ((const char *__pattern, const char *__string,
+ int __flags));
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* fnmatch.h */
diff --git a/misc/getcwd.c b/misc/getcwd.c
new file mode 100644
index 000000000..60c1dd84e
--- /dev/null
+++ b/misc/getcwd.c
@@ -0,0 +1,52 @@
+/* Emulate getcwd using getwd.
+ This function is in the public domain. */
+
+/*
+NAME
+ getcwd -- get absolute pathname for current working directory
+
+SYNOPSIS
+ char *getcwd (char pathname[len], len)
+
+DESCRIPTION
+ Copy the absolute pathname for the current working directory into
+ the supplied buffer and return a pointer to the buffer. If the
+ current directory's path doesn't fit in LEN characters, the result
+ is NULL and errno is set.
+
+BUGS
+ Emulated via the getwd() call, which is reasonable for most
+ systems that do not have getcwd().
+
+*/
+
+#ifndef NO_SYS_PARAM_H
+#include <sys/param.h>
+#endif
+#include <errno.h>
+
+extern char *getwd ();
+extern int errno;
+
+#ifndef MAXPATHLEN
+#define MAXPATHLEN 1024
+#endif
+
+char *
+getcwd (buf, len)
+ char *buf;
+ int len;
+{
+ char ourbuf[MAXPATHLEN];
+ char *result;
+
+ result = getwd (ourbuf);
+ if (result) {
+ if (strlen (ourbuf) >= len) {
+ errno = ERANGE;
+ return 0;
+ }
+ strcpy (buf, ourbuf);
+ }
+ return buf;
+}
diff --git a/misc/getwd.c b/misc/getwd.c
new file mode 100644
index 000000000..a7a64b82d
--- /dev/null
+++ b/misc/getwd.c
@@ -0,0 +1,29 @@
+/* getwd.c -- get current working directory pathname
+ Copyright (C) 1992 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details. */
+
+/* Some systems which include both getwd() and getcwd() have an implementation
+ of getwd() which is much faster than getcwd(). As a result, we use the
+ system's getwd() if it is available */
+
+#include "system.h"
+
+/* Get the current working directory into PATHNAME */
+
+char *
+getwd (pathname)
+ char *pathname;
+{
+ char *getcwd();
+
+ return (getcwd(pathname, PATH_MAX));
+}
diff --git a/misc/glob.c b/misc/glob.c
index 886e837ef..8cfd3377a 100644
--- a/misc/glob.c
+++ b/misc/glob.c
@@ -32,7 +32,6 @@ Cambridge, MA 02139, USA. */
#if defined (_LIBC) || !defined (__GNU_LIBRARY__)
-
#ifdef STDC_HEADERS
#include <stddef.h>
#endif
@@ -69,18 +68,12 @@ extern int errno;
#else /* No standard headers. */
#ifdef HAVE_STRING_H
-#include <string.h>
#define ANSI_STRING
-#else
-#include <strings.h>
#endif
#ifdef HAVE_MEMORY_H
#include <memory.h>
#endif
-extern char *malloc (), *realloc ();
-extern void free ();
-
extern void qsort ();
extern void abort (), exit ();
@@ -152,21 +145,21 @@ extern char *alloca ();
/* Some system header files erroneously define these.
We want our own definitions from <fnmatch.h> to take precedence. */
-#undef FNM_PATHNAME
-#undef FNM_NOESCAPE
-#undef FNM_PERIOD
+#undef FNM_PATHNAME
+#undef FNM_NOESCAPE
+#undef FNM_PERIOD
/* Some system header files erroneously define these.
We want our own definitions from <glob.h> to take precedence. */
-#undef GLOB_ERR
-#undef GLOB_MARK
-#undef GLOB_NOSORT
-#undef GLOB_DOOFFS
-#undef GLOB_NOCHECK
-#undef GLOB_APPEND
-#undef GLOB_NOESCAPE
-#undef GLOB_PERIOD
-
+#undef GLOB_ERR
+#undef GLOB_MARK
+#undef GLOB_NOSORT
+#undef GLOB_DOOFFS
+#undef GLOB_NOCHECK
+#undef GLOB_APPEND
+#undef GLOB_NOESCAPE
+#undef GLOB_PERIOD
+
__ptr_t (*__glob_opendir_hook) __P ((const char *directory));
const char *(*__glob_readdir_hook) __P ((__ptr_t stream));
void (*__glob_closedir_hook) __P ((__ptr_t stream));
diff --git a/misc/glob.h b/misc/glob.h
new file mode 100644
index 000000000..05ad47f05
--- /dev/null
+++ b/misc/glob.h
@@ -0,0 +1,97 @@
+/* Copyright (C) 1991, 1992 Free Software Foundation, Inc.
+
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Library General Public License as
+published by the Free Software Foundation; either version 2 of the
+License, or (at your option) any later version.
+
+This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Library General Public License for more details.
+
+You should have received a copy of the GNU Library General Public
+License along with this library; see the file COPYING.LIB. If
+not, write to the Free Software Foundation, Inc., 675 Mass Ave,
+Cambridge, MA 02139, USA. */
+
+#ifndef _GLOB_H
+
+#define _GLOB_H 1
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+#undef __ptr_t
+#if defined (__cplusplus) || (defined (__STDC__) && __STDC__)
+#undef __P
+#define __P(protos) protos
+#define __ptr_t void *
+#else /* Not C++ or ANSI C. */
+#undef __P
+#define __P(protos) ()
+#undef const
+#define const
+#define __ptr_t char *
+#endif /* C++ or ANSI C. */
+
+/* Bits set in the FLAGS argument to `glob'. */
+#define GLOB_ERR (1 << 0)/* Return on read errors. */
+#define GLOB_MARK (1 << 1)/* Append a slash to each name. */
+#define GLOB_NOSORT (1 << 2)/* Don't sort the names. */
+#define GLOB_DOOFFS (1 << 3)/* Insert PGLOB->gl_offs NULLs. */
+#define GLOB_NOCHECK (1 << 4)/* If nothing matches, return the pattern. */
+#define GLOB_APPEND (1 << 5)/* Append to results of a previous call. */
+#define GLOB_NOESCAPE (1 << 6)/* Backslashes don't quote metacharacters. */
+#define GLOB_PERIOD (1 << 7)/* Leading `.' can be matched by metachars. */
+#define __GLOB_FLAGS (GLOB_ERR|GLOB_MARK|GLOB_NOSORT|GLOB_DOOFFS| \
+ GLOB_NOESCAPE|GLOB_NOCHECK|GLOB_APPEND|GLOB_PERIOD)
+
+#if !defined (_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 2 || defined (_BSD_SOURCE)
+#define GLOB_MAGCHAR (1 << 8)/* Set in gl_flags if any metachars seen. */
+#endif
+
+/* Error returns from `glob'. */
+#define GLOB_NOSPACE 1 /* Ran out of memory. */
+#define GLOB_ABEND 2 /* Read error. */
+#define GLOB_NOMATCH 3 /* No matches found. */
+
+/* Structure describing a globbing run. */
+typedef struct
+ {
+ int gl_pathc; /* Count of paths matched by the pattern. */
+ char **gl_pathv; /* List of matched pathnames. */
+ int gl_offs; /* Slots to reserve in `gl_pathv'. */
+ int gl_flags; /* Set to FLAGS, maybe | GLOB_MAGCHAR. */
+ } glob_t;
+
+/* Do glob searching for PATTERN, placing results in PGLOB.
+ The bits defined above may be set in FLAGS.
+ If a directory cannot be opened or read and ERRFUNC is not nil,
+ it is called with the pathname that caused the error, and the
+ `errno' value from the failing call; if it returns non-zero
+ `glob' returns GLOB_ABEND; if it returns zero, the error is ignored.
+ If memory cannot be allocated for PGLOB, GLOB_NOSPACE is returned.
+ Otherwise, `glob' returns zero. */
+extern int glob __P ((const char *__pattern, int __flags,
+ int (*__errfunc) __P ((const char *, int)),
+ glob_t *__pglob));
+
+/* Free storage allocated in PGLOB by a previous `glob' call. */
+extern void globfree __P ((glob_t *__pglob));
+
+
+#if !defined (_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 2 || defined (_GNU_SOURCE)
+/* If they are not NULL, `glob' uses these functions to read directories. */
+extern __ptr_t (*__glob_opendir_hook) __P ((const char *__directory));
+extern const char *(*__glob_readdir_hook) __P ((__ptr_t __stream));
+extern void (*__glob_closedir_hook) __P ((__ptr_t __stream));
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* glob.h */
diff --git a/misc/inet_aton.c b/misc/inet_aton.c
index c49852036..bee41865d 100644
--- a/misc/inet_aton.c
+++ b/misc/inet_aton.c
@@ -10,7 +10,9 @@
#include "inet_aton.h"
-int inet_aton(const char *cp, struct in_addr *inp) {
+int
+inet_aton(const char *cp, struct in_addr *inp)
+{
long addr;
addr = inet_addr(cp);
diff --git a/misc/memcmp.c b/misc/memcmp.c
new file mode 100644
index 000000000..6096651e5
--- /dev/null
+++ b/misc/memcmp.c
@@ -0,0 +1,373 @@
+/* Copyright (C) 1991, 1993, 1995 Free Software Foundation, Inc.
+ Contributed by Torbjorn Granlund (tege@sics.se).
+
+NOTE: The canonical source of this file is maintained with the GNU C Library.
+Bugs can be reported to bug-glibc@prep.ai.mit.edu.
+
+This program is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 2, or (at your option) any
+later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software Foundation,
+Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#undef __ptr_t
+#if defined (__cplusplus) || (defined (__STDC__) && __STDC__)
+#define __ptr_t void *
+#else /* Not C++ or ANSI C. */
+#undef const
+#define const
+#define __ptr_t char *
+#endif /* C++ or ANSI C. */
+
+#if defined (HAVE_STRING_H) || defined (_LIBC)
+#include <string.h>
+#endif
+
+#ifdef _LIBC
+
+#include <memcopy.h>
+
+#else /* Not in the GNU C library. */
+
+#include <sys/types.h>
+
+/* Type to use for aligned memory operations.
+ This should normally be the biggest type supported by a single load
+ and store. Must be an unsigned type. */
+#define op_t unsigned long int
+#define OPSIZ (sizeof(op_t))
+
+/* Threshold value for when to enter the unrolled loops. */
+#define OP_T_THRES 16
+
+/* Type to use for unaligned operations. */
+typedef unsigned char byte;
+
+#ifndef WORDS_BIGENDIAN
+#define MERGE(w0, sh_1, w1, sh_2) (((w0) >> (sh_1)) | ((w1) << (sh_2)))
+#else
+#define MERGE(w0, sh_1, w1, sh_2) (((w0) << (sh_1)) | ((w1) >> (sh_2)))
+#endif
+
+#endif /* In the GNU C library. */
+
+#ifdef WORDS_BIGENDIAN
+#define CMP_LT_OR_GT(a, b) ((a) > (b) ? 1 : -1)
+#else
+#define CMP_LT_OR_GT(a, b) memcmp_bytes ((a), (b))
+#endif
+
+/* BE VERY CAREFUL IF YOU CHANGE THIS CODE! */
+
+/* The strategy of this memcmp is:
+
+ 1. Compare bytes until one of the block pointers is aligned.
+
+ 2. Compare using memcmp_common_alignment or
+ memcmp_not_common_alignment, regarding the alignment of the other
+ block after the initial byte operations. The maximum number of
+ full words (of type op_t) are compared in this way.
+
+ 3. Compare the few remaining bytes. */
+
+#ifndef WORDS_BIGENDIAN
+/* memcmp_bytes -- Compare A and B bytewise in the byte order of the machine.
+ A and B are known to be different.
+ This is needed only on little-endian machines. */
+#ifdef __GNUC__
+__inline
+#endif
+static int
+memcmp_bytes (a, b)
+ op_t a, b;
+{
+ long int srcp1 = (long int) &a;
+ long int srcp2 = (long int) &b;
+ op_t a0, b0;
+
+ do
+ {
+ a0 = ((byte *) srcp1)[0];
+ b0 = ((byte *) srcp2)[0];
+ srcp1 += 1;
+ srcp2 += 1;
+ }
+ while (a0 == b0);
+ return a0 - b0;
+}
+#endif
+
+/* memcmp_common_alignment -- Compare blocks at SRCP1 and SRCP2 with LEN `op_t'
+ objects (not LEN bytes!). Both SRCP1 and SRCP2 should be aligned for
+ memory operations on `op_t's. */
+#ifdef __GNUC__
+__inline
+#endif
+static int
+memcmp_common_alignment (srcp1, srcp2, len)
+ long int srcp1;
+ long int srcp2;
+ size_t len;
+{
+ op_t a0, a1;
+ op_t b0, b1;
+
+ switch (len % 4)
+ {
+ case 2:
+ a0 = ((op_t *) srcp1)[0];
+ b0 = ((op_t *) srcp2)[0];
+ srcp1 -= 2 * OPSIZ;
+ srcp2 -= 2 * OPSIZ;
+ len += 2;
+ goto do1;
+ case 3:
+ a1 = ((op_t *) srcp1)[0];
+ b1 = ((op_t *) srcp2)[0];
+ srcp1 -= OPSIZ;
+ srcp2 -= OPSIZ;
+ len += 1;
+ goto do2;
+ case 0:
+ if (OP_T_THRES <= 3 * OPSIZ && len == 0)
+ return 0;
+ a0 = ((op_t *) srcp1)[0];
+ b0 = ((op_t *) srcp2)[0];
+ goto do3;
+ case 1:
+ a1 = ((op_t *) srcp1)[0];
+ b1 = ((op_t *) srcp2)[0];
+ srcp1 += OPSIZ;
+ srcp2 += OPSIZ;
+ len -= 1;
+ if (OP_T_THRES <= 3 * OPSIZ && len == 0)
+ goto do0;
+ /* Fall through. */
+ }
+
+ do
+ {
+ a0 = ((op_t *) srcp1)[0];
+ b0 = ((op_t *) srcp2)[0];
+ if (a1 != b1)
+ return CMP_LT_OR_GT (a1, b1);
+
+ do3:
+ a1 = ((op_t *) srcp1)[1];
+ b1 = ((op_t *) srcp2)[1];
+ if (a0 != b0)
+ return CMP_LT_OR_GT (a0, b0);
+
+ do2:
+ a0 = ((op_t *) srcp1)[2];
+ b0 = ((op_t *) srcp2)[2];
+ if (a1 != b1)
+ return CMP_LT_OR_GT (a1, b1);
+
+ do1:
+ a1 = ((op_t *) srcp1)[3];
+ b1 = ((op_t *) srcp2)[3];
+ if (a0 != b0)
+ return CMP_LT_OR_GT (a0, b0);
+
+ srcp1 += 4 * OPSIZ;
+ srcp2 += 4 * OPSIZ;
+ len -= 4;
+ }
+ while (len != 0);
+
+ /* This is the right position for do0. Please don't move
+ it into the loop. */
+ do0:
+ if (a1 != b1)
+ return CMP_LT_OR_GT (a1, b1);
+ return 0;
+}
+
+/* memcmp_not_common_alignment -- Compare blocks at SRCP1 and SRCP2 with LEN
+ `op_t' objects (not LEN bytes!). SRCP2 should be aligned for memory
+ operations on `op_t', but SRCP1 *should be unaligned*. */
+#ifdef __GNUC__
+__inline
+#endif
+static int
+memcmp_not_common_alignment (srcp1, srcp2, len)
+ long int srcp1;
+ long int srcp2;
+ size_t len;
+{
+ op_t a0, a1, a2, a3;
+ op_t b0, b1, b2, b3;
+ op_t x;
+ int shl, shr;
+
+ /* Calculate how to shift a word read at the memory operation
+ aligned srcp1 to make it aligned for comparison. */
+
+ shl = 8 * (srcp1 % OPSIZ);
+ shr = 8 * OPSIZ - shl;
+
+ /* Make SRCP1 aligned by rounding it down to the beginning of the `op_t'
+ it points in the middle of. */
+ srcp1 &= -OPSIZ;
+
+ switch (len % 4)
+ {
+ case 2:
+ a1 = ((op_t *) srcp1)[0];
+ a2 = ((op_t *) srcp1)[1];
+ b2 = ((op_t *) srcp2)[0];
+ srcp1 -= 1 * OPSIZ;
+ srcp2 -= 2 * OPSIZ;
+ len += 2;
+ goto do1;
+ case 3:
+ a0 = ((op_t *) srcp1)[0];
+ a1 = ((op_t *) srcp1)[1];
+ b1 = ((op_t *) srcp2)[0];
+ srcp2 -= 1 * OPSIZ;
+ len += 1;
+ goto do2;
+ case 0:
+ if (OP_T_THRES <= 3 * OPSIZ && len == 0)
+ return 0;
+ a3 = ((op_t *) srcp1)[0];
+ a0 = ((op_t *) srcp1)[1];
+ b0 = ((op_t *) srcp2)[0];
+ srcp1 += 1 * OPSIZ;
+ goto do3;
+ case 1:
+ a2 = ((op_t *) srcp1)[0];
+ a3 = ((op_t *) srcp1)[1];
+ b3 = ((op_t *) srcp2)[0];
+ srcp1 += 2 * OPSIZ;
+ srcp2 += 1 * OPSIZ;
+ len -= 1;
+ if (OP_T_THRES <= 3 * OPSIZ && len == 0)
+ goto do0;
+ /* Fall through. */
+ }
+
+ do
+ {
+ a0 = ((op_t *) srcp1)[0];
+ b0 = ((op_t *) srcp2)[0];
+ x = MERGE(a2, shl, a3, shr);
+ if (x != b3)
+ return CMP_LT_OR_GT (x, b3);
+
+ do3:
+ a1 = ((op_t *) srcp1)[1];
+ b1 = ((op_t *) srcp2)[1];
+ x = MERGE(a3, shl, a0, shr);
+ if (x != b0)
+ return CMP_LT_OR_GT (x, b0);
+
+ do2:
+ a2 = ((op_t *) srcp1)[2];
+ b2 = ((op_t *) srcp2)[2];
+ x = MERGE(a0, shl, a1, shr);
+ if (x != b1)
+ return CMP_LT_OR_GT (x, b1);
+
+ do1:
+ a3 = ((op_t *) srcp1)[3];
+ b3 = ((op_t *) srcp2)[3];
+ x = MERGE(a1, shl, a2, shr);
+ if (x != b2)
+ return CMP_LT_OR_GT (x, b2);
+
+ srcp1 += 4 * OPSIZ;
+ srcp2 += 4 * OPSIZ;
+ len -= 4;
+ }
+ while (len != 0);
+
+ /* This is the right position for do0. Please don't move
+ it into the loop. */
+ do0:
+ x = MERGE(a2, shl, a3, shr);
+ if (x != b3)
+ return CMP_LT_OR_GT (x, b3);
+ return 0;
+}
+
+int
+memcmp (s1, s2, len)
+ const __ptr_t s1;
+ const __ptr_t s2;
+ size_t len;
+{
+ op_t a0;
+ op_t b0;
+ long int srcp1 = (long int) s1;
+ long int srcp2 = (long int) s2;
+ op_t res;
+
+ if (len >= OP_T_THRES)
+ {
+ /* There are at least some bytes to compare. No need to test
+ for LEN == 0 in this alignment loop. */
+ while (srcp2 % OPSIZ != 0)
+ {
+ a0 = ((byte *) srcp1)[0];
+ b0 = ((byte *) srcp2)[0];
+ srcp1 += 1;
+ srcp2 += 1;
+ res = a0 - b0;
+ if (res != 0)
+ return res;
+ len -= 1;
+ }
+
+ /* SRCP2 is now aligned for memory operations on `op_t'.
+ SRCP1 alignment determines if we can do a simple,
+ aligned compare or need to shuffle bits. */
+
+ if (srcp1 % OPSIZ == 0)
+ res = memcmp_common_alignment (srcp1, srcp2, len / OPSIZ);
+ else
+ res = memcmp_not_common_alignment (srcp1, srcp2, len / OPSIZ);
+ if (res != 0)
+ return res;
+
+ /* Number of bytes remaining in the interval [0..OPSIZ-1]. */
+ srcp1 += len & -OPSIZ;
+ srcp2 += len & -OPSIZ;
+ len %= OPSIZ;
+ }
+
+ /* There are just a few bytes to compare. Use byte memory operations. */
+ while (len != 0)
+ {
+ a0 = ((byte *) srcp1)[0];
+ b0 = ((byte *) srcp2)[0];
+ srcp1 += 1;
+ srcp2 += 1;
+ res = a0 - b0;
+ if (res != 0)
+ return res;
+ len -= 1;
+ }
+
+ return 0;
+}
+
+#ifdef weak_alias
+#undef bcmp
+weak_alias (memcmp, bcmp)
+#endif
+
+
diff --git a/misc/mktime.c b/misc/mktime.c
new file mode 100644
index 000000000..6004bc055
--- /dev/null
+++ b/misc/mktime.c
@@ -0,0 +1,408 @@
+/* Copyright (C) 1993, 1994, 1995 Free Software Foundation, Inc.
+ Contributed by Paul Eggert (eggert@twinsun.com).
+
+ NOTE: The canonical source of this file is maintained with the GNU C
+ Library. Bugs can be reported to bug-glibc@prep.ai.mit.edu.
+
+ This program is free software; you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by the
+ Free Software Foundation; either version 2, or (at your option) any
+ later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* Define this to have a standalone program to test this implementation of
+ mktime. */
+/* #define DEBUG 1 */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+/* Assume that leap seconds are possible, unless told otherwise.
+ If the host has a `zic' command with a `-L leapsecondfilename' option,
+ then it supports leap seconds; otherwise it probably doesn't. */
+#ifndef LEAP_SECONDS_POSSIBLE
+#define LEAP_SECONDS_POSSIBLE 1
+#endif
+
+#include <sys/types.h> /* Some systems define `time_t' here. */
+#include <time.h>
+
+#if __STDC__ || __GNU_LIBRARY__ || STDC_HEADERS
+#include <limits.h>
+#endif
+
+#if DEBUG
+#include <stdio.h>
+#if __STDC__ || __GNU_LIBRARY__ || STDC_HEADERS
+#include <stdlib.h>
+#endif
+/* Make it work even if the system's libc has its own mktime routine. */
+#define mktime my_mktime
+#endif /* DEBUG */
+
+#ifndef __P
+#if defined (__GNUC__) || (defined (__STDC__) && __STDC__)
+#define __P(args) args
+#else
+#define __P(args) ()
+#endif /* GCC. */
+#endif /* Not __P. */
+
+#ifndef CHAR_BIT
+#define CHAR_BIT 8
+#endif
+
+#ifndef INT_MIN
+#define INT_MIN (~0 << (sizeof (int) * CHAR_BIT - 1))
+#endif
+#ifndef INT_MAX
+#define INT_MAX (~0 - INT_MIN)
+#endif
+
+#ifndef TIME_T_MIN
+#define TIME_T_MIN (0 < (time_t) -1 ? (time_t) 0 \
+ : ~ (time_t) 0 << (sizeof (time_t) * CHAR_BIT - 1))
+#endif
+#ifndef TIME_T_MAX
+#define TIME_T_MAX (~ (time_t) 0 - TIME_T_MIN)
+#endif
+
+#define TM_YEAR_BASE 1900
+#define EPOCH_YEAR 1970
+
+#ifndef __isleap
+/* Nonzero if YEAR is a leap year (every 4 years,
+ except every 100th isn't, and every 400th is). */
+#define __isleap(year) \
+ ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0))
+#endif
+
+/* How many days come before each month (0-12). */
+static const unsigned short int __mon_yday[2][13] =
+ {
+ /* Normal years. */
+ { 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365 },
+ /* Leap years. */
+ { 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335, 366 }
+ };
+
+static time_t ydhms_tm_diff __P ((int, int, int, int, int, const struct tm *));
+static time_t __mktime_internal __P ((struct tm *,
+ struct tm *(*) (const time_t *, struct tm *),
+ time_t *));
+
+
+#if ! HAVE_LOCALTIME_R && ! defined (localtime_r)
+#ifdef _LIBC
+#define localtime_r __localtime_r
+#else
+/* Approximate localtime_r as best we can in its absence. */
+#define localtime_r my_localtime_r
+static struct tm *localtime_r __P ((const time_t *, struct tm *));
+static struct tm *
+localtime_r (t, tp)
+ const time_t *t;
+ struct tm *tp;
+{
+ struct tm *l = localtime (t);
+ if (! l)
+ return 0;
+ *tp = *l;
+ return tp;
+}
+#endif /* ! _LIBC */
+#endif /* ! HAVE_LOCALTIME_R && ! defined (localtime_r) */
+
+
+/* Yield the difference between (YEAR-YDAY HOUR:MIN:SEC) and (*TP),
+ measured in seconds, ignoring leap seconds.
+ YEAR uses the same numbering as TM->tm_year.
+ All values are in range, except possibly YEAR.
+ If overflow occurs, yield the low order bits of the correct answer. */
+static time_t
+ydhms_tm_diff (year, yday, hour, min, sec, tp)
+ int year, yday, hour, min, sec;
+ const struct tm *tp;
+{
+ time_t ay = year + (time_t) (TM_YEAR_BASE - 1);
+ time_t by = tp->tm_year + (time_t) (TM_YEAR_BASE - 1);
+ time_t intervening_leap_days =
+ (ay/4 - by/4) - (ay/100 - by/100) + (ay/400 - by/400);
+ time_t years = ay - by;
+ time_t days = (365 * years + intervening_leap_days
+ + (yday - tp->tm_yday));
+ return (60 * (60 * (24 * days + (hour - tp->tm_hour))
+ + (min - tp->tm_min))
+ + (sec - tp->tm_sec));
+}
+
+
+/* Convert *TP to a time_t value. */
+time_t
+mktime (tp)
+ struct tm *tp;
+{
+ static time_t localtime_offset;
+ return __mktime_internal (tp, localtime_r, &localtime_offset);
+}
+
+/* Convert *TP to a time_t value, inverting
+ the monotonic and mostly-unit-linear conversion function CONVERT.
+ Use *OFFSET to keep track of a guess at the offset of the result,
+ compared to what the result would be for UTC without leap seconds.
+ If *OFFSET's guess is correct, only one CONVERT call is needed. */
+static time_t
+__mktime_internal (tp, convert, offset)
+ struct tm *tp;
+ struct tm *(*convert) __P ((const time_t *, struct tm *));
+ time_t *offset;
+{
+ time_t t, dt, t0;
+ struct tm tm;
+
+ /* The maximum number of probes (calls to CONVERT) should be enough
+ to handle any combinations of time zone rule changes, solar time,
+ and leap seconds. Posix.1 prohibits leap seconds, but some hosts
+ have them anyway. */
+ int remaining_probes = 4;
+
+ /* Time requested. Copy it in case CONVERT modifies *TP; this can
+ occur if TP is localtime's returned value and CONVERT is localtime. */
+ int sec = tp->tm_sec;
+ int min = tp->tm_min;
+ int hour = tp->tm_hour;
+ int mday = tp->tm_mday;
+ int mon = tp->tm_mon;
+ int year_requested = tp->tm_year;
+ int isdst = tp->tm_isdst;
+
+ /* Ensure that mon is in range, and set year accordingly. */
+ int mon_remainder = mon % 12;
+ int negative_mon_remainder = mon_remainder < 0;
+ int mon_years = mon / 12 - negative_mon_remainder;
+ int year = year_requested + mon_years;
+
+ /* The other values need not be in range:
+ the remaining code handles minor overflows correctly,
+ assuming int and time_t arithmetic wraps around.
+ Major overflows are caught at the end. */
+
+ /* Calculate day of year from year, month, and day of month.
+ The result need not be in range. */
+ int yday = ((__mon_yday[__isleap (year + TM_YEAR_BASE)]
+ [mon_remainder + 12 * negative_mon_remainder])
+ + mday - 1);
+
+#if LEAP_SECONDS_POSSIBLE
+ /* Handle out-of-range seconds specially,
+ since ydhms_tm_diff assumes every minute has 60 seconds. */
+ int sec_requested = sec;
+ if (sec < 0)
+ sec = 0;
+ if (59 < sec)
+ sec = 59;
+#endif
+
+ /* Invert CONVERT by probing. First assume the same offset as last time.
+ Then repeatedly use the error to improve the guess. */
+
+ tm.tm_year = EPOCH_YEAR - TM_YEAR_BASE;
+ tm.tm_yday = tm.tm_hour = tm.tm_min = tm.tm_sec = 0;
+ t0 = ydhms_tm_diff (year, yday, hour, min, sec, &tm);
+
+ for (t = t0 + *offset;
+ (dt = ydhms_tm_diff (year, yday, hour, min, sec, (*convert) (&t, &tm)));
+ t += dt)
+ if (--remaining_probes == 0)
+ return -1;
+
+ /* Check whether tm.tm_isdst has the requested value, if any. */
+ if (0 <= isdst && 0 <= tm.tm_isdst)
+ {
+ int dst_diff = (isdst != 0) - (tm.tm_isdst != 0);
+ if (dst_diff)
+ {
+ /* Move two hours in the direction indicated by the disagreement,
+ probe some more, and switch to a new time if found.
+ The largest known fallback due to daylight savings is two hours:
+ once, in Newfoundland, 1988-10-30 02:00 -> 00:00. */
+ time_t ot = t - 2 * 60 * 60 * dst_diff;
+ while (--remaining_probes != 0)
+ {
+ struct tm otm;
+ if (! (dt = ydhms_tm_diff (year, yday, hour, min, sec,
+ (*convert) (&ot, &otm))))
+ {
+ t = ot;
+ tm = otm;
+ break;
+ }
+ if ((ot += dt) == t)
+ break; /* Avoid a redundant probe. */
+ }
+ }
+ }
+
+ *offset = t - t0;
+
+#if LEAP_SECONDS_POSSIBLE
+ if (sec_requested != tm.tm_sec)
+ {
+ /* Adjust time to reflect the tm_sec requested, not the normalized value.
+ Also, repair any damage from a false match due to a leap second. */
+ t += sec_requested - sec + (sec == 0 && tm.tm_sec == 60);
+ (*convert) (&t, &tm);
+ }
+#endif
+
+ if (TIME_T_MAX / INT_MAX / 366 / 24 / 60 / 60 < 3)
+ {
+ /* time_t isn't large enough to rule out overflows in ydhms_tm_diff,
+ so check for major overflows. A gross check suffices,
+ since if t has overflowed, it is off by a multiple of
+ TIME_T_MAX - TIME_T_MIN + 1. So ignore any component of
+ the difference that is bounded by a small value. */
+
+ double dyear = (double) year_requested + mon_years - tm.tm_year;
+ double dday = 366 * dyear + mday;
+ double dsec = 60 * (60 * (24 * dday + hour) + min) + sec_requested;
+
+ if (TIME_T_MAX / 3 - TIME_T_MIN / 3 < (dsec < 0 ? - dsec : dsec))
+ return -1;
+ }
+
+ *tp = tm;
+ return t;
+}
+
+#ifdef weak_alias
+weak_alias (mktime, timelocal)
+#endif
+
+#if DEBUG
+
+static int
+not_equal_tm (a, b)
+ struct tm *a;
+ struct tm *b;
+{
+ return ((a->tm_sec ^ b->tm_sec)
+ | (a->tm_min ^ b->tm_min)
+ | (a->tm_hour ^ b->tm_hour)
+ | (a->tm_mday ^ b->tm_mday)
+ | (a->tm_mon ^ b->tm_mon)
+ | (a->tm_year ^ b->tm_year)
+ | (a->tm_mday ^ b->tm_mday)
+ | (a->tm_yday ^ b->tm_yday)
+ | (a->tm_isdst ^ b->tm_isdst));
+}
+
+static void
+print_tm (tp)
+ struct tm *tp;
+{
+ printf ("%04d-%02d-%02d %02d:%02d:%02d yday %03d wday %d isdst %d",
+ tp->tm_year + TM_YEAR_BASE, tp->tm_mon + 1, tp->tm_mday,
+ tp->tm_hour, tp->tm_min, tp->tm_sec,
+ tp->tm_yday, tp->tm_wday, tp->tm_isdst);
+}
+
+static int
+check_result (tk, tmk, tl, tml)
+ time_t tk;
+ struct tm tmk;
+ time_t tl;
+ struct tm tml;
+{
+ if (tk != tl || not_equal_tm (&tmk, &tml))
+ {
+ printf ("mktime (");
+ print_tm (&tmk);
+ printf (")\nyields (");
+ print_tm (&tml);
+ printf (") == %ld, should be %ld\n", (long) tl, (long) tk);
+ return 1;
+ }
+
+ return 0;
+}
+
+int
+main (argc, argv)
+ int argc;
+ char **argv;
+{
+ int status = 0;
+ struct tm tm, tmk, tml;
+ time_t tk, tl;
+ char trailer;
+
+ if ((argc == 3 || argc == 4)
+ && (sscanf (argv[1], "%d-%d-%d%c",
+ &tm.tm_year, &tm.tm_mon, &tm.tm_mday, &trailer)
+ == 3)
+ && (sscanf (argv[2], "%d:%d:%d%c",
+ &tm.tm_hour, &tm.tm_min, &tm.tm_sec, &trailer)
+ == 3))
+ {
+ tm.tm_year -= TM_YEAR_BASE;
+ tm.tm_mon--;
+ tm.tm_isdst = argc == 3 ? -1 : atoi (argv[3]);
+ tmk = tm;
+ tl = mktime (&tmk);
+ tml = *localtime (&tl);
+ printf ("mktime returns %ld == ", (long) tl);
+ print_tm (&tmk);
+ printf ("\n");
+ status = check_result (tl, tmk, tl, tml);
+ }
+ else if (argc == 4 || (argc == 5 && strcmp (argv[4], "-") == 0))
+ {
+ time_t from = atol (argv[1]);
+ time_t by = atol (argv[2]);
+ time_t to = atol (argv[3]);
+
+ if (argc == 4)
+ for (tl = from; tl <= to; tl += by)
+ {
+ tml = *localtime (&tl);
+ tmk = tml;
+ tk = mktime (&tmk);
+ status |= check_result (tk, tmk, tl, tml);
+ }
+ else
+ for (tl = from; tl <= to; tl += by)
+ {
+ /* Null benchmark. */
+ tml = *localtime (&tl);
+ tmk = tml;
+ tk = tl;
+ status |= check_result (tk, tmk, tl, tml);
+ }
+ }
+ else
+ printf ("Usage:\
+\t%s YYYY-MM-DD HH:MM:SS [ISDST] # Test given time.\n\
+\t%s FROM BY TO # Test values FROM, FROM+BY, ..., TO.\n\
+\t%s FROM BY TO - # Do not test those values (for benchmark).\n",
+ argv[0], argv[0], argv[0]);
+
+ return status;
+}
+
+#endif /* DEBUG */
+
+/*
+Local Variables:
+compile-command: "gcc -DDEBUG=1 -Wall -O -g mktime.c -o mktime"
+End:
+*/
diff --git a/misc/myrealloc.c b/misc/myrealloc.c
index bdb38a3e6..1b93c17bf 100644
--- a/misc/myrealloc.c
+++ b/misc/myrealloc.c
@@ -1,8 +1,4 @@
-#include <stdio.h>
-#include <stdlib.h>
-#define size_t unsigned
-
-void *myrealloc(void *ptr, size_t size);
+#include "system.h"
void *myrealloc(void *ptr, size_t size) {
if (ptr == NULL)
diff --git a/misc/putenv.c b/misc/putenv.c
new file mode 100644
index 000000000..ee3ccc04a
--- /dev/null
+++ b/misc/putenv.c
@@ -0,0 +1,110 @@
+/* Copyright (C) 1991, 1994 Free Software Foundation, Inc.
+
+
+NOTE: The canonical source of this file is maintained with the GNU C Library.
+Bugs can be reported to bug-glibc@prep.ai.mit.edu.
+
+This program is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 2, or (at your option) any
+later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software Foundation,
+Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#include <errno.h>
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+/* Define-away any (possibly conflicting) prototype of putenv.
+ Many systems omit the `const' attribute on the argument. */
+#define putenv _sys_putenv
+
+#if defined (__GNU_LIBRARY__) || defined (HAVE_STDLIB_H)
+# include <stdlib.h>
+#endif
+#if defined (__GNU_LIBRARY__) || defined (HAVE_STRING_H)
+# include <string.h>
+#endif
+#if defined (__GNU_LIBRARY__) || defined (HAVE_UNISTD_H)
+# include <unistd.h>
+#endif
+
+#undef putenv
+
+#if !defined (__GNU_LIBRARY__) && !defined (HAVE_STRCHR)
+# define strchr index
+#endif
+#if !defined (__GNU_LIBRARY__) && !defined (HAVE_MEMCPY)
+# define memcpy(d,s,n) bcopy ((s), (d), (n))
+#endif
+
+#if HAVE_GNU_LD
+# define environ __environ
+#else
+extern char **environ;
+#endif
+
+
+/* Put STRING, which is of the form "NAME=VALUE", in the environment. */
+int
+putenv (string)
+ const char *string;
+{
+ const char *const name_end = strchr (string, '=');
+ register size_t size;
+ register char **ep;
+
+ if (name_end == NULL)
+ {
+ /* Remove the variable from the environment. */
+ size = strlen (string);
+ for (ep = environ; *ep != NULL; ++ep)
+ if (!strncmp (*ep, string, size) && (*ep)[size] == '=')
+ {
+ while (ep[1] != NULL)
+ {
+ ep[0] = ep[1];
+ ++ep;
+ }
+ *ep = NULL;
+ return 0;
+ }
+ }
+
+ size = 0;
+ for (ep = environ; *ep != NULL; ++ep)
+ if (!strncmp (*ep, string, name_end - string) &&
+ (*ep)[name_end - string] == '=')
+ break;
+ else
+ ++size;
+
+ if (*ep == NULL)
+ {
+ static char **last_environ = NULL;
+ char **new_environ = (char **) malloc ((size + 2) * sizeof (char *));
+ if (new_environ == NULL)
+ return -1;
+ (void) memcpy ((void *) new_environ, (void *) environ,
+ size * sizeof (char *));
+ new_environ[size] = (char *) string;
+ new_environ[size + 1] = NULL;
+ if (last_environ != NULL)
+ free ((void *) last_environ);
+ last_environ = new_environ;
+ environ = new_environ;
+ }
+ else
+ *ep = (char *) string;
+
+ return 0;
+}
diff --git a/misc/realpath.c b/misc/realpath.c
index 3fc610b9c..93cc8301d 100644
--- a/misc/realpath.c
+++ b/misc/realpath.c
@@ -13,24 +13,12 @@
* GNU Library Public License for more details.
*/
-#include <sys/types.h>
-#if defined(HAVE_UNISTD_H) || defined(STDC_HEADERS)
-#include <unistd.h>
-#endif
-#include <stdio.h>
-#include <string.h>
-#ifdef _POSIX_VERSION
-#include <limits.h> /* for PATH_MAX */
-#else
-#include <sys/param.h> /* for MAXPATHLEN */
-#endif
-#include <errno.h>
+#include "system.h"
+
#ifndef STDC_HEADERS
extern int errno;
#endif
-#include <sys/stat.h> /* for S_IFLNK */
-
#ifndef PATH_MAX
#ifdef _POSIX_VERSION
#define PATH_MAX _POSIX_PATH_MAX
diff --git a/misc/strdup.c b/misc/strdup.c
index 3e91af1b4..7b73a50c2 100644
--- a/misc/strdup.c
+++ b/misc/strdup.c
@@ -1,38 +1,43 @@
-/*
- * Author: Tim Mooney <mooney@plains.nodak.edu>
- * Copyright: This file is in the public domain.
- *
- * a replacement for strdup() for those platforms that don't have it,
- * like Ultrix.
- *
- * Requires: malloc(), strlen(), strcpy().
- *
- */
-
-#include "system.h"
-
-#if defined(HAVE_STDLIB_H) || defined(STDC_HEADERS)
-# include <stdlib.h>
-#else
-extern void *malloc(size_t);
+/* strdup.c -- return a newly allocated copy of a string
+ Copyright (C) 1990 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
#endif
-#if defined(HAVE_STRING_H) || defined(STDC_HEADERS)
-# include <string.h>
+#ifdef STDC_HEADERS
+#include <string.h>
+#include <stdlib.h>
#else
-extern size_t strlen(const char *);
-extern char *strcpy(char *, const char *);
+char *malloc ();
+char *strcpy ();
#endif
-char * strdup(const char *s) {
- void *p = NULL;
+/* Return a newly allocated copy of STR,
+ or 0 if out of memory. */
- p = malloc(strlen(s)+1);
- if (!p) {
- return NULL;
- }
+char *
+strdup (str)
+ const char *str;
+{
+ char *newstr;
- strcpy( (char *) p, s);
- return (char *) p;
+ newstr = (char *) malloc (strlen (str) + 1);
+ if (newstr)
+ strcpy (newstr, str);
+ return newstr;
}
-
diff --git a/misc/strerror.c b/misc/strerror.c
index acb81618c..39289231d 100644
--- a/misc/strerror.c
+++ b/misc/strerror.c
@@ -1,12 +1,11 @@
-#include<stdlib.h>
-#include<errno.h>
-#include<stdio.h>
+#include "system.h"
extern int sys_nerr;
extern char *sys_errlist[];
static char buf[64];
-char * strerror(int errnum)
+char *
+strerror(int errnum)
{
if (errnum < 0 || errnum > sys_nerr)
{
diff --git a/misc/strftime.c b/misc/strftime.c
new file mode 100644
index 000000000..8c838f783
--- /dev/null
+++ b/misc/strftime.c
@@ -0,0 +1,1054 @@
+/* Copyright (C) 1991, 92, 93, 94, 95, 96, 97 Free Software Foundation, Inc.
+
+ NOTE: The canonical source of this file is maintained with the GNU C
+ Library. Bugs can be reported to bug-glibc@prep.ai.mit.edu.
+
+ This program is free software; you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by the
+ Free Software Foundation; either version 2, or (at your option) any
+ later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#ifdef _LIBC
+# define HAVE_LIMITS_H 1
+# define HAVE_MBLEN 1
+# define HAVE_MBRLEN 1
+# define HAVE_STRUCT_ERA_ENTRY 1
+# define HAVE_TM_GMTOFF 1
+# define HAVE_TM_ZONE 1
+# define HAVE_TZNAME 1
+# define HAVE_TZSET 1
+# define MULTIBYTE_IS_FORMAT_SAFE 1
+# define STDC_HEADERS 1
+# include <ansidecl.h>
+# include "../locale/localeinfo.h"
+#endif
+
+#include <ctype.h>
+#include <sys/types.h> /* Some systems define `time_t' here. */
+
+#ifdef TIME_WITH_SYS_TIME
+# include <sys/time.h>
+# include <time.h>
+#else
+# ifdef HAVE_SYS_TIME_H
+# include <sys/time.h>
+# else
+# include <time.h>
+# endif
+#endif
+#if HAVE_TZNAME
+extern char *tzname[];
+#endif
+
+/* Do multibyte processing if multibytes are supported, unless
+ multibyte sequences are safe in formats. Multibyte sequences are
+ safe if they cannot contain byte sequences that look like format
+ conversion specifications. The GNU C Library uses UTF8 multibyte
+ encoding, which is safe for formats, but strftime.c can be used
+ with other C libraries that use unsafe encodings. */
+#define DO_MULTIBYTE (HAVE_MBLEN && ! MULTIBYTE_IS_FORMAT_SAFE)
+
+#if DO_MULTIBYTE
+# if HAVE_MBRLEN
+# include <wchar.h>
+# else
+ /* Simulate mbrlen with mblen as best we can. */
+# define mbstate_t int
+# define mbrlen(s, n, ps) mblen (s, n)
+# define mbsinit(ps) (*(ps) == 0)
+# endif
+ static const mbstate_t mbstate_zero;
+#endif
+
+#if HAVE_LIMITS_H
+# include <limits.h>
+#endif
+
+#if STDC_HEADERS
+# include <stddef.h>
+# include <stdlib.h>
+# include <string.h>
+#else
+# define memcpy(d, s, n) bcopy ((s), (d), (n))
+#endif
+
+#ifndef __P
+# if defined (__GNUC__) || (defined (__STDC__) && __STDC__)
+# define __P(args) args
+# else
+# define __P(args) ()
+# endif /* GCC. */
+#endif /* Not __P. */
+
+#ifndef PTR
+# ifdef __STDC__
+# define PTR void *
+# else
+# define PTR char *
+# endif
+#endif
+
+#ifndef CHAR_BIT
+# define CHAR_BIT 8
+#endif
+
+#ifndef NULL
+# define NULL 0
+#endif
+
+#define TYPE_SIGNED(t) ((t) -1 < 0)
+
+/* Bound on length of the string representing an integer value of type t.
+ Subtract one for the sign bit if t is signed;
+ 302 / 1000 is log10 (2) rounded up;
+ add one for integer division truncation;
+ add one more for a minus sign if t is signed. */
+#define INT_STRLEN_BOUND(t) \
+ ((sizeof (t) * CHAR_BIT - TYPE_SIGNED (t)) * 302 / 100 + 1 + TYPE_SIGNED (t))
+
+#define TM_YEAR_BASE 1900
+
+#ifndef __isleap
+/* Nonzero if YEAR is a leap year (every 4 years,
+ except every 100th isn't, and every 400th is). */
+# define __isleap(year) \
+ ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0))
+#endif
+
+
+#ifdef _LIBC
+# define gmtime_r __gmtime_r
+# define localtime_r __localtime_r
+extern int __tz_compute __P ((time_t timer, const struct tm *tm));
+# define tzname __tzname
+# define tzset __tzset
+#else
+# if ! HAVE_LOCALTIME_R
+# if ! HAVE_TM_GMTOFF
+/* Approximate gmtime_r as best we can in its absence. */
+# define gmtime_r my_gmtime_r
+static struct tm *gmtime_r __P ((const time_t *, struct tm *));
+static struct tm *
+gmtime_r (t, tp)
+ const time_t *t;
+ struct tm *tp;
+{
+ struct tm *l = gmtime (t);
+ if (! l)
+ return 0;
+ *tp = *l;
+ return tp;
+}
+# endif /* ! HAVE_TM_GMTOFF */
+
+/* Approximate localtime_r as best we can in its absence. */
+# define localtime_r my_localtime_r
+static struct tm *localtime_r __P ((const time_t *, struct tm *));
+static struct tm *
+localtime_r (t, tp)
+ const time_t *t;
+ struct tm *tp;
+{
+ struct tm *l = localtime (t);
+ if (! l)
+ return 0;
+ *tp = *l;
+ return tp;
+}
+# endif /* ! HAVE_LOCALTIME_R */
+#endif /* ! defined (_LIBC) */
+
+
+#if !defined (memset) && !defined (HAVE_MEMSET) && !defined (_LIBC)
+/* Some systems lack the `memset' function and we don't want to
+ introduce additional dependencies. */
+static const char spaces[16] = " ";
+
+# define memset_space(P, Len) \
+ do { \
+ int _len = (Len); \
+ \
+ do \
+ { \
+ int _this = _len > 16 ? 16 : _len; \
+ memcpy ((P), spaces, _this); \
+ (P) += _this; \
+ _len -= _this; \
+ } \
+ while (_len > 0); \
+ } while (0)
+#else
+# define memset_space(P, Len) memset ((P), ' ', (Len))
+#endif
+
+#define add(n, f) \
+ do \
+ { \
+ int _n = (n); \
+ int _delta = width - _n; \
+ int _incr = _n + (_delta > 0 ? _delta : 0); \
+ if (i + _incr >= maxsize) \
+ return 0; \
+ if (p) \
+ { \
+ if (_delta > 0) \
+ memset_space (p, _delta); \
+ f; \
+ p += _n; \
+ } \
+ i += _incr; \
+ } while (0)
+
+#define cpy(n, s) \
+ add ((n), \
+ if (to_lowcase) \
+ memcpy_lowcase (p, (s), _n); \
+ else if (to_uppcase) \
+ memcpy_uppcase (p, (s), _n); \
+ else \
+ memcpy ((PTR) p, (PTR) (s), _n))
+
+
+
+#ifdef _LIBC
+# define TOUPPER(Ch) toupper (Ch)
+# define TOLOWER(Ch) tolower (Ch)
+#else
+# define TOUPPER(Ch) (islower (Ch) ? toupper (Ch) : (Ch))
+# define TOLOWER(Ch) (isupper (Ch) ? tolower (Ch) : (Ch))
+#endif
+/* We don't use `isdigit' here since the locale dependent
+ interpretation is not what we want here. We only need to accept
+ the arabic digits in the ASCII range. One day there is perhaps a
+ more reliable way to accept other sets of digits. */
+#define ISDIGIT(Ch) ((unsigned int) (Ch) - '0' <= 9)
+
+static char *memcpy_lowcase __P ((char *dest, const char *src, size_t len));
+
+static char *
+memcpy_lowcase (dest, src, len)
+ char *dest;
+ const char *src;
+ size_t len;
+{
+ while (len-- > 0)
+ dest[len] = TOLOWER (src[len]);
+ return dest;
+}
+
+static char *memcpy_uppcase __P ((char *dest, const char *src, size_t len));
+
+static char *
+memcpy_uppcase (dest, src, len)
+ char *dest;
+ const char *src;
+ size_t len;
+{
+ while (len-- > 0)
+ dest[len] = TOUPPER (src[len]);
+ return dest;
+}
+
+#if ! HAVE_TM_GMTOFF
+/* Yield the difference between *A and *B,
+ measured in seconds, ignoring leap seconds. */
+static int tm_diff __P ((const struct tm *, const struct tm *));
+static int
+tm_diff (a, b)
+ const struct tm *a;
+ const struct tm *b;
+{
+ /* Compute intervening leap days correctly even if year is negative.
+ Take care to avoid int overflow in leap day calculations,
+ but it's OK to assume that A and B are close to each other. */
+ int a4 = (a->tm_year >> 2) + (TM_YEAR_BASE >> 2) - ! (a->tm_year & 3);
+ int b4 = (b->tm_year >> 2) + (TM_YEAR_BASE >> 2) - ! (b->tm_year & 3);
+ int a100 = a4 / 25 - (a4 % 25 < 0);
+ int b100 = b4 / 25 - (b4 % 25 < 0);
+ int a400 = a100 >> 2;
+ int b400 = b100 >> 2;
+ int intervening_leap_days = (a4 - b4) - (a100 - b100) + (a400 - b400);
+ int years = a->tm_year - b->tm_year;
+ int days = (365 * years + intervening_leap_days
+ + (a->tm_yday - b->tm_yday));
+ return (60 * (60 * (24 * days + (a->tm_hour - b->tm_hour))
+ + (a->tm_min - b->tm_min))
+ + (a->tm_sec - b->tm_sec));
+}
+#endif /* ! HAVE_TM_GMTOFF */
+
+
+
+/* The number of days from the first day of the first ISO week of this
+ year to the year day YDAY with week day WDAY. ISO weeks start on
+ Monday; the first ISO week has the year's first Thursday. YDAY may
+ be as small as YDAY_MINIMUM. */
+#define ISO_WEEK_START_WDAY 1 /* Monday */
+#define ISO_WEEK1_WDAY 4 /* Thursday */
+#define YDAY_MINIMUM (-366)
+static int iso_week_days __P ((int, int));
+#ifdef __GNUC__
+inline
+#endif
+static int
+iso_week_days (yday, wday)
+ int yday;
+ int wday;
+{
+ /* Add enough to the first operand of % to make it nonnegative. */
+ int big_enough_multiple_of_7 = (-YDAY_MINIMUM / 7 + 2) * 7;
+ return (yday
+ - (yday - wday + ISO_WEEK1_WDAY + big_enough_multiple_of_7) % 7
+ + ISO_WEEK1_WDAY - ISO_WEEK_START_WDAY);
+}
+
+
+#ifndef _NL_CURRENT
+static char const weekday_name[][10] =
+ {
+ "Sunday", "Monday", "Tuesday", "Wednesday",
+ "Thursday", "Friday", "Saturday"
+ };
+static char const month_name[][10] =
+ {
+ "January", "February", "March", "April", "May", "June",
+ "July", "August", "September", "October", "November", "December"
+ };
+#endif
+
+
+#if !defined _LIBC && HAVE_TZNAME && HAVE_TZSET
+ /* Solaris 2.5 tzset sometimes modifies the storage returned by localtime.
+ Work around this bug by copying *tp before it might be munged. */
+ size_t _strftime_copytm __P ((char *, size_t, const char *,
+ const struct tm *));
+ size_t
+ strftime (s, maxsize, format, tp)
+ char *s;
+ size_t maxsize;
+ const char *format;
+ const struct tm *tp;
+ {
+ struct tm tmcopy;
+ tmcopy = *tp;
+ return _strftime_copytm (s, maxsize, format, &tmcopy);
+ }
+# ifdef strftime
+# undef strftime
+# endif
+# define strftime _strftime_copytm
+#endif
+
+
+
+/* Write information from TP into S according to the format
+ string FORMAT, writing no more that MAXSIZE characters
+ (including the terminating '\0') and returning number of
+ characters written. If S is NULL, nothing will be written
+ anywhere, so to determine how many characters would be
+ written, use NULL for S and (size_t) UINT_MAX for MAXSIZE. */
+size_t
+strftime (s, maxsize, format, tp)
+ char *s;
+ size_t maxsize;
+ const char *format;
+ const struct tm *tp;
+{
+ int hour12 = tp->tm_hour;
+#ifdef _NL_CURRENT
+ const char *const a_wkday = _NL_CURRENT (LC_TIME, ABDAY_1 + tp->tm_wday);
+ const char *const f_wkday = _NL_CURRENT (LC_TIME, DAY_1 + tp->tm_wday);
+ const char *const a_month = _NL_CURRENT (LC_TIME, ABMON_1 + tp->tm_mon);
+ const char *const f_month = _NL_CURRENT (LC_TIME, MON_1 + tp->tm_mon);
+ const char *const ampm = _NL_CURRENT (LC_TIME,
+ hour12 > 11 ? PM_STR : AM_STR);
+ size_t aw_len = strlen (a_wkday);
+ size_t am_len = strlen (a_month);
+ size_t ap_len = strlen (ampm);
+#else
+ const char *const f_wkday = weekday_name[tp->tm_wday];
+ const char *const f_month = month_name[tp->tm_mon];
+ const char *const a_wkday = f_wkday;
+ const char *const a_month = f_month;
+ const char *const ampm = "AMPM" + 2 * (hour12 > 11);
+ size_t aw_len = 3;
+ size_t am_len = 3;
+ size_t ap_len = 2;
+#endif
+ size_t wkday_len = strlen (f_wkday);
+ size_t month_len = strlen (f_month);
+ const char *zone;
+ size_t zonelen;
+ size_t i = 0;
+ char *p = s;
+ const char *f;
+
+ zone = NULL;
+#if !defined _LIBC && HAVE_TM_ZONE
+ /* XXX We have some problems here. First, the string pointed to by
+ tm_zone is dynamically allocated while loading the zone data. But
+ when another zone is loaded since the information in TP were
+ computed this would be a stale pointer.
+ The second problem is the POSIX test suite which assumes setting
+ the environment variable TZ to a new value before calling strftime()
+ will influence the result (the %Z format) even if the information in
+ TP is computed with a totally different time zone. --drepper@gnu */
+ zone = (const char *) tp->tm_zone;
+#endif
+#if HAVE_TZNAME
+ /* POSIX.1 8.1.1 requires that whenever strftime() is called, the
+ time zone names contained in the external variable `tzname' shall
+ be set as if the tzset() function had been called. */
+# if HAVE_TZSET
+ tzset ();
+# endif
+
+ if (!(zone && *zone) && tp->tm_isdst >= 0)
+ zone = tzname[tp->tm_isdst];
+#endif
+ if (! zone)
+ zone = ""; /* POSIX.2 requires the empty string here. */
+
+ zonelen = strlen (zone);
+
+ if (hour12 > 12)
+ hour12 -= 12;
+ else
+ if (hour12 == 0) hour12 = 12;
+
+ for (f = format; *f != '\0'; ++f)
+ {
+ int pad; /* Padding for number ('-', '_', or 0). */
+ int modifier; /* Field modifier ('E', 'O', or 0). */
+ int digits; /* Max digits for numeric format. */
+ int number_value; /* Numeric value to be printed. */
+ int negative_number; /* 1 if the number is negative. */
+ const char *subfmt;
+ char *bufp;
+ char buf[1 + (sizeof (int) < sizeof (time_t)
+ ? INT_STRLEN_BOUND (time_t)
+ : INT_STRLEN_BOUND (int))];
+ int width = -1;
+ int to_lowcase = 0;
+ int to_uppcase = 0;
+
+#if DO_MULTIBYTE
+
+ switch (*f)
+ {
+ case '%':
+ break;
+
+ case '\a': case '\b': case '\t': case '\n':
+ case '\v': case '\f': case '\r':
+ case ' ': case '!': case '"': case '#': case '&': case'\'':
+ case '(': case ')': case '*': case '+': case ',': case '-':
+ case '.': case '/': case '0': case '1': case '2': case '3':
+ case '4': case '5': case '6': case '7': case '8': case '9':
+ case ':': case ';': case '<': case '=': case '>': case '?':
+ case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
+ case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
+ case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
+ case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
+ case 'Y': case 'Z': case '[': case'\\': case ']': case '^':
+ case '_': case 'a': case 'b': case 'c': case 'd': case 'e':
+ case 'f': case 'g': case 'h': case 'i': case 'j': case 'k':
+ case 'l': case 'm': case 'n': case 'o': case 'p': case 'q':
+ case 'r': case 's': case 't': case 'u': case 'v': case 'w':
+ case 'x': case 'y': case 'z': case '{': case '|': case '}':
+ case '~':
+ /* The C Standard requires these 98 characters (plus '%') to
+ be in the basic execution character set. None of these
+ characters can start a multibyte sequence, so they need
+ not be analyzed further. */
+ add (1, *p = *f);
+ continue;
+
+ default:
+ /* Copy this multibyte sequence until we reach its end, find
+ an error, or come back to the initial shift state. */
+ {
+ mbstate_t mbstate = mbstate_zero;
+ size_t len = 0;
+
+ do
+ {
+ size_t bytes = mbrlen (f + len, (size_t) -1, &mbstate);
+
+ if (bytes == 0)
+ break;
+
+ if (bytes == (size_t) -2 || bytes == (size_t) -1)
+ {
+ len++;
+ break;
+ }
+
+ len += bytes;
+ }
+ while (! mbsinit (&mbstate));
+
+ cpy (len, f);
+ continue;
+ }
+ }
+
+#else /* ! DO_MULTIBYTE */
+
+ /* Either multibyte encodings are not supported, or they are
+ safe for formats, so any non-'%' byte can be copied through. */
+ if (*f != '%')
+ {
+ add (1, *p = *f);
+ continue;
+ }
+
+#endif /* ! DO_MULTIBYTE */
+
+ /* Check for flags that can modify a format. */
+ pad = 0;
+ while (1)
+ {
+ switch (*++f)
+ {
+ /* This influences the number formats. */
+ case '_':
+ case '-':
+ case '0':
+ pad = *f;
+ continue;
+
+ /* This changes textual output. */
+ case '^':
+ to_uppcase = 1;
+ continue;
+
+ default:
+ break;
+ }
+ break;
+ }
+
+ /* As a GNU extension we allow to specify the field width. */
+ if (ISDIGIT (*f))
+ {
+ width = 0;
+ do
+ {
+ width *= 10;
+ width += *f - '0';
+ ++f;
+ }
+ while (ISDIGIT (*f));
+ }
+
+ /* Check for modifiers. */
+ switch (*f)
+ {
+ case 'E':
+ case 'O':
+ modifier = *f++;
+ break;
+
+ default:
+ modifier = 0;
+ break;
+ }
+
+ /* Now do the specified format. */
+ switch (*f)
+ {
+#define DO_NUMBER(d, v) \
+ digits = d; number_value = v; goto do_number
+#define DO_NUMBER_SPACEPAD(d, v) \
+ digits = d; number_value = v; goto do_number_spacepad
+
+ case '%':
+ if (modifier != 0)
+ goto bad_format;
+ add (1, *p = *f);
+ break;
+
+ case 'a':
+ if (modifier != 0)
+ goto bad_format;
+ cpy (aw_len, a_wkday);
+ break;
+
+ case 'A':
+ if (modifier != 0)
+ goto bad_format;
+ cpy (wkday_len, f_wkday);
+ break;
+
+ case 'b':
+ case 'h': /* POSIX.2 extension. */
+ if (modifier != 0)
+ goto bad_format;
+ cpy (am_len, a_month);
+ break;
+
+ case 'B':
+ if (modifier != 0)
+ goto bad_format;
+ cpy (month_len, f_month);
+ break;
+
+ case 'c':
+ if (modifier == 'O')
+ goto bad_format;
+#ifdef _NL_CURRENT
+ if (! (modifier == 'E'
+ && *(subfmt = _NL_CURRENT (LC_TIME, ERA_D_T_FMT)) != '\0'))
+ subfmt = _NL_CURRENT (LC_TIME, D_T_FMT);
+#else
+ subfmt = "%a %b %e %H:%M:%S %Y";
+#endif
+
+ subformat:
+ {
+ char *old_start = p;
+ size_t len = strftime (NULL, maxsize - i, subfmt, tp);
+ if (len == 0 && *subfmt)
+ return 0;
+ add (len, strftime (p, maxsize - i, subfmt, tp));
+
+ if (to_uppcase)
+ while (old_start < p)
+ {
+ *old_start = TOUPPER (*old_start);
+ ++old_start;
+ }
+ }
+ break;
+
+ case 'C': /* POSIX.2 extension. */
+ if (modifier == 'O')
+ goto bad_format;
+#if HAVE_STRUCT_ERA_ENTRY
+ if (modifier == 'E')
+ {
+ struct era_entry *era = _nl_get_era_entry (tp);
+ if (era)
+ {
+ size_t len = strlen (era->name_fmt);
+ cpy (len, era->name_fmt);
+ break;
+ }
+ }
+#endif
+ {
+ int year = tp->tm_year + TM_YEAR_BASE;
+ DO_NUMBER (1, year / 100 - (year % 100 < 0));
+ }
+
+ case 'x':
+ if (modifier == 'O')
+ goto bad_format;
+#ifdef _NL_CURRENT
+ if (! (modifier == 'E'
+ && *(subfmt = _NL_CURRENT (LC_TIME, ERA_D_FMT)) != '\0'))
+ subfmt = _NL_CURRENT (LC_TIME, D_FMT);
+ goto subformat;
+#endif
+ /* Fall through. */
+ case 'D': /* POSIX.2 extension. */
+ if (modifier != 0)
+ goto bad_format;
+ subfmt = "%m/%d/%y";
+ goto subformat;
+
+ case 'd':
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER (2, tp->tm_mday);
+
+ case 'e': /* POSIX.2 extension. */
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER_SPACEPAD (2, tp->tm_mday);
+
+ /* All numeric formats set DIGITS and NUMBER_VALUE and then
+ jump to one of these two labels. */
+
+ do_number_spacepad:
+ /* Force `_' flag unless overwritten by `0' flag. */
+ if (pad != '0')
+ pad = '_';
+
+ do_number:
+ /* Format the number according to the MODIFIER flag. */
+
+#ifdef _NL_CURRENT
+ if (modifier == 'O' && 0 <= number_value)
+ {
+ /* Get the locale specific alternate representation of
+ the number NUMBER_VALUE. If none exist NULL is returned. */
+ const char *cp = _nl_get_alt_digit (number_value);
+
+ if (cp != NULL)
+ {
+ size_t digitlen = strlen (cp);
+ if (digitlen != 0)
+ {
+ cpy (digitlen, cp);
+ break;
+ }
+ }
+ }
+#endif
+ {
+ unsigned int u = number_value;
+
+ bufp = buf + sizeof (buf);
+ negative_number = number_value < 0;
+
+ if (negative_number)
+ u = -u;
+
+ do
+ *--bufp = u % 10 + '0';
+ while ((u /= 10) != 0);
+ }
+
+ do_number_sign_and_padding:
+ if (negative_number)
+ *--bufp = '-';
+
+ if (pad != '-')
+ {
+ int padding = digits - (buf + sizeof (buf) - bufp);
+
+ if (pad == '_')
+ {
+ while (0 < padding--)
+ *--bufp = ' ';
+ }
+ else
+ {
+ bufp += negative_number;
+ while (0 < padding--)
+ *--bufp = '0';
+ if (negative_number)
+ *--bufp = '-';
+ }
+ }
+
+ cpy (buf + sizeof (buf) - bufp, bufp);
+ break;
+
+
+ case 'H':
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER (2, tp->tm_hour);
+
+ case 'I':
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER (2, hour12);
+
+ case 'k': /* GNU extension. */
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER_SPACEPAD (2, tp->tm_hour);
+
+ case 'l': /* GNU extension. */
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER_SPACEPAD (2, hour12);
+
+ case 'j':
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER (3, 1 + tp->tm_yday);
+
+ case 'M':
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER (2, tp->tm_min);
+
+ case 'm':
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER (2, tp->tm_mon + 1);
+
+ case 'n': /* POSIX.2 extension. */
+ add (1, *p = '\n');
+ break;
+
+ case 'P':
+ to_lowcase = 1;
+ /* FALLTHROUGH */
+
+ case 'p':
+ cpy (ap_len, ampm);
+ break;
+
+ case 'R': /* GNU extension. */
+ subfmt = "%H:%M";
+ goto subformat;
+
+ case 'r': /* POSIX.2 extension. */
+#ifdef _NL_CURRENT
+ if (*(subfmt = _NL_CURRENT (LC_TIME, T_FMT_AMPM)) == '\0')
+#endif
+ subfmt = "%I:%M:%S %p";
+ goto subformat;
+
+ case 'S':
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER (2, tp->tm_sec);
+
+ case 's': /* GNU extension. */
+ {
+ struct tm ltm;
+ time_t t;
+
+ ltm = *tp;
+ t = mktime (&ltm);
+
+ /* Generate string value for T using time_t arithmetic;
+ this works even if sizeof (long) < sizeof (time_t). */
+
+ bufp = buf + sizeof (buf);
+ negative_number = t < 0;
+
+ do
+ {
+ int d = t % 10;
+ t /= 10;
+
+ if (negative_number)
+ {
+ d = -d;
+
+ /* Adjust if division truncates to minus infinity. */
+ if (0 < -1 % 10 && d < 0)
+ {
+ t++;
+ d += 10;
+ }
+ }
+
+ *--bufp = d + '0';
+ }
+ while (t != 0);
+
+ digits = 1;
+ goto do_number_sign_and_padding;
+ }
+
+ case 'X':
+ if (modifier == 'O')
+ goto bad_format;
+#ifdef _NL_CURRENT
+ if (! (modifier == 'E'
+ && *(subfmt = _NL_CURRENT (LC_TIME, ERA_T_FMT)) != '\0'))
+ subfmt = _NL_CURRENT (LC_TIME, T_FMT);
+ goto subformat;
+#endif
+ /* Fall through. */
+ case 'T': /* POSIX.2 extension. */
+ subfmt = "%H:%M:%S";
+ goto subformat;
+
+ case 't': /* POSIX.2 extension. */
+ add (1, *p = '\t');
+ break;
+
+ case 'u': /* POSIX.2 extension. */
+ DO_NUMBER (1, (tp->tm_wday - 1 + 7) % 7 + 1);
+
+ case 'U':
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER (2, (tp->tm_yday - tp->tm_wday + 7) / 7);
+
+ case 'V':
+ case 'g': /* GNU extension. */
+ case 'G': /* GNU extension. */
+ if (modifier == 'E')
+ goto bad_format;
+ {
+ int year = tp->tm_year + TM_YEAR_BASE;
+ int days = iso_week_days (tp->tm_yday, tp->tm_wday);
+
+ if (days < 0)
+ {
+ /* This ISO week belongs to the previous year. */
+ year--;
+ days = iso_week_days (tp->tm_yday + (365 + __isleap (year)),
+ tp->tm_wday);
+ }
+ else
+ {
+ int d = iso_week_days (tp->tm_yday - (365 + __isleap (year)),
+ tp->tm_wday);
+ if (0 <= d)
+ {
+ /* This ISO week belongs to the next year. */
+ year++;
+ days = d;
+ }
+ }
+
+ switch (*f)
+ {
+ case 'g':
+ DO_NUMBER (2, (year % 100 + 100) % 100);
+
+ case 'G':
+ DO_NUMBER (1, year);
+
+ default:
+ DO_NUMBER (2, days / 7 + 1);
+ }
+ }
+
+ case 'W':
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER (2, (tp->tm_yday - (tp->tm_wday - 1 + 7) % 7 + 7) / 7);
+
+ case 'w':
+ if (modifier == 'E')
+ goto bad_format;
+
+ DO_NUMBER (1, tp->tm_wday);
+
+ case 'Y':
+#if HAVE_STRUCT_ERA_ENTRY
+ if (modifier == 'E')
+ {
+ struct era_entry *era = _nl_get_era_entry (tp);
+ if (era)
+ {
+ subfmt = strchr (era->name_fmt, '\0') + 1;
+ goto subformat;
+ }
+ }
+#endif
+ if (modifier == 'O')
+ goto bad_format;
+ else
+ DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE);
+
+ case 'y':
+#if HAVE_STRUCT_ERA_ENTRY
+ if (modifier == 'E')
+ {
+ struct era_entry *era = _nl_get_era_entry (tp);
+ if (era)
+ {
+ int delta = tp->tm_year - era->start_date[0];
+ DO_NUMBER (1, (era->offset
+ + (era->direction == '-' ? -delta : delta)));
+ }
+ }
+#endif
+ DO_NUMBER (2, (tp->tm_year % 100 + 100) % 100);
+
+ case 'Z':
+ cpy (zonelen, zone);
+ break;
+
+ case 'z': /* GNU extension. */
+ if (tp->tm_isdst < 0)
+ break;
+
+ {
+ int diff;
+#if HAVE_TM_GMTOFF
+ diff = tp->tm_gmtoff;
+#else
+ struct tm gtm;
+ struct tm ltm;
+ time_t lt;
+
+ ltm = *tp;
+ lt = mktime (&ltm);
+
+ if (lt == (time_t) -1)
+ {
+ /* mktime returns -1 for errors, but -1 is also a
+ valid time_t value. Check whether an error really
+ occurred. */
+ struct tm tm;
+ localtime_r (&lt, &tm);
+
+ if ((ltm.tm_sec ^ tm.tm_sec)
+ | (ltm.tm_min ^ tm.tm_min)
+ | (ltm.tm_hour ^ tm.tm_hour)
+ | (ltm.tm_mday ^ tm.tm_mday)
+ | (ltm.tm_mon ^ tm.tm_mon)
+ | (ltm.tm_year ^ tm.tm_year))
+ break;
+ }
+
+ if (! gmtime_r (&lt, &gtm))
+ break;
+
+ diff = tm_diff (&ltm, &gtm);
+#endif
+
+ if (diff < 0)
+ {
+ add (1, *p = '-');
+ diff = -diff;
+ }
+ else
+ add (1, *p = '+');
+
+ diff /= 60;
+ DO_NUMBER (4, (diff / 60) * 100 + diff % 60);
+ }
+
+ case '\0': /* GNU extension: % at end of format. */
+ --f;
+ /* Fall through. */
+ default:
+ /* Unknown format; output the format, including the '%',
+ since this is most likely the right thing to do if a
+ multibyte string has been misparsed. */
+ bad_format:
+ {
+ int flen;
+ for (flen = 1; f[1 - flen] != '%'; flen++)
+ continue;
+ cpy (flen, &f[1 - flen]);
+ }
+ break;
+ }
+ }
+
+ if (p)
+ *p = '\0';
+ return i;
+}
diff --git a/misc/strspn.c b/misc/strspn.c
new file mode 100644
index 000000000..01d8d0fc5
--- /dev/null
+++ b/misc/strspn.c
@@ -0,0 +1,40 @@
+/* strspn.c -- return numbers of chars at start of string in a class
+ Copyright (C) 1987, 1990 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#if defined(HAVE_STRING_H)
+#include <string.h>
+#else
+#include <strings.h>
+#ifndef strchr
+#define strchr index
+#endif
+#endif
+
+int
+strspn (str, class)
+ char *str, *class;
+{
+ register char *st = str;
+
+ while (*st && strchr (class, *st))
+ ++st;
+ return st - str;
+}
diff --git a/misc/strstr.c b/misc/strstr.c
new file mode 100644
index 000000000..cdee62117
--- /dev/null
+++ b/misc/strstr.c
@@ -0,0 +1,116 @@
+/* Copyright (C) 1994 Free Software Foundation, Inc.
+This file is part of the GNU C Library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/*
+ * My personal strstr() implementation that beats most other algorithms.
+ * Until someone tells me otherwise, I assume that this is the
+ * fastest implementation of strstr() in C.
+ * I deliberately chose not to comment it. You should have at least
+ * as much fun trying to understand it, as I had to write it :-).
+ *
+ * Stephen R. van den Berg, berg@pool.informatik.rwth-aachen.de */
+
+#include <string.h>
+#include <sys/types.h>
+
+typedef unsigned chartype;
+
+char *
+strstr (phaystack, pneedle)
+ const char *phaystack;
+ const char *pneedle;
+{
+ register const unsigned char *haystack, *needle;
+ register chartype b, c;
+
+ haystack = (const unsigned char *) phaystack;
+ needle = (const unsigned char *) pneedle;
+
+ b = *needle;
+ if (b != '\0')
+ {
+ haystack--; /* possible ANSI violation */
+ do
+ {
+ c = *++haystack;
+ if (c == '\0')
+ goto ret0;
+ }
+ while (c != b);
+
+ c = *++needle;
+ if (c == '\0')
+ goto foundneedle;
+ ++needle;
+ goto jin;
+
+ for (;;)
+ {
+ register chartype a;
+ register const unsigned char *rhaystack, *rneedle;
+
+ do
+ {
+ a = *++haystack;
+ if (a == '\0')
+ goto ret0;
+ if (a == b)
+ break;
+ a = *++haystack;
+ if (a == '\0')
+ goto ret0;
+shloop: }
+ while (a != b);
+
+jin: a = *++haystack;
+ if (a == '\0')
+ goto ret0;
+
+ if (a != c)
+ goto shloop;
+
+ rhaystack = haystack-- + 1;
+ rneedle = needle;
+ a = *rneedle;
+
+ if (*rhaystack == a)
+ do
+ {
+ if (a == '\0')
+ goto foundneedle;
+ ++rhaystack;
+ a = *++needle;
+ if (*rhaystack != a)
+ break;
+ if (a == '\0')
+ goto foundneedle;
+ ++rhaystack;
+ a = *++needle;
+ }
+ while (*rhaystack == a);
+
+ needle = rneedle; /* took the register-poor aproach */
+
+ if (a == '\0')
+ break;
+ }
+ }
+foundneedle:
+ return (char*) haystack;
+ret0:
+ return 0;
+}
diff --git a/misc/strtol.c b/misc/strtol.c
index ea52e3e41..633ed467b 100644
--- a/misc/strtol.c
+++ b/misc/strtol.c
@@ -21,9 +21,13 @@ Cambridge, MA 02139, USA. */
# define USE_NUMBER_GROUPING
# define STDC_HEADERS
# define HAVE_LIMITS_H
+#else
+#include "system.h"
#endif
-#include "system.h"
+#ifndef errno
+extern int errno;
+#endif
#ifdef STDC_HEADERS
# include <stddef.h>
diff --git a/misc/strtoul.c b/misc/strtoul.c
index 74126ab7c..87ab3dcd9 100644
--- a/misc/strtoul.c
+++ b/misc/strtoul.c
@@ -16,6 +16,8 @@ License along with the GNU C Library; see the file COPYING.LIB. If
not, write to the Free Software Foundation, Inc., 675 Mass Ave,
Cambridge, MA 02139, USA. */
+#include "system.h"
+
#define UNSIGNED 1
-#include <limits.h>
-#include <strtol.c>
+
+#include "strtol.c"
diff --git a/missing b/missing
new file mode 100755
index 000000000..cbe2b0ef0
--- /dev/null
+++ b/missing
@@ -0,0 +1,188 @@
+#! /bin/sh
+# Common stub for a few missing GNU programs while installing.
+# Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+# Franc,ois Pinard <pinard@iro.umontreal.ca>, 1996.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+if test $# -eq 0; then
+ echo 1>&2 "Try \`$0 --help' for more information"
+ exit 1
+fi
+
+case "$1" in
+
+ -h|--h|--he|--hel|--help)
+ echo "\
+$0 [OPTION]... PROGRAM [ARGUMENT]...
+
+Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
+error status if there is no known handling for PROGRAM.
+
+Options:
+ -h, --help display this help and exit
+ -v, --version output version information and exit
+
+Supported PROGRAM values:
+ aclocal touch file \`aclocal.m4'
+ autoconf touch file \`configure'
+ autoheader touch file \`config.h.in'
+ automake touch all \`Makefile.in' files
+ bison create \`y.tab.[ch]', if possible, from existing .[ch]
+ flex create \`lex.yy.c', if possible, from existing .c
+ lex create \`lex.yy.c', if possible, from existing .c
+ makeinfo touch the output file
+ yacc create \`y.tab.[ch]', if possible, from existing .[ch]"
+ ;;
+
+ -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
+ echo "missing - GNU libit 0.0"
+ ;;
+
+ -*)
+ echo 1>&2 "$0: Unknown \`$1' option"
+ echo 1>&2 "Try \`$0 --help' for more information"
+ exit 1
+ ;;
+
+ aclocal)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified \`acinclude.m4' or \`configure.in'. You might want
+ to install the \`Automake' and \`Perl' packages. Grab them from
+ any GNU archive site."
+ touch aclocal.m4
+ ;;
+
+ autoconf)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified \`configure.in'. You might want to install the
+ \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
+ archive site."
+ touch configure
+ ;;
+
+ autoheader)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified \`acconfig.h' or \`configure.in'. You might want
+ to install the \`Autoconf' and \`GNU m4' packages. Grab them
+ from any GNU archive site."
+ files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER([^):]*:\([^)]*\)).*/\1/p' configure.in`
+ if test -z "$files"; then
+ files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^):]*\)).*/\1/p' configure.in`
+ test -z "$files" || files="$files.in"
+ else
+ files=`echo "$files" | sed -e 's/:/ /g'`
+ fi
+ test -z "$files" && files="config.h.in"
+ touch $files
+ ;;
+
+ automake)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'.
+ You might want to install the \`Automake' and \`Perl' packages.
+ Grab them from any GNU archive site."
+ find . -type f -name Makefile.am -print \
+ | sed 's/^\(.*\).am$/touch \1.in/' \
+ | sh
+ ;;
+
+ bison|yacc)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified a \`.y' file. You may need the \`Bison' package
+ in order for those modifications to take effect. You can get
+ \`Bison' from any GNU archive site."
+ rm -f y.tab.c y.tab.h
+ if [ $# -ne 1 ]; then
+ eval LASTARG="\${$#}"
+ case "$LASTARG" in
+ *.y)
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" y.tab.c
+ fi
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" y.tab.h
+ fi
+ ;;
+ esac
+ fi
+ if [ ! -f y.tab.h ]; then
+ echo >y.tab.h
+ fi
+ if [ ! -f y.tab.c ]; then
+ echo 'main() { return 0; }' >y.tab.c
+ fi
+ ;;
+
+ lex|flex)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified a \`.l' file. You may need the \`Flex' package
+ in order for those modifications to take effect. You can get
+ \`Flex' from any GNU archive site."
+ rm -f lex.yy.c
+ if [ $# -ne 1 ]; then
+ eval LASTARG="\${$#}"
+ case "$LASTARG" in
+ *.l)
+ SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" lex.yy.c
+ fi
+ ;;
+ esac
+ fi
+ if [ ! -f lex.yy.c ]; then
+ echo 'main() { return 0; }' >lex.yy.c
+ fi
+ ;;
+
+ makeinfo)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified a \`.texi' or \`.texinfo' file, or any other file
+ indirectly affecting the aspect of the manual. The spurious
+ call might also be the consequence of using a buggy \`make' (AIX,
+ DU, IRIX). You might want to install the \`Texinfo' package or
+ the \`GNU make' package. Grab either from any GNU archive site."
+ file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ if test -z "$file"; then
+ file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
+ file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
+ fi
+ touch $file
+ ;;
+
+ *)
+ echo 1>&2 "\
+WARNING: \`$1' is needed, and you do not seem to have it handy on your
+ system. You might have modified some files without having the
+ proper tools for further handling them. Check the \`README' file,
+ it often tells you about the needed prerequirements for installing
+ this package. You may also peek at any GNU archive site, in case
+ some other package would contain this missing \`$1' program."
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/oldrpmdb.c b/oldrpmdb.c
index a1fcffedd..93600d898 100644
--- a/oldrpmdb.c
+++ b/oldrpmdb.c
@@ -2,6 +2,8 @@
#include "build/rpmbuild.h"
+#include "intl.h"
+
#include "rpm_malloc.h"
#include "oldrpmdb.h"
diff --git a/po/.cvsignore b/po/.cvsignore
index 87f410a5b..1f8926b49 100644
--- a/po/.cvsignore
+++ b/po/.cvsignore
@@ -1,3 +1,3 @@
Makefile
+POTFILES
*.mo
-*.pot
diff --git a/po/Makefile.in b/po/Makefile.in
index c80869c5f..db16f6b4d 100644
--- a/po/Makefile.in
+++ b/po/Makefile.in
@@ -8,6 +8,8 @@ INSTALL_PROGRAM= @INSTALL_PROGRAM@
INSTALL_DATA= @INSTALL_DATA@
CC = @CC@
+installprefix = $(DESTDIR)
+
MSGMERGE = msgmerge
NLSPACKAGE = rpm
diff --git a/po/Makefile.in.in b/po/Makefile.in.in
new file mode 100644
index 000000000..111b40fcb
--- /dev/null
+++ b/po/Makefile.in.in
@@ -0,0 +1,248 @@
+# Makefile for program source directory in GNU NLS utilities package.
+# Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
+#
+# This file file be copied and used freely without restrictions. It can
+# be used in projects which are not available under the GNU Public License
+# but which still want to provide support for the GNU gettext functionality.
+# Please note that the actual code is *not* freely available.
+
+PACKAGE = @PACKAGE@
+VERSION = @VERSION@
+
+SHELL = /bin/sh
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+datadir = $(prefix)/@DATADIRNAME@
+localedir = $(datadir)/locale
+gnulocaledir = $(prefix)/share/locale
+gettextsrcdir = $(prefix)/share/gettext/po
+subdir = po
+
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+MKINSTALLDIRS = $(top_srcdir)/@MKINSTALLDIRS@
+
+CC = @CC@
+GENCAT = @GENCAT@
+GMSGFMT = PATH=../src:$$PATH @GMSGFMT@
+MSGFMT = @MSGFMT@
+XGETTEXT = PATH=../src:$$PATH @XGETTEXT@
+MSGMERGE = PATH=../src:$$PATH msgmerge
+
+DEFS = @DEFS@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+
+INCLUDES = -I.. -I$(top_srcdir)/intl
+
+COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
+
+SOURCES = cat-id-tbl.c
+POFILES = @POFILES@
+GMOFILES = @GMOFILES@
+DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(PACKAGE).pot \
+stamp-cat-id $(POFILES) $(GMOFILES) $(SOURCES)
+
+POTFILES = \
+
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+INSTOBJEXT = @INSTOBJEXT@
+
+.SUFFIXES:
+.SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat
+
+.c.o:
+ $(COMPILE) $<
+
+.po.pox:
+ $(MAKE) $(PACKAGE).pot
+ $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox
+
+.po.mo:
+ $(MSGFMT) -o $@ $<
+
+.po.gmo:
+ file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \
+ && rm -f $$file && $(GMSGFMT) -o $$file $<
+
+.po.cat:
+ sed -f ../intl/po2msg.sed < $< > $*.msg \
+ && rm -f $@ && $(GENCAT) $@ $*.msg
+
+
+all: all-@USE_NLS@
+
+all-yes: cat-id-tbl.c $(CATALOGS)
+all-no:
+
+$(srcdir)/$(PACKAGE).pot: $(POTFILES)
+ $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \
+ --add-comments --keyword=_ --keyword=N_ \
+ --files-from=$(srcdir)/POTFILES.in \
+ && test ! -f $(PACKAGE).po \
+ || ( rm -f $(srcdir)/$(PACKAGE).pot \
+ && mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot )
+
+$(srcdir)/cat-id-tbl.c: stamp-cat-id; @:
+$(srcdir)/stamp-cat-id: $(PACKAGE).pot
+ rm -f cat-id-tbl.tmp
+ sed -f ../intl/po2tbl.sed $(srcdir)/$(PACKAGE).pot \
+ | sed -e "s/@PACKAGE NAME@/$(PACKAGE)/" > cat-id-tbl.tmp
+ if cmp -s cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; then \
+ rm cat-id-tbl.tmp; \
+ else \
+ echo cat-id-tbl.c changed; \
+ rm -f $(srcdir)/cat-id-tbl.c; \
+ mv cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; \
+ fi
+ cd $(srcdir) && rm -f stamp-cat-id && echo timestamp > stamp-cat-id
+
+
+install: install-exec install-data
+install-exec:
+install-data: install-data-@USE_NLS@
+install-data-no: all
+install-data-yes: all
+ if test -r "$(MKINSTALLDIRS)"; then \
+ $(MKINSTALLDIRS) $(datadir); \
+ else \
+ $(SHELL) $(top_srcdir)/mkinstalldirs $(datadir); \
+ fi
+ @catalogs='$(CATALOGS)'; \
+ for cat in $$catalogs; do \
+ cat=`basename $$cat`; \
+ case "$$cat" in \
+ *.gmo) destdir=$(gnulocaledir);; \
+ *) destdir=$(localedir);; \
+ esac; \
+ lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
+ dir=$$destdir/$$lang/LC_MESSAGES; \
+ if test -r "$(MKINSTALLDIRS)"; then \
+ $(MKINSTALLDIRS) $$dir; \
+ else \
+ $(SHELL) $(top_srcdir)/mkinstalldirs $$dir; \
+ fi; \
+ if test -r $$cat; then \
+ $(INSTALL_DATA) $$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \
+ echo "installing $$cat as $$dir/$(PACKAGE)$(INSTOBJEXT)"; \
+ else \
+ $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \
+ echo "installing $(srcdir)/$$cat as" \
+ "$$dir/$(PACKAGE)$(INSTOBJEXT)"; \
+ fi; \
+ if test -r $$cat.m; then \
+ $(INSTALL_DATA) $$cat.m $$dir/$(PACKAGE)$(INSTOBJEXT).m; \
+ echo "installing $$cat.m as $$dir/$(PACKAGE)$(INSTOBJEXT).m"; \
+ else \
+ if test -r $(srcdir)/$$cat.m ; then \
+ $(INSTALL_DATA) $(srcdir)/$$cat.m \
+ $$dir/$(PACKAGE)$(INSTOBJEXT).m; \
+ echo "installing $(srcdir)/$$cat as" \
+ "$$dir/$(PACKAGE)$(INSTOBJEXT).m"; \
+ else \
+ true; \
+ fi; \
+ fi; \
+ done
+ if test "$(PACKAGE)" = "gettext"; then \
+ if test -r "$(MKINSTALLDIRS)"; then \
+ $(MKINSTALLDIRS) $(gettextsrcdir); \
+ else \
+ $(SHELL) $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \
+ fi; \
+ $(INSTALL_DATA) $(srcdir)/Makefile.in.in \
+ $(gettextsrcdir)/Makefile.in.in; \
+ else \
+ : ; \
+ fi
+
+# Define this as empty until I found a useful application.
+installcheck:
+
+uninstall:
+ catalogs='$(CATALOGS)'; \
+ for cat in $$catalogs; do \
+ cat=`basename $$cat`; \
+ lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
+ rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \
+ rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \
+ rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \
+ rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \
+ done
+ rm -f $(gettextsrcdir)/po-Makefile.in.in
+
+check: all
+
+cat-id-tbl.o: ../intl/libgettext.h
+
+dvi info tags TAGS ID:
+
+mostlyclean:
+ rm -f core core.* *.pox $(PACKAGE).po *.old.po cat-id-tbl.tmp
+ rm -fr *.o
+
+clean: mostlyclean
+
+distclean: clean
+ rm -f Makefile Makefile.in POTFILES *.mo *.msg *.cat *.cat.m
+
+maintainer-clean: distclean
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+ rm -f $(GMOFILES)
+
+distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
+dist distdir: update-po $(DISTFILES)
+ dists="$(DISTFILES)"; \
+ for file in $$dists; do \
+ ln $(srcdir)/$$file $(distdir) 2> /dev/null \
+ || cp -p $(srcdir)/$$file $(distdir); \
+ done
+
+update-po: Makefile
+ $(MAKE) $(PACKAGE).pot
+ PATH=`pwd`/../src:$$PATH; \
+ cd $(srcdir); \
+ catalogs='$(CATALOGS)'; \
+ for cat in $$catalogs; do \
+ cat=`basename $$cat`; \
+ lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
+ mv $$lang.po $$lang.old.po; \
+ echo "$$lang:"; \
+ if $(MSGMERGE) $$lang.old.po $(PACKAGE).pot -o $$lang.po; then \
+ rm -f $$lang.old.po; \
+ else \
+ echo "msgmerge for $$cat failed!"; \
+ rm -f $$lang.po; \
+ mv $$lang.old.po $$lang.po; \
+ fi; \
+ done
+
+POTFILES: POTFILES.in
+ ( if test 'x$(srcdir)' != 'x.'; then \
+ posrcprefix='$(top_srcdir)/'; \
+ else \
+ posrcprefix="../"; \
+ fi; \
+ rm -f $@-t $@ \
+ && (sed -e '/^#/d' -e '/^[ ]*$$/d' \
+ -e "s@.*@ $$posrcprefix& \\\\@" < $(srcdir)/$@.in \
+ | sed -e '$$s/\\$$//') > $@-t \
+ && chmod a-w $@-t \
+ && mv $@-t $@ )
+
+Makefile: Makefile.in.in ../config.status POTFILES
+ cd .. \
+ && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
+ $(SHELL) ./config.status
+
+# Tell versions [3.59,3.63) of GNU make not to export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/po/POTFILES.in b/po/POTFILES.in
new file mode 100644
index 000000000..489db205d
--- /dev/null
+++ b/po/POTFILES.in
@@ -0,0 +1,61 @@
+# List of files which contain translatable strings.
+
+# Package source files
+
+build.c
+checksig.c
+ftp.c
+install.c
+query.c
+rpm.c
+url.c
+verify.c
+rpm2cpio.c
+convertdb.c
+oldrpmdb.c
+build/build.c
+build/expression.c
+build/files.c
+build/misc.c
+build/myftw.c
+build/names.c
+build/pack.c
+build/parseBuildInstallClean.c
+build/parseChangelog.c
+build/parseDescription.c
+build/parseFiles.c
+build/parsePreamble.c
+build/parsePrep.c
+build/parseReqs.c
+build/parseScript.c
+build/parseSpec.c
+build/reqprov.c
+build/spec.c
+lib/cpio.c
+lib/dbindex.c
+lib/depends.c
+lib/falloc.c
+lib/formats.c
+lib/fs.c
+lib/header.c
+lib/install.c
+lib/lookup.c
+lib/macro.c
+lib/md5.c
+lib/md5sum.c
+lib/messages.c
+lib/misc.c
+lib/oldheader.c
+lib/package.c
+lib/rebuilddb.c
+lib/rpmdb.c
+lib/rpmerr.c
+lib/rpmlead.c
+lib/rpmrc.c
+lib/signature.c
+lib/stringbuf.c
+lib/tagtable.c
+lib/tread.c
+lib/uninstall.c
+lib/verify.c
+
diff --git a/po/rpm.pot b/po/rpm.pot
index e89631df5..6dd506e55 100644
--- a/po/rpm.pot
+++ b/po/rpm.pot
@@ -2,11 +2,12 @@
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#: ../rpm.c:200 ../rpm.c:279
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 1999-12-20 10:35-0500\n"
+"POT-Creation-Date: 1998-10-07 20:00-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -14,3432 +15,3136 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"
-#: build.c:25 lib/rpminstall.c:250 lib/rpminstall.c:424
+#: ../build.c:40 ../build.c:51
#, c-format
-msgid "cannot open %s/packages.rpm\n"
+msgid "Failed to open tar pipe: %s\n"
msgstr ""
-#: build.c:35
-msgid "failed build dependencies:\n"
+#. Give up
+#: ../build.c:57
+#, c-format
+msgid "Failed to read spec file from %s\n"
msgstr ""
-#: build.c:64
+#: ../build.c:80
#, c-format
-msgid "Unable to open spec file %s: %s\n"
+msgid "Failed to rename %s to %s: %s\n"
msgstr ""
-#: build.c:125 build.c:138
+#: ../build.c:112
#, c-format
-msgid "Failed to open tar pipe: %s\n"
+msgid "File is not a regular file: %s\n"
msgstr ""
-#. Give up
-#: build.c:146
+#: ../build.c:117
#, c-format
-msgid "Failed to read spec file from %s\n"
+msgid "Unable to open spec file: %s\n"
msgstr ""
-#: build.c:174
+#: ../build.c:125
#, c-format
-msgid "Failed to rename %s to %s: %s\n"
+msgid "File contains non-printable characters(%c): %s\n"
msgstr ""
-#: build.c:212
+#: ../checksig.c:26 ../checksig.c:157
#, c-format
-msgid "File is not a regular file: %s\n"
+msgid "%s: Open failed\n"
msgstr ""
-#: build.c:219
+#: ../checksig.c:30 ../checksig.c:162
#, c-format
-msgid "File %s does not appear to be a specfile.\n"
+msgid "%s: readLead failed\n"
msgstr ""
-#. parse up the build operators
-#: build.c:279
+#: ../checksig.c:34
#, c-format
-msgid "Building target platforms: %s\n"
+msgid "%s: Can't sign v1.0 RPM\n"
msgstr ""
-#: build.c:294
+#: ../checksig.c:38
#, c-format
-msgid "Building for target %s\n"
+msgid "%s: Can't re-sign v2.0 RPM\n"
msgstr ""
-#: build.c:344
-msgid "buildroot already specified"
+#: ../checksig.c:42 ../checksig.c:172
+#, c-format
+msgid "%s: rpmReadSignature failed\n"
msgstr ""
-#: build.c:351
-msgid "--buildarch has been obsoleted. Use the --target option instead.\n"
+#: ../checksig.c:55 ../checksig.c:186
+msgid "Couldn't read the header/archive"
msgstr ""
-#: build.c:355
-msgid "--buildos has been obsoleted. Use the --target option instead.\n"
+#: ../checksig.c:62
+msgid "Couldn't write header/archive to temp file"
msgstr ""
-#: build.c:376
-msgid "override build architecture"
+#: ../build/pack.c:274 ../checksig.c:87
+#, c-format
+msgid "Generating signature: %d\n"
msgstr ""
-#: build.c:378
-msgid "override build operating system"
+#: ../checksig.c:110
+msgid "Couldn't read sigtarget"
msgstr ""
-#: build.c:380
-msgid "override build root"
+#: ../checksig.c:119
+msgid "Couldn't write package"
msgstr ""
-#: build.c:382 rpm.c:495
-msgid "remove build tree when done"
+#: ../checksig.c:167
+#, c-format
+msgid "%s: No signature available (v1.0 RPM)\n"
msgstr ""
-#: build.c:384
-msgid "do not execute any stages of the build"
+#: ../checksig.c:177
+#, c-format
+msgid "%s: No signature available\n"
msgstr ""
-#: build.c:386
-msgid "do not accept I18N msgstr's from specfile"
+#: ../checksig.c:193
+#, c-format
+msgid "Unable to write %s"
msgstr ""
-#: build.c:388
-msgid "remove sources when done"
+#: ../checksig.c:284
+msgid "NOT OK"
msgstr ""
-#: build.c:390
-msgid "remove specfile when done"
+#: ../checksig.c:285 ../checksig.c:292
+msgid " (MISSING KEYS)"
msgstr ""
-#: build.c:392 rpm.c:493
-msgid "skip straight to specified stage (only for c,i)"
+#: ../checksig.c:291
+msgid "OK"
msgstr ""
-#: build.c:394
-msgid "override target platform"
+#: ../ftp.c:425
+msgid "Bad FTP server response"
msgstr ""
-#: build.c:396
-msgid "lookup I18N strings in specfile catalog"
+#: ../ftp.c:428
+msgid "FTP IO error"
msgstr ""
-#: convertdb.c:39
-msgid "RPM database already exists"
+#: ../ftp.c:431
+msgid "FTP server timeout"
msgstr ""
-#: convertdb.c:44
-msgid "Old db is missing"
+#: ../ftp.c:434
+msgid "Unable to lookup FTP server host address"
msgstr ""
-#: convertdb.c:55
-msgid "failed to create RPM database /var/lib/rpm"
+#: ../ftp.c:437
+msgid "Unable to lookup FTP server host name"
msgstr ""
-#: convertdb.c:61
-msgid "Old db is corrupt"
+#: ../ftp.c:440
+msgid "Failed to connect to FTP server"
+msgstr ""
+
+#: ../ftp.c:443
+msgid "Failed to establish data connection to FTP server"
+msgstr ""
+
+#: ../ftp.c:446
+msgid "IO error to local file"
msgstr ""
-#: convertdb.c:70
+#: ../ftp.c:449
+msgid "Error setting remote server to passive mode"
+msgstr ""
+
+#: ../ftp.c:452
+msgid "File not found on server"
+msgstr ""
+
+#: ../ftp.c:456
+msgid "FTP Unknown or unexpected error"
+msgstr ""
+
+#: ../install.c:68 ../install.c:184
#, c-format
-msgid "oldrpmdbGetPackageInfo failed &olddb = %p olddb.packages = %p\n"
+msgid "error: cannot open file %s\n"
msgstr ""
-#: convertdb.c:204
-msgid "rpmconvert: no arguments expected"
+#: ../install.c:85 ../install.c:407
+#, c-format
+msgid "Installing %s\n"
msgstr ""
-#: convertdb.c:210
-msgid "rpmconvert 1.0 - converting database in /var/lib/rpm\n"
+#: ../install.c:92
+msgid "stopping source install as we're just testing\n"
msgstr ""
-#: oldrpmdb.c:454
+#: ../install.c:103 ../install.c:197
#, c-format
-msgid "pulling %s from database\n"
+msgid "error: %s does not appear to be a RPM package\n"
msgstr ""
-#: oldrpmdb.c:461
-msgid "package not found in database"
+#: ../install.c:108 ../install.c:202 ../install.c:411
+#, c-format
+msgid "error: %s cannot be installed\n"
msgstr ""
-#: oldrpmdb.c:522
-msgid "no copyright!\n"
+#: ../install.c:141
+msgid "counting packages to install\n"
msgstr ""
-#: rpm.c:197
+#: ../install.c:145
+#, c-format
+msgid "found %d packages\n"
+msgstr ""
+
+#: ../install.c:151
+msgid "looking for packages to download\n"
+msgstr ""
+
+#: ../install.c:155
+#, c-format
+msgid "Retrieving %s\n"
+msgstr ""
+
+#: ../install.c:162
+#, c-format
+msgid "getting %s as %s\n"
+msgstr ""
+
+#: ../install.c:166
+#, c-format
+msgid "error: skipping %s - transfer failed - %s\n"
+msgstr ""
+
+#: ../install.c:178
+#, c-format
+msgid "retrieved %d packages\n"
+msgstr ""
+
+#: ../install.c:180
+msgid "finding source and binary packages\n"
+msgstr ""
+
+#: ../install.c:216
+#, c-format
+msgid "found %d source and %d binary packages\n"
+msgstr ""
+
+#: ../install.c:220
+#, c-format
+msgid "opening database mode: 0%o\n"
+msgstr ""
+
+#: ../install.c:222 ../install.c:311
+#, c-format
+msgid "error: cannot open %s%s/packages.rpm\n"
+msgstr ""
+
+#: ../install.c:243
+msgid "failed dependencies:\n"
+msgstr ""
+
+#: ../install.c:264
+msgid "installing binary packages\n"
+msgstr ""
+
+#: ../install.c:298
+msgid "counting packages to uninstall\n"
+msgstr ""
+
+#: ../install.c:321 ../query.c:520 ../verify.c:249
+#, c-format
+msgid "package %s is not installed\n"
+msgstr ""
+
+#: ../install.c:324
+#, c-format
+msgid "error searching for package %s\n"
+msgstr ""
+
+#: ../install.c:332
+#, c-format
+msgid "\"%s\" specifies multiple packages\n"
+msgstr ""
+
+#: ../install.c:354
+#, c-format
+msgid "found %d packages to uninstall\n"
+msgstr ""
+
+#: ../install.c:369
+msgid "removing these packages would break dependencies:\n"
+msgstr ""
+
+#: ../install.c:380
+#, c-format
+msgid "uninstalling record number %d\n"
+msgstr ""
+
+#: ../install.c:402
+#, c-format
+msgid "error: cannot open %s\n"
+msgstr ""
+
+#: ../install.c:450
+#, c-format
+msgid " is needed by %s-%s-%s\n"
+msgstr ""
+
+#: ../install.c:453
+#, c-format
+msgid " conflicts with %s-%s-%s\n"
+msgstr ""
+
+#: ../query.c:28
+#, c-format
+msgid "error in format: %s\n"
+msgstr ""
+
+#: ../query.c:65
+msgid "(contains no files)"
+msgstr ""
+
+#: ../query.c:118
+msgid "normal "
+msgstr ""
+
+#: ../query.c:120
+msgid "replaced "
+msgstr ""
+
+#: ../query.c:122
+msgid "net shared "
+msgstr ""
+
+#: ../query.c:124
+msgid "not installed "
+msgstr ""
+
+#: ../query.c:126
+#, c-format
+msgid "(unknown %3d) "
+msgstr ""
+
+#: ../query.c:130
+msgid "(no state) "
+msgstr ""
+
+#: ../query.c:146 ../query.c:176
+msgid "package has neither file owner or id lists"
+msgstr ""
+
+#: ../query.c:318
+#, c-format
+msgid "querying record number %d\n"
+msgstr ""
+
+#: ../query.c:323 ../verify.c:138
+msgid "error: could not read database record\n"
+msgstr ""
+
+#: ../query.c:359 ../query.c:366 ../verify.c:194 ../verify.c:201
+#, c-format
+msgid "open of %s failed: %s\n"
+msgstr ""
+
+#: ../query.c:382
+msgid "old format source packages cannot be queried\n"
+msgstr ""
+
+#: ../query.c:391
+#, c-format
+msgid "%s does not appear to be a RPM package\n"
+msgstr ""
+
+#: ../query.c:395
+#, c-format
+msgid "query of %s failed\n"
+msgstr ""
+
+#: ../query.c:408 ../verify.c:178
+msgid "could not read database record!\n"
+msgstr ""
+
+#: ../query.c:419 ../verify.c:224
+#, c-format
+msgid "group %s does not contain any packages\n"
+msgstr ""
+
+#: ../query.c:429
+#, c-format
+msgid "no package provides %s\n"
+msgstr ""
+
+#: ../query.c:439
+#, c-format
+msgid "no package triggers %s\n"
+msgstr ""
+
+#: ../query.c:449
+#, c-format
+msgid "no package requires %s\n"
+msgstr ""
+
+#: ../query.c:467 ../query.c:473
+msgid "maximum path length exceeded\n"
+msgstr ""
+
+#: ../query.c:485
+#, c-format
+msgid "file %s: %s\n"
+msgstr ""
+
+#: ../query.c:488 ../verify.c:238
+#, c-format
+msgid "file %s is not owned by any package\n"
+msgstr ""
+
+#: ../query.c:501
+#, c-format
+msgid "invalid package number: %s\n"
+msgstr ""
+
+#: ../query.c:504
+#, c-format
+msgid "showing package: %d\n"
+msgstr ""
+
+#: ../query.c:508
+#, c-format
+msgid "record %d could not be read\n"
+msgstr ""
+
+#: ../query.c:523 ../verify.c:251
+#, c-format
+msgid "error looking for package %s\n"
+msgstr ""
+
+#: ../rpm.c:177
#, c-format
msgid "rpm: %s\n"
msgstr ""
-#: rpm.c:208
+#: ../rpm.c:188
#, c-format
msgid "RPM version %s\n"
msgstr ""
-#: rpm.c:212
+#: ../rpm.c:192
msgid "Copyright (C) 1998 - Red Hat Software"
msgstr ""
-#: rpm.c:213
-msgid "This may be freely redistributed under the terms of the GNU GPL"
+#: ../rpm.c:193
+msgid ""
+"This may be freely redistributed under the terms of the GNU Public License"
msgstr ""
-#: rpm.c:221
+#: ../rpm.c:202
msgid "usage: rpm {--help}"
msgstr ""
-#: rpm.c:222
+#: ../rpm.c:203
msgid " rpm {--version}"
msgstr ""
-#: rpm.c:223
+#: ../rpm.c:204
msgid " rpm {--initdb} [--dbpath <dir>]"
msgstr ""
-#: rpm.c:224
+#: ../rpm.c:205
msgid ""
" rpm {--install -i} [-v] [--hash -h] [--percent] [--force] [--test]"
msgstr ""
-#: rpm.c:225
+#: ../rpm.c:206
msgid " [--replacepkgs] [--replacefiles] [--root <dir>]"
msgstr ""
-#: rpm.c:226
+#: ../rpm.c:207
msgid " [--excludedocs] [--includedocs] [--noscripts]"
msgstr ""
-#: rpm.c:227
+#: ../rpm.c:208
msgid ""
" [--rcfile <file>] [--ignorearch] [--dbpath <dir>]"
msgstr ""
-#: rpm.c:228
+#: ../rpm.c:209
msgid ""
" [--prefix <dir>] [--ignoreos] [--nodeps] [--allfiles]"
msgstr ""
-#: rpm.c:229
+#: ../rpm.c:210
msgid ""
" [--ftpproxy <host>] [--ftpport <port>] [--justdb]"
msgstr ""
-#: rpm.c:230 rpm.c:239 rpm.c:248
-msgid " [--httpproxy <host>] [--httpport <port>] "
-msgstr ""
-
-#: rpm.c:231 rpm.c:241
+#: ../rpm.c:211 ../rpm.c:219
msgid " [--noorder] [--relocate oldpath=newpath]"
msgstr ""
-#: rpm.c:232
+#: ../rpm.c:212
msgid ""
-" [--badreloc] [--notriggers] [--excludepath <path>]"
+" [--badreloc] [--notriggers] file1.rpm ... fileN.rpm"
msgstr ""
-#: rpm.c:233
-msgid " [--ignoresize] file1.rpm ... fileN.rpm"
-msgstr ""
-
-#: rpm.c:234
+#: ../rpm.c:213
msgid ""
" rpm {--upgrade -U} [-v] [--hash -h] [--percent] [--force] [--test]"
msgstr ""
-#: rpm.c:235
+#: ../rpm.c:214
msgid " [--oldpackage] [--root <dir>] [--noscripts]"
msgstr ""
-#: rpm.c:236
+#: ../rpm.c:215
msgid ""
" [--excludedocs] [--includedocs] [--rcfile <file>]"
msgstr ""
-#: rpm.c:237
+#: ../rpm.c:216
msgid ""
" [--ignorearch] [--dbpath <dir>] [--prefix <dir>] "
msgstr ""
-#: rpm.c:238
+#: ../rpm.c:217
msgid " [--ftpproxy <host>] [--ftpport <port>]"
msgstr ""
-#: rpm.c:240
+#: ../rpm.c:218
msgid " [--ignoreos] [--nodeps] [--allfiles] [--justdb]"
msgstr ""
-#: rpm.c:242
-msgid ""
-" [--badreloc] [--excludepath <path>] [--ignoresize]"
-msgstr ""
-
-#: rpm.c:243
-msgid " file1.rpm ... fileN.rpm"
+#: ../rpm.c:220
+msgid " [--badreloc] file1.rpm ... fileN.rpm"
msgstr ""
-#: rpm.c:244
+#: ../rpm.c:221
msgid " rpm {--query -q} [-afpg] [-i] [-l] [-s] [-d] [-c] [-v] [-R]"
msgstr ""
-#: rpm.c:245
+#: ../rpm.c:222
msgid " [--scripts] [--root <dir>] [--rcfile <file>]"
msgstr ""
-#: rpm.c:246
+#: ../rpm.c:223
msgid " [--whatprovides] [--whatrequires] [--requires]"
msgstr ""
-#: rpm.c:247
+#: ../rpm.c:224
msgid ""
" [--triggeredby] [--ftpuseport] [--ftpproxy <host>]"
msgstr ""
-#: rpm.c:249
+#: ../rpm.c:225
msgid ""
" [--ftpport <port>] [--provides] [--triggers] [--dump]"
msgstr ""
-#: rpm.c:250
+#: ../rpm.c:226
msgid " [--changelog] [--dbpath <dir>] [targets]"
msgstr ""
-#: rpm.c:251
+#: ../rpm.c:227
msgid " rpm {--verify -V -y} [-afpg] [--root <dir>] [--rcfile <file>]"
msgstr ""
-#: rpm.c:252
+#: ../rpm.c:228
msgid ""
" [--dbpath <dir>] [--nodeps] [--nofiles] [--noscripts]"
msgstr ""
-#: rpm.c:253
+#: ../rpm.c:229
msgid " [--nomd5] [targets]"
msgstr ""
-#: rpm.c:254
+#: ../rpm.c:230
msgid " rpm {--setperms} [-afpg] [target]"
msgstr ""
-#: rpm.c:255
+#: ../rpm.c:231
msgid " rpm {--setugids} [-afpg] [target]"
msgstr ""
-#: rpm.c:256
-msgid " rpm {--freshen -F} file1.rpm ... fileN.rpm"
-msgstr ""
-
-#: rpm.c:257
+#: ../rpm.c:232
msgid " rpm {--erase -e} [--root <dir>] [--noscripts] [--rcfile <file>]"
msgstr ""
-#: rpm.c:258
+#: ../rpm.c:233
msgid " [--dbpath <dir>] [--nodeps] [--allmatches]"
msgstr ""
-#: rpm.c:259
+#: ../rpm.c:234
msgid ""
" [--justdb] [--notriggers] rpackage1 ... packageN"
msgstr ""
-#: rpm.c:260
+#: ../rpm.c:235
msgid ""
" rpm {-b|t}[plciba] [-v] [--short-circuit] [--clean] [--rcfile <file>]"
msgstr ""
-#: rpm.c:261
-msgid " [--sign] [--nobuild] [--timecheck <s>] ]"
+#: ../rpm.c:236
+msgid " [--sign] [--test] [--timecheck <s>] ]"
msgstr ""
-#: rpm.c:262
-msgid " [--target=platform1[,platform2...]]"
+#: ../rpm.c:237
+msgid " [--buildplatform=platform1[,platform2...]]"
msgstr ""
-#: rpm.c:263
-msgid " [--rmsource] [--rmspec] specfile"
+#: ../rpm.c:238
+msgid " [--rmsource] specfile"
msgstr ""
-#: rpm.c:264
+#: ../rpm.c:239
msgid " rpm {--rmsource} [--rcfile <file>] [-v] specfile"
msgstr ""
-#: rpm.c:265
+#: ../rpm.c:240
msgid ""
" rpm {--rebuild} [--rcfile <file>] [-v] source1.rpm ... sourceN.rpm"
msgstr ""
-#: rpm.c:266
+#: ../rpm.c:241
msgid ""
" rpm {--recompile} [--rcfile <file>] [-v] source1.rpm ... sourceN.rpm"
msgstr ""
-#: rpm.c:267
+#: ../rpm.c:242
msgid " rpm {--resign} [--rcfile <file>] package1 package2 ... packageN"
msgstr ""
-#: rpm.c:268
+#: ../rpm.c:243
msgid " rpm {--addsign} [--rcfile <file>] package1 package2 ... packageN"
msgstr ""
-#: rpm.c:269
-msgid ""
-" rpm {--checksig -K} [--nopgp] [--nogpg] [--nomd5] [--rcfile <file>]"
+#: ../rpm.c:244
+msgid " rpm {--checksig -K} [--nopgp] [--nomd5] [--rcfile <file>]"
msgstr ""
-#: rpm.c:270
+#: ../rpm.c:245
msgid " package1 ... packageN"
msgstr ""
-#: rpm.c:271
+#: ../rpm.c:246
msgid " rpm {--rebuilddb} [--rcfile <file>] [--dbpath <dir>]"
msgstr ""
-#: rpm.c:272
+#: ../rpm.c:247
msgid " rpm {--querytags}"
msgstr ""
-#: rpm.c:306
+#: ../rpm.c:281
msgid "usage:"
msgstr ""
-#: rpm.c:308
+#: ../rpm.c:283
msgid "print this message"
msgstr ""
-#: rpm.c:310
+#: ../rpm.c:285
msgid "print the version of rpm being used"
msgstr ""
-#: rpm.c:311
+#: ../rpm.c:286
msgid " all modes support the following arguments:"
msgstr ""
-#: rpm.c:312
+#: ../rpm.c:287
msgid " --rcfile <file> "
msgstr ""
-#: rpm.c:313
+#: ../rpm.c:288
msgid "use <file> instead of /etc/rpmrc and $HOME/.rpmrc"
msgstr ""
-#: rpm.c:315
+#: ../rpm.c:290
msgid "be a little more verbose"
msgstr ""
-#: rpm.c:317
+#: ../rpm.c:292
msgid "be incredibly verbose (for debugging)"
msgstr ""
-#: rpm.c:319
+#: ../rpm.c:294
msgid "query mode"
msgstr ""
-#: rpm.c:320 rpm.c:382 rpm.c:446 rpm.c:474
+#: ../rpm.c:295 ../rpm.c:353 ../rpm.c:413 ../rpm.c:441
msgid " --root <dir> "
msgstr ""
-#: rpm.c:321 rpm.c:383 rpm.c:447 rpm.c:475 rpm.c:537
+#: ../rpm.c:296 ../rpm.c:354 ../rpm.c:414 ../rpm.c:442 ../rpm.c:502
msgid "use <dir> as the top level directory"
msgstr ""
-#: rpm.c:322 rpm.c:380 rpm.c:410 rpm.c:462 rpm.c:534
+#: ../rpm.c:297 ../rpm.c:351 ../rpm.c:379 ../rpm.c:429 ../rpm.c:499
msgid " --dbpath <dir> "
msgstr ""
-#: rpm.c:323 rpm.c:381 rpm.c:411 rpm.c:463 rpm.c:535
+#: ../rpm.c:298 ../rpm.c:352 ../rpm.c:380 ../rpm.c:430 ../rpm.c:500
msgid "use <dir> as the directory for the database"
msgstr ""
-#: rpm.c:324
+#: ../rpm.c:299
msgid " --queryformat <qfmt>"
msgstr ""
-#: rpm.c:325
+#: ../rpm.c:300
msgid "use <qfmt> as the header format (implies -i)"
msgstr ""
-#: rpm.c:326
+#: ../rpm.c:301
msgid ""
" install, upgrade and query (with -p) allow ftp URL's to be used in place"
msgstr ""
-#: rpm.c:327
+#: ../rpm.c:302
msgid " of file names as well as the following options:"
msgstr ""
-#: rpm.c:328
+#: ../rpm.c:303
msgid " --ftpproxy <host> "
msgstr ""
-#: rpm.c:329
+#: ../rpm.c:304
msgid "hostname or IP of ftp proxy"
msgstr ""
-#: rpm.c:330
+#: ../rpm.c:305
msgid " --ftpport <port> "
msgstr ""
-#: rpm.c:331
+#: ../rpm.c:306
msgid "port number of ftp server (or proxy)"
msgstr ""
-#: rpm.c:332
-msgid " --httpproxy <host> "
-msgstr ""
-
-#: rpm.c:333
-msgid "hostname or IP of http proxy"
-msgstr ""
-
-#: rpm.c:334
-msgid " --httpport <port> "
-msgstr ""
-
-#: rpm.c:335
-msgid "port number of http server (or proxy)"
-msgstr ""
-
-#: rpm.c:336
+#: ../rpm.c:307
msgid " Package specification options:"
msgstr ""
-#: rpm.c:338
+#: ../rpm.c:309
msgid "query all packages"
msgstr ""
-#: rpm.c:339
+#: ../rpm.c:310
msgid " -f <file>+ "
msgstr ""
-#: rpm.c:340
+#: ../rpm.c:311
msgid "query package owning <file>"
msgstr ""
-#: rpm.c:341
+#: ../rpm.c:312
msgid " -p <packagefile>+ "
msgstr ""
-#: rpm.c:342
+#: ../rpm.c:313
msgid "query (uninstalled) package <packagefile>"
msgstr ""
-#: rpm.c:343
+#: ../rpm.c:314
msgid " --triggeredby <pkg>"
msgstr ""
-#: rpm.c:344
+#: ../rpm.c:315
msgid "query packages triggered by <pkg>"
msgstr ""
-#: rpm.c:345
+#: ../rpm.c:316
msgid " --whatprovides <cap>"
msgstr ""
-#: rpm.c:346
+#: ../rpm.c:317
msgid "query packages which provide <cap> capability"
msgstr ""
-#: rpm.c:347
+#: ../rpm.c:318
msgid " --whatrequires <cap>"
msgstr ""
-#: rpm.c:348
+#: ../rpm.c:319
msgid "query packages which require <cap> capability"
msgstr ""
-#: rpm.c:349
+#: ../rpm.c:320
msgid " Information selection options:"
msgstr ""
-#: rpm.c:351
+#: ../rpm.c:322
msgid "display package information"
msgstr ""
-#: rpm.c:353
+#: ../rpm.c:324
msgid "display the package's change log"
msgstr ""
-#: rpm.c:355
+#: ../rpm.c:326
msgid "display package file list"
msgstr ""
-#: rpm.c:357
+#: ../rpm.c:328
msgid "show file states (implies -l)"
msgstr ""
-#: rpm.c:359
+#: ../rpm.c:330
msgid "list only documentation files (implies -l)"
msgstr ""
-#: rpm.c:361
+#: ../rpm.c:332
msgid "list only configuration files (implies -l)"
msgstr ""
-#: rpm.c:363
+#: ../rpm.c:334
msgid ""
"show all verifiable information for each file (must be used with -l, -c, or "
"-d)"
msgstr ""
-#: rpm.c:365
+#: ../rpm.c:336
msgid "list capabilities package provides"
msgstr ""
-#: rpm.c:366
+#: ../rpm.c:337
msgid " --requires"
msgstr ""
-#: rpm.c:368
+#: ../rpm.c:339
msgid "list package dependencies"
msgstr ""
-#: rpm.c:370
+#: ../rpm.c:341
msgid "print the various [un]install scripts"
msgstr ""
-#: rpm.c:372
+#: ../rpm.c:343
msgid "show the trigger scripts contained in the package"
msgstr ""
-#: rpm.c:376
+#: ../rpm.c:347
msgid " --pipe <cmd> "
msgstr ""
-#: rpm.c:377
+#: ../rpm.c:348
msgid "send stdout to <cmd>"
msgstr ""
-#: rpm.c:379
+#: ../rpm.c:350
msgid ""
"verify a package installation using the same same package specification "
"options as -q"
msgstr ""
-#: rpm.c:385 rpm.c:433 rpm.c:467
+#: ../rpm.c:356 ../rpm.c:400 ../rpm.c:434
msgid "do not verify package dependencies"
msgstr ""
-#: rpm.c:387
+#: ../rpm.c:358
msgid "do not verify file md5 checksums"
msgstr ""
-#: rpm.c:389
+#: ../rpm.c:360
msgid "do not verify file attributes"
msgstr ""
-#: rpm.c:392
+#: ../rpm.c:363
msgid ""
"set the file permissions to those in the package database using the same "
"package specification options as -q"
msgstr ""
-#: rpm.c:395
+#: ../rpm.c:366
msgid ""
"set the file owner and group to those in the package database using the same "
"package specification options as -q"
msgstr ""
-#: rpm.c:399
+#: ../rpm.c:370
msgid " --install <packagefile>"
msgstr ""
-#: rpm.c:400
+#: ../rpm.c:371
msgid " -i <packagefile> "
msgstr ""
-#: rpm.c:401
+#: ../rpm.c:372
msgid "install package"
msgstr ""
-#: rpm.c:402
-msgid " --excludepath <path>"
-msgstr ""
-
-#: rpm.c:403
-msgid "skip files in path <path>"
-msgstr ""
-
-#: rpm.c:404
+#: ../rpm.c:373
msgid " --relocate <oldpath>=<newpath>"
msgstr ""
-#: rpm.c:405
+#: ../rpm.c:374
msgid "relocate files from <oldpath> to <newpath>"
msgstr ""
-#: rpm.c:407
+#: ../rpm.c:376
msgid "relocate files even though the package doesn't allow it"
msgstr ""
-#: rpm.c:408
+#: ../rpm.c:377
msgid " --prefix <dir> "
msgstr ""
-#: rpm.c:409
+#: ../rpm.c:378
msgid "relocate the package to <dir>, if relocatable"
msgstr ""
-#: rpm.c:413
+#: ../rpm.c:382
msgid "do not install documentation"
msgstr ""
-#: rpm.c:415
+#: ../rpm.c:384
msgid "short hand for --replacepkgs --replacefiles"
msgstr ""
-#: rpm.c:418
+#: ../rpm.c:387
msgid "print hash marks as package installs (good with -v)"
msgstr ""
-#: rpm.c:420
+#: ../rpm.c:389
msgid "install all files, even configurations which might otherwise be skipped"
msgstr ""
-#: rpm.c:423
+#: ../rpm.c:392
msgid "don't verify package architecture"
msgstr ""
-#: rpm.c:425
-msgid "don't check disk space before installing"
-msgstr ""
-
-#: rpm.c:427
+#: ../rpm.c:394
msgid "don't verify package operating system"
msgstr ""
-#: rpm.c:429
+#: ../rpm.c:396
msgid "install documentation"
msgstr ""
-#: rpm.c:431 rpm.c:465
+#: ../rpm.c:398 ../rpm.c:432
msgid "update the database, but do not modify the filesystem"
msgstr ""
-#: rpm.c:435 rpm.c:469
+#: ../rpm.c:402 ../rpm.c:436
msgid "do not reorder package installation to satisfy dependencies"
msgstr ""
-#: rpm.c:437
+#: ../rpm.c:404
msgid "don't execute any installation scripts"
msgstr ""
-#: rpm.c:439 rpm.c:473
+#: ../rpm.c:406 ../rpm.c:440
msgid "don't execute any scripts triggered by this package"
msgstr ""
-#: rpm.c:441
+#: ../rpm.c:408
msgid "print percentages as package installs"
msgstr ""
-#: rpm.c:443
+#: ../rpm.c:410
msgid "install even if the package replaces installed files"
msgstr ""
-#: rpm.c:445
+#: ../rpm.c:412
msgid "reinstall if the package is already present"
msgstr ""
-#: rpm.c:449
+#: ../rpm.c:416
msgid "don't install, but tell if it would work or not"
msgstr ""
-#: rpm.c:451
+#: ../rpm.c:418
msgid " --upgrade <packagefile>"
msgstr ""
-#: rpm.c:452
+#: ../rpm.c:419
msgid " -U <packagefile> "
msgstr ""
-#: rpm.c:453
+#: ../rpm.c:420
msgid "upgrade package (same options as --install, plus)"
msgstr ""
-#: rpm.c:455
+#: ../rpm.c:422
msgid ""
"upgrade to an old version of the package (--force on upgrades does this "
"automatically)"
msgstr ""
-#: rpm.c:457
+#: ../rpm.c:424
msgid " --erase <package>"
msgstr ""
-#: rpm.c:459
+#: ../rpm.c:426
msgid "erase (uninstall) package"
msgstr ""
-#: rpm.c:461
+#: ../rpm.c:428
msgid ""
"remove all packages which match <package> (normally an error is generated if "
"<package> specified multiple packages)"
msgstr ""
-#: rpm.c:471
+#: ../rpm.c:438
msgid "do not execute any package specific scripts"
msgstr ""
-#: rpm.c:477
+#: ../rpm.c:444
msgid " -b<stage> <spec> "
msgstr ""
-#: rpm.c:478
+#: ../rpm.c:445
msgid " -t<stage> <tarball> "
msgstr ""
-#: rpm.c:479
+#: ../rpm.c:446
msgid "build package, where <stage> is one of:"
msgstr ""
-#: rpm.c:481
+#: ../rpm.c:448
msgid "prep (unpack sources and apply patches)"
msgstr ""
-#: rpm.c:483
+#: ../rpm.c:450
#, c-format
msgid "list check (do some cursory checks on %files)"
msgstr ""
-#: rpm.c:485
+#: ../rpm.c:452
msgid "compile (prep and compile)"
msgstr ""
-#: rpm.c:487
+#: ../rpm.c:454
msgid "install (prep, compile, install)"
msgstr ""
-#: rpm.c:489
+#: ../rpm.c:456
msgid "binary package (prep, compile, install, package)"
msgstr ""
-#: rpm.c:491
+#: ../rpm.c:458
msgid "bin/src package (prep, compile, install, package)"
msgstr ""
-#: rpm.c:497
+#: ../rpm.c:460
+msgid "skip straight to specified stage (only for c,i)"
+msgstr ""
+
+#: ../rpm.c:462
+msgid "remove build tree when done"
+msgstr ""
+
+#: ../rpm.c:464
msgid "remove sources and spec file when done"
msgstr ""
-#: rpm.c:499
-msgid "generate PGP/GPG signature"
+#: ../rpm.c:466
+msgid "generate PGP signature"
msgstr ""
-#: rpm.c:500
+#: ../rpm.c:467
msgid " --buildroot <dir> "
msgstr ""
-#: rpm.c:501
+#: ../rpm.c:468
msgid "use <dir> as the build root"
msgstr ""
-#: rpm.c:502
-msgid " --target=<platform>+"
+#: ../rpm.c:469
+msgid " --platform=<platform>+"
msgstr ""
-#: rpm.c:503
-msgid "build the packages for the build targets platform1...platformN."
+#: ../rpm.c:470
+msgid "build the packages for the platform1...platformN build targets."
msgstr ""
-#: rpm.c:505
+#: ../rpm.c:472
msgid "do not execute any stages"
msgstr ""
-#: rpm.c:506
+#: ../rpm.c:473
msgid " --timecheck <secs> "
msgstr ""
-#: rpm.c:507
+#: ../rpm.c:474
msgid "set the time check to <secs> seconds (0 disables)"
msgstr ""
-#: rpm.c:509
+#: ../rpm.c:476
msgid " --rebuild <src_pkg> "
msgstr ""
-#: rpm.c:510
+#: ../rpm.c:477
msgid ""
"install source package, build binary package and remove spec file, sources, "
"patches, and icons."
msgstr ""
-#: rpm.c:511
+#: ../rpm.c:478
msgid " --rmsource <spec> "
msgstr ""
-#: rpm.c:512
+#: ../rpm.c:479
msgid "remove sources and spec file"
msgstr ""
-#: rpm.c:513
+#: ../rpm.c:480
msgid " --recompile <src_pkg> "
msgstr ""
-#: rpm.c:514
+#: ../rpm.c:481
msgid "like --rebuild, but don't build any package"
msgstr ""
-#: rpm.c:515
+#: ../rpm.c:482
msgid " --resign <pkg>+ "
msgstr ""
-#: rpm.c:516
+#: ../rpm.c:483
msgid "sign a package (discard current signature)"
msgstr ""
-#: rpm.c:517
+#: ../rpm.c:484
msgid " --addsign <pkg>+ "
msgstr ""
-#: rpm.c:518
+#: ../rpm.c:485
msgid "add a signature to a package"
msgstr ""
-#: rpm.c:520
+#: ../rpm.c:487
msgid " --checksig <pkg>+ "
msgstr ""
-#: rpm.c:521
+#: ../rpm.c:488
msgid "verify package signature"
msgstr ""
-#: rpm.c:523
+#: ../rpm.c:490
msgid "skip any PGP signatures"
msgstr ""
-#: rpm.c:525
-msgid "skip any GPG signatures"
-msgstr ""
-
-#: rpm.c:527
+#: ../rpm.c:492
msgid "skip any MD5 signatures"
msgstr ""
-#: rpm.c:529
+#: ../rpm.c:494
msgid "list the tags that can be used in a query format"
msgstr ""
-#: rpm.c:531
+#: ../rpm.c:496
msgid "make sure a valid database exists"
msgstr ""
-#: rpm.c:533
+#: ../rpm.c:498
msgid "rebuild database from existing database"
msgstr ""
-#: rpm.c:682 rpm.c:688 rpm.c:695 rpm.c:701 rpm.c:710 rpm.c:717 rpm.c:764
-#: rpm.c:770 rpm.c:804 rpm.c:810 rpm.c:816 rpm.c:824 rpm.c:868 rpm.c:923
-#: rpm.c:930
+#: ../rpm.c:637 ../rpm.c:643 ../rpm.c:650 ../rpm.c:656 ../rpm.c:665
+#: ../rpm.c:672 ../rpm.c:718 ../rpm.c:724 ../rpm.c:813 ../rpm.c:820
+#: ../rpm.c:826 ../rpm.c:834 ../rpm.c:840 ../rpm.c:848 ../rpm.c:881
+#: ../rpm.c:927 ../rpm.c:933
msgid "only one major mode may be specified"
msgstr ""
-#: rpm.c:703
+#: ../rpm.c:658
msgid "-u and --uninstall are deprecated and no longer work.\n"
msgstr ""
-#: rpm.c:705
+#: ../rpm.c:660
msgid "Use -e or --erase instead.\n"
msgstr ""
-#: rpm.c:721
+#: ../rpm.c:676
msgid "--build (-b) requires one of a,b,i,c,p,l as its sole argument"
msgstr ""
-#: rpm.c:725
+#: ../rpm.c:680
msgid "--tarbuild (-t) requires one of a,b,i,c,p,l as its sole argument"
msgstr ""
-#: rpm.c:777 rpm.c:783 rpm.c:790 rpm.c:797 rpm.c:937
+#: ../rpm.c:747 ../rpm.c:754 ../rpm.c:762 ../rpm.c:770 ../rpm.c:790
+#: ../rpm.c:798 ../rpm.c:806
msgid "one type of query/verify may be performed at a time"
msgstr ""
-#: rpm.c:834
+#: ../rpm.c:856
msgid "arguments to --dbpath must begin with a /"
msgstr ""
-#: rpm.c:874
+#: ../rpm.c:863
+msgid "one type of query may be performed at a time"
+msgstr ""
+
+#: ../rpm.c:887
msgid "relocations must begin with a /"
msgstr ""
-#: rpm.c:876
+#: ../rpm.c:889
msgid "relocations must contain a ="
msgstr ""
-#: rpm.c:879
+#: ../rpm.c:892
msgid "relocations must have a / following the ="
msgstr ""
-#: rpm.c:888
-msgid "exclude paths must begin with a /"
+#: ../rpm.c:904
+msgid "Internal error in argument processing :-(\n"
msgstr ""
-#: rpm.c:897
-#, c-format
-msgid "Internal error in argument processing (%d) :-(\n"
-msgstr ""
-
-#: rpm.c:948
+#: ../rpm.c:945
msgid "--dbpath given for operation that does not use a database"
msgstr ""
-#: rpm.c:952
+#: ../rpm.c:950
msgid "--timecheck may only be used during package builds"
msgstr ""
-#: rpm.c:955
-msgid "unexpected query flags"
+#: ../rpm.c:953 ../rpm.c:956
+msgid "unexpected query specifiers"
msgstr ""
-#: rpm.c:958
-msgid "unexpected query format"
-msgstr ""
-
-#: rpm.c:961
+#: ../rpm.c:960
msgid "unexpected query source"
msgstr ""
-#: rpm.c:967
-msgid "only installation, upgrading, rmsource and rmspec may be forced"
+#: ../rpm.c:963
+msgid "only installation and upgrading may be forced"
msgstr ""
-#: rpm.c:970
+#: ../rpm.c:966
msgid "files may only be relocated during package installation"
msgstr ""
-#: rpm.c:973
+#: ../rpm.c:969
msgid "only one of --prefix or --relocate may be used"
msgstr ""
-#: rpm.c:976
-msgid ""
-"--relocate and --excludepath may only be used when installing new packages"
+#: ../rpm.c:972
+msgid "--relocate may only be used when installing new packages"
msgstr ""
-#: rpm.c:979
+#: ../rpm.c:975
msgid "--prefix may only be used when installing new packages"
msgstr ""
-#: rpm.c:982
+#: ../rpm.c:978
msgid "arguments to --prefix must begin with a /"
msgstr ""
-#: rpm.c:985
+#: ../rpm.c:981
msgid "--hash (-h) may only be specified during package installation"
msgstr ""
-#: rpm.c:989
+#: ../rpm.c:985
msgid "--percent may only be specified during package installation"
msgstr ""
-#: rpm.c:993
+#: ../rpm.c:989
msgid "--replacefiles may only be specified during package installation"
msgstr ""
-#: rpm.c:997
+#: ../rpm.c:993
msgid "--replacepkgs may only be specified during package installation"
msgstr ""
-#: rpm.c:1001
+#: ../rpm.c:997
msgid "--excludedocs may only be specified during package installation"
msgstr ""
-#: rpm.c:1005
+#: ../rpm.c:1001
msgid "--includedocs may only be specified during package installation"
msgstr ""
-#: rpm.c:1009
+#: ../rpm.c:1005
msgid "only one of --excludedocs and --includedocs may be specified"
msgstr ""
-#: rpm.c:1013
+#: ../rpm.c:1009
msgid "--ignorearch may only be specified during package installation"
msgstr ""
-#: rpm.c:1017
+#: ../rpm.c:1013
msgid "--ignoreos may only be specified during package installation"
msgstr ""
-#: rpm.c:1021
-msgid "--ignoresize may only be specified during package installation"
-msgstr ""
-
-#: rpm.c:1025
+#: ../rpm.c:1017
msgid "--allmatches may only be specified during package erasure"
msgstr ""
-#: rpm.c:1029
+#: ../rpm.c:1021
msgid "--allfiles may only be specified during package installation"
msgstr ""
-#: rpm.c:1033
+#: ../rpm.c:1025
msgid "--justdb may only be specified during package installation and erasure"
msgstr ""
-#: rpm.c:1038
+#: ../rpm.c:1030
msgid ""
"--noscripts may only be specified during package installation, erasure, and "
"verification"
msgstr ""
-#: rpm.c:1042
+#: ../rpm.c:1034
msgid ""
"--notriggers may only be specified during package installation, erasure, and "
"verification"
msgstr ""
-#: rpm.c:1046
+#: ../rpm.c:1039
msgid ""
-"--nodeps may only be specified during package building, installation, "
-"erasure, and verification"
+"--nodeps may only be specified during package installation, erasure, and "
+"verification"
+msgstr ""
+
+#: ../rpm.c:1043
+msgid "--nofiles may only be specified during package verification"
msgstr ""
-#: rpm.c:1050
+#: ../rpm.c:1048
msgid ""
"--test may only be specified during package installation, erasure, and "
"building"
msgstr ""
-#: rpm.c:1054
+#: ../rpm.c:1053
msgid ""
"--root (-r) may only be specified during installation, erasure, querying, "
"and database rebuilds"
msgstr ""
-#: rpm.c:1066
+#: ../rpm.c:1058
msgid "arguments to --root (-r) must begin with a /"
msgstr ""
-#: rpm.c:1072
-msgid "--oldpackage may only be used during upgrades"
+#: ../rpm.c:1061
+msgid "--clean may only be used with -b and -t"
msgstr ""
-#: rpm.c:1077
-msgid ""
-"ftp options can only be used during package queries, installs, and upgrades"
+#: ../rpm.c:1064
+msgid "--rmsource may only be used with -b and -t"
msgstr ""
-#: rpm.c:1083
-msgid ""
-"http options can only be used during package queries, installs, and upgrades"
+#: ../rpm.c:1067
+msgid "--short-circuit may only be used during package building"
msgstr ""
-#: rpm.c:1087
-msgid "--nopgp may only be used during signature checking"
+#: ../rpm.c:1071
+msgid "--short-circuit may only be used with -bc, -bi, -bs, -tc -ti, or -ts"
msgstr ""
-#: rpm.c:1090
-msgid "--nogpg may only be used during signature checking"
+#: ../rpm.c:1076
+msgid "--oldpackage may only be used during upgrades"
msgstr ""
-#: rpm.c:1093
-msgid ""
-"--nomd5 may only be used during signature checking and package verification"
+#: ../rpm.c:1079
+msgid "--dump may only be used during queries"
msgstr ""
-#: rpm.c:1121
-msgid "no files to sign\n"
+#: ../rpm.c:1082
+msgid "--dump of queries must be used with -l, -c, or -d"
msgstr ""
-#: rpm.c:1126
-#, c-format
-msgid "cannot access file %s\n"
+#: ../rpm.c:1087
+msgid ""
+"ftp options can only be used during package queries, installs, and upgrades"
msgstr ""
-#: rpm.c:1141
-msgid "pgp not found: "
+#: ../rpm.c:1094
+msgid "--nopgp may only be used during signature checking"
msgstr ""
-#: rpm.c:1145
-msgid "Enter pass phrase: "
+#: ../rpm.c:1097
+msgid ""
+"--nopgp may only be used during signature checking and package verification"
msgstr ""
-#: rpm.c:1147
+#: ../rpm.c:1110
msgid "Pass phrase check failed\n"
msgstr ""
-#: rpm.c:1150
+#: ../rpm.c:1113
msgid "Pass phrase is good.\n"
msgstr ""
-#: rpm.c:1155
-msgid "Invalid %%_signature spec in macro file.\n"
-msgstr ""
-
-#: rpm.c:1161
+#: ../rpm.c:1125
msgid "--sign may only be used during package building"
msgstr ""
-#: rpm.c:1176
+#: ../rpm.c:1140
msgid "exec failed\n"
msgstr ""
-#: rpm.c:1195
+#: ../rpm.c:1159
msgid "unexpected arguments to --querytags "
msgstr ""
-#: rpm.c:1206
+#: ../rpm.c:1170
msgid "no packages given for signature check"
msgstr ""
-#: rpm.c:1217
+#: ../rpm.c:1177
msgid "no packages given for signing"
msgstr ""
-#: rpm.c:1229
+#: ../rpm.c:1186
msgid "no packages files given for rebuild"
msgstr ""
-#: rpm.c:1292
+#: ../rpm.c:1249
msgid "no spec files given for build"
msgstr ""
-#: rpm.c:1294
+#: ../rpm.c:1251
msgid "no tar files given for build"
msgstr ""
-#: rpm.c:1310
+#: ../rpm.c:1264
msgid "no packages given for uninstall"
msgstr ""
-#: rpm.c:1360
+#: ../rpm.c:1304
msgid "no packages given for install"
msgstr ""
-#: rpm.c:1383
+#: ../rpm.c:1328
msgid "extra arguments given for query of all packages"
msgstr ""
-#: rpm.c:1388
+#: ../rpm.c:1333
msgid "no arguments given for query"
msgstr ""
-#: rpm.c:1405
-msgid "extra arguments given for verify of all packages"
+#: ../rpm.c:1350
+msgid "no arguments given for verify"
msgstr ""
-#: rpm.c:1409
-msgid "no arguments given for verify"
+#: ../url.c:47
+#, c-format
+msgid "Password for %s@%s: "
+msgstr ""
+
+#: ../url.c:113 ../url.c:156 ../url.c:182
+#, c-format
+msgid "getting %s via anonymous ftp\n"
+msgstr ""
+
+#: ../url.c:120
+#, c-format
+msgid "logging into %s as %s, pw %s\n"
msgstr ""
-#: rpm2cpio.c:22
+#: ../url.c:131
+msgid "error: ftpport must be a number\n"
+msgstr ""
+
+#: ../url.c:189
+#, c-format
+msgid "failed to create %s\n"
+msgstr ""
+
+#: ../verify.c:35
#, c-format
-msgid "cannot open package: %s\n"
+msgid "missing %s\n"
msgstr ""
-#: rpm2cpio.c:32
+#: ../verify.c:91
+#, c-format
+msgid "Unsatisfied dependencies for %s-%s-%s: "
+msgstr ""
+
+#: ../verify.c:133
+#, c-format
+msgid "verifying record number %d\n"
+msgstr ""
+
+#: ../verify.c:215
+#, c-format
+msgid "%s is not an RPM\n"
+msgstr ""
+
+#: ../rpm2cpio.c:39
msgid "argument is not an RPM package\n"
msgstr ""
-#: rpm2cpio.c:36
+#: ../rpm2cpio.c:42
msgid "error reading header from package\n"
msgstr ""
-#: rpm2cpio.c:43
-#, c-format
-msgid "cannot re-open payload: %s\n"
+#: ../convertdb.c:39
+msgid "RPM database already exists"
msgstr ""
-#: build/build.c:105 build/pack.c:269
-msgid "Unable to open temp file"
+#: ../convertdb.c:44
+msgid "Old db is missing"
+msgstr ""
+
+#: ../convertdb.c:55
+msgid "failed to create RPM database /var/lib/rpm"
+msgstr ""
+
+#: ../convertdb.c:61
+msgid "Old db is corrupt"
msgstr ""
-#: build/build.c:184
+#: ../convertdb.c:70
#, c-format
-msgid "Executing(%s): %s\n"
+msgid "oldrpmdbGetPackageInfo failed &olddb = %p olddb.packages = %p\n"
+msgstr ""
+
+#: ../convertdb.c:202
+msgid "rpmconvert: no arguments expected"
+msgstr ""
+
+#: ../convertdb.c:208
+msgid "rpmconvert 1.0 - converting database in /var/lib/rpm\n"
msgstr ""
-#: build/build.c:190
+#: ../oldrpmdb.c:456
#, c-format
-msgid "Exec of %s failed (%s): %s"
+msgid "pulling %s from database\n"
+msgstr ""
+
+#: ../oldrpmdb.c:463
+msgid "package not found in database"
msgstr ""
-#: build/build.c:198
+#: ../oldrpmdb.c:524
+msgid "no copyright!\n"
+msgstr ""
+
+#: ../build/build.c:96 ../build/pack.c:192
+msgid "Unable to open temp file"
+msgstr ""
+
+#: ../build/build.c:133
#, c-format
-msgid "Bad exit status from %s (%s)"
+msgid "Executing: %s\n"
msgstr ""
-#: build/expression.c:207
-msgid "syntax error while parsing =="
+#: ../build/build.c:137
+#, c-format
+msgid "Exec of %s failed (%s)"
msgstr ""
-#: build/expression.c:237
-msgid "syntax error while parsing &&"
+#: ../build/build.c:145
+#, c-format
+msgid "Bad exit status from %s (%s)"
msgstr ""
-#: build/expression.c:246
-msgid "syntax error while parsing ||"
+#: ../build/expression.c:188 ../build/expression.c:197
+msgid "parse error in tokenizer"
msgstr ""
-#: build/expression.c:288
+#: ../build/expression.c:239
msgid "parse error in expression"
msgstr ""
-#: build/expression.c:318
+#: ../build/expression.c:269
msgid "unmatched ("
msgstr ""
-#: build/expression.c:336
+#: ../build/expression.c:287
msgid "undefined identifier"
msgstr ""
-#: build/expression.c:355
+#: ../build/expression.c:306
msgid "- only on numbers"
msgstr ""
-#: build/expression.c:371
+#: ../build/expression.c:322
msgid "! only on numbers"
msgstr ""
-#: build/expression.c:410 build/expression.c:455 build/expression.c:512
-#: build/expression.c:599
+#: ../build/expression.c:358 ../build/expression.c:403
+#: ../build/expression.c:460 ../build/expression.c:543
msgid "types must match"
msgstr ""
-#: build/expression.c:423
+#: ../build/expression.c:371
msgid "* / not suported for strings"
msgstr ""
-#: build/expression.c:471
+#: ../build/expression.c:419
msgid "- not suported for strings"
msgstr ""
-#: build/expression.c:612
+#: ../build/expression.c:556
msgid "&& and || not suported for strings"
msgstr ""
-#: build/expression.c:645 build/expression.c:692
+#: ../build/expression.c:587 ../build/expression.c:630
msgid "syntax error in expression"
msgstr ""
-#: build/files.c:199
+#: ../build/files.c:204
#, c-format
msgid "TIMECHECK failure: %s\n"
msgstr ""
-#: build/files.c:243 build/files.c:325 build/files.c:488
+#: ../build/files.c:233 ../build/files.c:245 ../build/files.c:317
+#: ../build/files.c:329 ../build/files.c:356
#, c-format
-msgid "Missing '(' in %s %s"
+msgid "Bad %s() syntax: %s"
msgstr ""
-#: build/files.c:254 build/files.c:442 build/files.c:499
+#: ../build/files.c:279
#, c-format
-msgid "Missing ')' in %s(%s"
+msgid "Invalid %s token: %s"
msgstr ""
-#: build/files.c:292 build/files.c:467
-#, c-format
-msgid "Invalid %s token: %s"
+#: ../build/files.c:340
+msgid "No files after %%defattr(): %s"
msgstr ""
-#: build/files.c:341
+#: ../build/files.c:368
#, c-format
-msgid "Non-white space follows %s(): %s"
+msgid "Bad %s() mode spec: %s"
msgstr ""
-#: build/files.c:379
+#: ../build/files.c:386
#, c-format
-msgid "Bad syntax: %s(%s)"
+msgid "Bad %s() dirmode spec: %s"
msgstr ""
-#: build/files.c:389
-#, c-format
-msgid "Bad mode spec: %s(%s)"
+#: ../build/files.c:441
+msgid "Bad %%config() syntax: %s"
msgstr ""
-#: build/files.c:401
-#, c-format
-msgid "Bad dirmode spec: %s(%s)"
+#: ../build/files.c:459
+msgid "Invalid %%config token: %s"
+msgstr ""
+
+#: ../build/files.c:482 ../build/files.c:494 ../build/files.c:507
+msgid "Bad %%lang() syntax: %s"
msgstr ""
-#: build/files.c:525
-msgid "Unusual locale length: \"%.*s\" in %%lang(%s)"
+#: ../build/files.c:513
+msgid "%%lang() entries are 2 characters: %s"
msgstr ""
-#: build/files.c:535
-msgid "Duplicate locale %.*s in %%lang(%s)"
+#: ../build/files.c:519
+msgid "Only one entry in %%lang(): %s"
msgstr ""
-#: build/files.c:630
+#: ../build/files.c:610
msgid "Hit limit for %%docdir"
msgstr ""
-#: build/files.c:636
+#: ../build/files.c:616
msgid "Only one arg for %%docdir"
msgstr ""
-#. We already got a file -- error
-#: build/files.c:661
+#: ../build/files.c:642
#, c-format
msgid "Two files on one line: %s"
msgstr ""
-#: build/files.c:674
+#: ../build/files.c:655
#, c-format
msgid "File must begin with \"/\": %s"
msgstr ""
-#: build/files.c:686
+#: ../build/files.c:667
msgid "Can't mix special %%doc with other forms: %s"
msgstr ""
-#: build/files.c:772
+#: ../build/files.c:749
#, c-format
msgid "File listed twice: %s"
msgstr ""
-#: build/files.c:865
-#, c-format
-msgid "Symlink points to BuildRoot: %s -> %s"
-msgstr ""
-
-#: build/files.c:945
+#: ../build/files.c:908
#, c-format
msgid "File doesn't match prefix (%s): %s"
msgstr ""
-#: build/files.c:955
+#: ../build/files.c:918 ../build/files.c:1035
#, c-format
msgid "File not found: %s"
msgstr ""
-#: build/files.c:998
+#: ../build/files.c:963
#, c-format
msgid "Bad owner/group: %s\n"
msgstr ""
-#: build/files.c:1012
+#: ../build/files.c:968
#, c-format
-msgid "File %4d: %07o %s.%s\t %s\n"
+msgid "File %d: %s\n"
msgstr ""
-#: build/files.c:1086
+#: ../build/files.c:1019
#, c-format
msgid "File needs leading \"/\": %s"
msgstr ""
-#: build/files.c:1154
-msgid "Could not open %%files file %s: %s"
+#: ../build/files.c:1079
+msgid "Could not open %%files file: %s"
msgstr ""
-#: build/files.c:1161 build/pack.c:481
+#: ../build/files.c:1085 ../build/pack.c:381
#, c-format
msgid "line: %s"
msgstr ""
-#: build/files.c:1504 build/parsePrep.c:30
+#: ../build/files.c:1412 ../build/parsePrep.c:41
#, c-format
msgid "Bad owner/group: %s"
msgstr ""
-#. XXX this error message is probably not seen.
-#: build/files.c:1559
+#: ../build/files.c:1467
#, c-format
-msgid "Couldn't exec %s: %s"
+msgid "Couldn't exec %s"
msgstr ""
-#: build/files.c:1564
+#: ../build/files.c:1471
#, c-format
-msgid "Couldn't fork %s: %s"
+msgid "Couldn't fork %s"
msgstr ""
-#: build/files.c:1646
+#: ../build/files.c:1521
#, c-format
msgid "%s failed"
msgstr ""
-#: build/files.c:1650
+#: ../build/files.c:1525
#, c-format
msgid "failed to write all data to %s"
msgstr ""
-#: build/files.c:1739
-#, c-format
-msgid "Finding %s: (using %s)...\n"
+#: ../build/files.c:1559
+msgid "Finding provides...\n"
msgstr ""
-#: build/files.c:1767 build/files.c:1776
-#, c-format
-msgid "Failed to find %s:"
+#: ../build/files.c:1566
+msgid "Failed to find provides"
msgstr ""
-#: build/files.c:1882
-#, c-format
-msgid "Processing files: %s-%s-%s\n"
+#: ../build/files.c:1586
+msgid "Finding requires...\n"
msgstr ""
-#: build/names.c:41 build/names.c:73
-msgid "RPMERR_INTERNAL: Hit limit in getUname()\n"
+#: ../build/files.c:1593
+msgid "Failed to find requires"
msgstr ""
-#: build/names.c:106 build/names.c:138
-msgid "RPMERR_INTERNAL: Hit limit in getGname()\n"
+#: ../build/files.c:1628
+msgid "Provides:"
msgstr ""
-#: build/names.c:176
-#, c-format
-msgid "Could not canonicalize hostname: %s\n"
+#: ../build/files.c:1646
+msgid "Prereqs:"
msgstr ""
-#: build/pack.c:132
-#, c-format
-msgid "Could not generate output filename for package %s: %s\n"
+#: ../build/files.c:1660
+msgid "Requires:"
msgstr ""
-#: build/pack.c:149
+#: ../build/files.c:1685
#, c-format
-msgid "cannot create %s: %s\n"
+msgid "Processing files: %s\n"
msgstr ""
-#: build/pack.c:186
-#, c-format
-msgid "readRPM: open %s: %s\n"
+#: ../build/names.c:35 ../build/names.c:69
+msgid "RPMERR_INTERNAL: Hit limit in getUname()\n"
msgstr ""
-#: build/pack.c:196
-#, c-format
-msgid "readRPM: read %s: %s\n"
+#: ../build/names.c:104 ../build/names.c:138
+msgid "RPMERR_INTERNAL: Hit limit in getGname()\n"
msgstr ""
-#: build/pack.c:217
+#: ../build/names.c:176
#, c-format
-msgid "readRPM: %s is not an RPM package\n"
+msgid "Could not canonicalize hostname: %s\n"
msgstr ""
-#: build/pack.c:223
+#: ../build/pack.c:141
#, c-format
-msgid "readRPM: reading header from %s\n"
+msgid "Could not generate output filename for package %s: %s\n"
msgstr ""
-#: build/pack.c:281
+#: ../build/pack.c:203
msgid "Bad CSA data"
msgstr ""
-#: build/pack.c:316
+#: ../build/pack.c:226
#, c-format
-msgid "Could not open %s: %s\n"
+msgid "Could not open %s\n"
msgstr ""
-#: build/pack.c:348
+#: ../build/pack.c:258 ../build/pack.c:301
#, c-format
msgid "Unable to write package: %s"
msgstr ""
-#: build/pack.c:363
+#: ../build/pack.c:291
#, c-format
-msgid "Generating signature: %d\n"
+msgid "Unable to read sigtarget: %s"
msgstr ""
-#: build/pack.c:379
+#: ../build/pack.c:316
#, c-format
-msgid "Unable to open sigtarget %s: %s"
-msgstr ""
-
-#: build/pack.c:389
-#, c-format
-msgid "Unable to read sigtarget %s: %s"
-msgstr ""
-
-#: build/pack.c:399
-#, c-format
-msgid "Unable to write package %s: %s"
+msgid "Wrote: %s\n"
msgstr ""
-#: build/pack.c:414
+#: ../build/pack.c:334
#, c-format
-msgid "Wrote: %s\n"
+msgid "cpio failed on file %s: %s"
msgstr ""
-#: build/pack.c:430
+#: ../build/pack.c:337
#, c-format
-msgid "create archive failed on file %s: %s"
+msgid "cpio failed on file %s: %d"
msgstr ""
-#: build/pack.c:449
+#: ../build/pack.c:351
#, c-format
msgid "cpio_copy write failed: %s"
msgstr ""
-#: build/pack.c:456
+#: ../build/pack.c:358
#, c-format
msgid "cpio_copy read failed: %s"
msgstr ""
-#: build/pack.c:536
+#: ../build/pack.c:437
#, c-format
msgid "Could not open PreIn file: %s"
msgstr ""
-#: build/pack.c:543
+#: ../build/pack.c:444
#, c-format
msgid "Could not open PreUn file: %s"
msgstr ""
-#: build/pack.c:550
+#: ../build/pack.c:451
#, c-format
msgid "Could not open PostIn file: %s"
msgstr ""
-#: build/pack.c:557
+#: ../build/pack.c:458
#, c-format
msgid "Could not open PostUn file: %s"
msgstr ""
-#: build/pack.c:565
+#: ../build/pack.c:466
#, c-format
msgid "Could not open VerifyScript file: %s"
msgstr ""
-#: build/pack.c:580
+#: ../build/pack.c:482
#, c-format
msgid "Could not open Trigger script file: %s"
msgstr ""
-#: build/parseBuildInstallClean.c:27
+#: ../build/parseBuildInstallClean.c:28
#, c-format
msgid "line %d: second %s"
msgstr ""
-#: build/parseChangelog.c:103
+#: ../build/parseChangelog.c:102
msgid "%%changelog entries must start with *"
msgstr ""
-#: build/parseChangelog.c:111
+#: ../build/parseChangelog.c:110
msgid "incomplete %%changelog entry"
msgstr ""
-#: build/parseChangelog.c:126
+#: ../build/parseChangelog.c:125
msgid "bad date in %%changelog: %s"
msgstr ""
-#: build/parseChangelog.c:131
+#: ../build/parseChangelog.c:130
msgid "%%changelog not in decending chronological order"
msgstr ""
-#: build/parseChangelog.c:139 build/parseChangelog.c:150
+#: ../build/parseChangelog.c:138 ../build/parseChangelog.c:149
msgid "missing name in %%changelog"
msgstr ""
-#: build/parseChangelog.c:157
+#: ../build/parseChangelog.c:156
msgid "no description in %%changelog"
msgstr ""
-#: build/parseDescription.c:33
+#: ../build/parseDescription.c:35
msgid "line %d: Error parsing %%description: %s"
msgstr ""
-#: build/parseDescription.c:46 build/parseFiles.c:40 build/parseScript.c:168
+#: ../build/parseDescription.c:48 ../build/parseFiles.c:43
+#: ../build/parseScript.c:140
#, c-format
msgid "line %d: Bad option %s: %s"
msgstr ""
-#: build/parseDescription.c:59 build/parseFiles.c:53 build/parseScript.c:181
+#: ../build/parseDescription.c:62 ../build/parseFiles.c:57
+#: ../build/parseScript.c:154
#, c-format
msgid "line %d: Too many names: %s"
msgstr ""
-#: build/parseDescription.c:69 build/parseFiles.c:63 build/parseScript.c:191
+#: ../build/parseDescription.c:72 ../build/parseFiles.c:67
+#: ../build/parseScript.c:164
#, c-format
msgid "line %d: Package does not exist: %s"
msgstr ""
-#: build/parseDescription.c:81
+#: ../build/parseDescription.c:84
#, c-format
msgid "line %d: Second description"
msgstr ""
-#: build/parseFiles.c:27
+#: ../build/parseFiles.c:30
msgid "line %d: Error parsing %%files: %s"
msgstr ""
-#: build/parseFiles.c:71
+#: ../build/parseFiles.c:75
msgid "line %d: Second %%files list"
msgstr ""
-#: build/parsePreamble.c:145
+#: ../build/parsePreamble.c:155
#, c-format
msgid "Architecture is excluded: %s"
msgstr ""
-#: build/parsePreamble.c:150
+#: ../build/parsePreamble.c:160
#, c-format
msgid "Architecture is not included: %s"
msgstr ""
-#: build/parsePreamble.c:155
+#: ../build/parsePreamble.c:165
#, c-format
msgid "OS is excluded: %s"
msgstr ""
-#: build/parsePreamble.c:160
+#: ../build/parsePreamble.c:170
#, c-format
msgid "OS is not included: %s"
msgstr ""
-#: build/parsePreamble.c:174
+#: ../build/parsePreamble.c:206
#, c-format
msgid "%s field must be present in package: %s"
msgstr ""
-#: build/parsePreamble.c:199
+#: ../build/parsePreamble.c:248
#, c-format
msgid "Duplicate %s entries in package: %s"
msgstr ""
-#: build/parsePreamble.c:246
-#, c-format
-msgid "Unable to open icon %s: %s"
-msgstr ""
-
-#: build/parsePreamble.c:264
+#: ../build/parsePreamble.c:292 ../build/parsePreamble.c:299
#, c-format
-msgid "Unable to read icon %s: %s"
+msgid "Unable to read icon: %s"
msgstr ""
-#: build/parsePreamble.c:277
+#: ../build/parsePreamble.c:309
#, c-format
msgid "Unknown icon type: %s"
msgstr ""
-#: build/parsePreamble.c:339
+#: ../build/parsePreamble.c:340
#, c-format
msgid "line %d: Malformed tag: %s"
msgstr ""
#. Empty field
-#: build/parsePreamble.c:347
+#: ../build/parsePreamble.c:348
#, c-format
msgid "line %d: Empty tag: %s"
msgstr ""
-#: build/parsePreamble.c:370 build/parsePreamble.c:377
-#, c-format
-msgid "line %d: Illegal char '-' in %s: %s"
-msgstr ""
-
-#: build/parsePreamble.c:441 build/parseSpec.c:366
+#: ../build/parsePreamble.c:399
#, c-format
-msgid "BuildRoot can not be \"/\": %s"
+msgid "line %d: BuildRoot can not be \"/\": %s"
msgstr ""
-#: build/parsePreamble.c:454
+#: ../build/parsePreamble.c:412
#, c-format
msgid "line %d: Prefixes must not end with \"/\": %s"
msgstr ""
-#: build/parsePreamble.c:466
+#: ../build/parsePreamble.c:424
#, c-format
msgid "line %d: Docdir must begin with '/': %s"
msgstr ""
-#: build/parsePreamble.c:478
+#: ../build/parsePreamble.c:435
#, c-format
-msgid "line %d: Epoch/Serial field must be a number: %s"
+msgid "line %d: Serial field must be a number: %s"
msgstr ""
-#: build/parsePreamble.c:541
+#: ../build/parsePreamble.c:499
#, c-format
msgid "line %d: Bad BuildArchitecture format: %s"
msgstr ""
-#: build/parsePreamble.c:551
+#: ../build/parsePreamble.c:509
#, c-format
msgid "Internal error: Bogus tag %d"
msgstr ""
-#: build/parsePreamble.c:689
+#: ../build/parsePreamble.c:652
#, c-format
msgid "Bad package specification: %s"
msgstr ""
-#: build/parsePreamble.c:695
+#: ../build/parsePreamble.c:658
#, c-format
msgid "Package already exists: %s"
msgstr ""
-#: build/parsePreamble.c:722
+#: ../build/parsePreamble.c:685
#, c-format
msgid "line %d: Unknown tag: %s"
msgstr ""
-#: build/parsePreamble.c:747
+#: ../build/parsePreamble.c:710
msgid "Spec file can't use BuildRoot"
msgstr ""
-#: build/parsePrep.c:26
+#: ../build/parsePrep.c:37
#, c-format
msgid "Bad source: %s: %s"
msgstr ""
-#: build/parsePrep.c:53
+#: ../build/parsePrep.c:63
#, c-format
msgid "No patch number %d"
msgstr ""
-#: build/parsePrep.c:134
+#: ../build/parsePrep.c:127
#, c-format
msgid "No source number %d"
msgstr ""
-#: build/parsePrep.c:153
-#, c-format
-msgid "Couldn't download nosource %s: %s"
-msgstr ""
-
-#: build/parsePrep.c:219
+#: ../build/parsePrep.c:180
msgid "Error parsing %%setup: %s"
msgstr ""
-#: build/parsePrep.c:234
+#: ../build/parsePrep.c:195
msgid "line %d: Bad arg to %%setup %c: %s"
msgstr ""
-#: build/parsePrep.c:252
+#: ../build/parsePrep.c:216
msgid "line %d: Bad %%setup option %s: %s"
msgstr ""
-#: build/parsePrep.c:379
+#: ../build/parsePrep.c:334
msgid "line %d: Need arg to %%patch -b: %s"
msgstr ""
-#: build/parsePrep.c:387
+#: ../build/parsePrep.c:342
msgid "line %d: Need arg to %%patch -z: %s"
msgstr ""
-#: build/parsePrep.c:399
+#: ../build/parsePrep.c:354
msgid "line %d: Need arg to %%patch -p: %s"
msgstr ""
-#: build/parsePrep.c:405
+#: ../build/parsePrep.c:360
msgid "line %d: Bad arg to %%patch -p: %s"
msgstr ""
-#: build/parsePrep.c:412
+#: ../build/parsePrep.c:367
msgid "Too many patches!"
msgstr ""
-#: build/parsePrep.c:416
+#: ../build/parsePrep.c:371
msgid "line %d: Bad arg to %%patch: %s"
msgstr ""
-#: build/parsePrep.c:452
+#: ../build/parsePrep.c:409
msgid "line %d: second %%prep"
msgstr ""
-#: build/parseReqs.c:91
+#: ../build/parseReqs.c:46
#, c-format
-msgid ""
-"line %d: Dependency tokens must begin with alpha-numeric, '_' or '/': %s"
+msgid "line %d: No file names in Conflicts: %s"
msgstr ""
-#: build/parseReqs.c:102
+#: ../build/parseReqs.c:77
#, c-format
-msgid "line %d: File name not permitted: %s"
+msgid "line %d: No versions on file names in %s: %s"
msgstr ""
-#: build/parseReqs.c:134
+#: ../build/parseReqs.c:83
#, c-format
-msgid "line %d: Versioned file name not permitted: %s"
+msgid "line %d: No versions in PreReq: %s"
msgstr ""
-#: build/parseReqs.c:146
+#: ../build/parseReqs.c:95
#, c-format
-msgid "line %d: Version not permitted: %s"
+msgid "line %d: Version required in %s: %s"
msgstr ""
-#: build/parseReqs.c:172
+#: ../build/parseReqs.c:123
#, c-format
-msgid "line %d: Version required: %s"
+msgid "line %d: No file names in %s: %s"
msgstr ""
-#: build/parseScript.c:136
+#: ../build/parseReqs.c:131
+#, c-format
+msgid "line %d: %s: tokens must begin with alpha-numeric: %s"
+msgstr ""
+
+#: ../build/parseScript.c:108
#, c-format
msgid "line %d: triggers must have --: %s"
msgstr ""
-#: build/parseScript.c:146 build/parseScript.c:209
+#: ../build/parseScript.c:118 ../build/parseScript.c:182
#, c-format
msgid "line %d: Error parsing %s: %s"
msgstr ""
-#: build/parseScript.c:156
+#: ../build/parseScript.c:128
#, c-format
msgid "line %d: script program must begin with '/': %s"
msgstr ""
-#: build/parseScript.c:200
+#: ../build/parseScript.c:173
#, c-format
msgid "line %d: Second %s"
msgstr ""
-#: build/parseSpec.c:129
+#: ../build/parseSpec.c:125
#, c-format
-msgid "line %d: %s"
+msgid "Unable to open: %s\n"
msgstr ""
-#. XXX Fstrerror
-#: build/parseSpec.c:179
-#, c-format
-msgid "Unable to open %s: %s\n"
-msgstr ""
-
-#: build/parseSpec.c:191
+#: ../build/parseSpec.c:137
msgid "Unclosed %%if"
msgstr ""
-#: build/parseSpec.c:252
+#: ../build/parseSpec.c:184
#, c-format
-msgid "%s:%d: parseExpressionBoolean returns %d"
+msgid "line %d: %s"
msgstr ""
#. Got an else with no %if !
-#: build/parseSpec.c:260
+#: ../build/parseSpec.c:209
msgid "%s:%d: Got a %%else with no if"
msgstr ""
#. Got an end with no %if !
-#: build/parseSpec.c:271
+#: ../build/parseSpec.c:219
msgid "%s:%d: Got a %%endif with no if"
msgstr ""
-#: build/parseSpec.c:285 build/parseSpec.c:294
+#: ../build/parseSpec.c:231 ../build/parseSpec.c:240
msgid "malformed %%include statement"
msgstr ""
-#: build/parseSpec.c:461
+#: ../build/parseSpec.c:314
+#, c-format
+msgid "Timecheck value must be an integer: %s"
+msgstr ""
+
+#: ../build/parseSpec.c:397
msgid "No buildable architectures"
msgstr ""
-#: build/parseSpec.c:509
+#: ../build/parseSpec.c:425
msgid "Package has no %%description: %s"
msgstr ""
-#: build/spec.c:31
+#: ../build/spec.c:30
#, c-format
msgid "archive = %s, fs = %s\n"
msgstr ""
-#: build/spec.c:237
+#: ../build/spec.c:218
#, c-format
msgid "line %d: Bad number: %s"
msgstr ""
-#: build/spec.c:243
+#: ../build/spec.c:224
#, c-format
msgid "line %d: Bad no%s number: %d"
msgstr ""
-#: build/spec.c:301
+#: ../build/spec.c:282
#, c-format
msgid "line %d: Bad %s number: %s\n"
msgstr ""
-#: lib/cpio.c:330
+#: ../lib/cpio.c:525
#, c-format
-msgid "can't rename %s to %s: %s\n"
-msgstr ""
-
-#: lib/cpio.c:336
-#, c-format
-msgid "can't unlink %s: %s\n"
-msgstr ""
-
-#: lib/cpio.c:527
-#, c-format
-msgid "getNextHeader: %s\n"
-msgstr ""
-
-#: lib/cpio.c:992
-#, c-format
-msgid "(error 0x%x)"
-msgstr ""
-
-#: lib/cpio.c:995
-msgid "Bad magic"
-msgstr ""
-
-#: lib/cpio.c:996
-msgid "Bad/unreadable header"
-msgstr ""
-
-#: lib/cpio.c:1014
-msgid "Header size too big"
-msgstr ""
-
-#: lib/cpio.c:1015
-msgid "Unknown file type"
-msgstr ""
-
-#: lib/cpio.c:1016
-msgid "Missing hard link"
-msgstr ""
-
-#: lib/cpio.c:1017
-msgid "Internal error"
+msgid "error %d reading header: %s\n"
msgstr ""
-#: lib/cpio.c:1026
-msgid " failed - "
-msgstr ""
-
-#: lib/dbindex.c:35
+#: ../lib/dbindex.c:16
#, c-format
-msgid "cannot open file %s: %s"
+msgid "cannot open file %s: "
msgstr ""
-#: lib/dbindex.c:87
+#: ../lib/dbindex.c:43
#, c-format
msgid "error getting record %s from %s"
msgstr ""
-#: lib/dbindex.c:114
+#: ../lib/dbindex.c:71
#, c-format
msgid "error storing record %s into %s"
msgstr ""
-#: lib/dbindex.c:121
+#: ../lib/dbindex.c:78
#, c-format
msgid "error removing record %s into %s"
msgstr ""
-#. XXX legacy epoch-less requires/conflicts compatibility
-#: lib/depends.c:417
+#: ../lib/depends.c:374 ../lib/depends.c:529
#, c-format
-msgid ""
-"the \"B\" dependency needs an epoch (assuming same as \"A\")\n"
-"\tA %s\tB %s\n"
-msgstr ""
-
-#: lib/depends.c:446
-#, c-format
-msgid " %s A %s\tB %s\n"
-msgstr ""
-
-#: lib/depends.c:538
-msgid "dbrecMatchesDepFlags() failed to read header"
-msgstr ""
-
-#: lib/depends.c:784
-#, c-format
-msgid "%s: %s satisfied by added file list.\n"
-msgstr ""
-
-#: lib/depends.c:823
-#, c-format
-msgid "%s: %s satisfied by added package.\n"
+msgid "cannot read header at %d for dependency check"
msgstr ""
-#: lib/depends.c:840
+#: ../lib/depends.c:439
#, c-format
-msgid "%s: %s satisfied by added provide.\n"
+msgid "dependencies: looking for %s\n"
msgstr ""
-#: lib/depends.c:871
+#: ../lib/depends.c:622
#, c-format
-msgid "%s: %s satisfied by rpmrc provides.\n"
+msgid "package %s require not satisfied: %s\n"
msgstr ""
-#: lib/depends.c:899
+#: ../lib/depends.c:665
#, c-format
-msgid "%s: %s satisfied by db file lists.\n"
+msgid "package %s conflicts: %s\n"
msgstr ""
-#: lib/depends.c:921
-#, c-format
-msgid "%s: %s satisfied by db provides.\n"
+#: ../lib/depends.c:764
+msgid "dbrecMatchesDepFlags() failed to read header"
msgstr ""
-#: lib/depends.c:943
+#: ../lib/depends.c:816
#, c-format
-msgid "%s: %s satisfied by db packages.\n"
+msgid "loop in prerequisite chain: %s"
msgstr ""
-#: lib/depends.c:956
+#: ../lib/falloc.c:128
#, c-format
-msgid "%s: %s satisfied by rpmlib version.\n"
+msgid "free list corrupt (%d)- contact support@redhat.com\n"
msgstr ""
-#: lib/depends.c:966
-#, c-format
-msgid "%s: %s unsatisfied.\n"
+#: ../lib/formats.c:99 ../lib/formats.c:116 ../lib/formats.c:136
+#: ../lib/formats.c:168 ../lib/header.c:1925 ../lib/header.c:1941
+#: ../lib/header.c:1961
+msgid "(not a number)"
msgstr ""
-#. requirements are not satisfied.
-#: lib/depends.c:1014
+#: ../lib/fs.c:42
#, c-format
-msgid "package %s require not satisfied: %s\n"
+msgid "mntctl() failed to return fugger size: %s"
msgstr ""
-#. conflicts exist.
-#: lib/depends.c:1076
+#: ../lib/fs.c:76 ../lib/fs.c:238
#, c-format
-msgid "package %s conflicts: %s\n"
+msgid "failed to stat %s: %s"
msgstr ""
-#: lib/depends.c:1131 lib/depends.c:1430
+#: ../lib/fs.c:117
#, c-format
-msgid "cannot read header at %d for dependency check"
+msgid "failed to open %s: %s"
msgstr ""
-#: lib/depends.c:1226
+#: ../lib/fs.c:259
#, c-format
-msgid "loop in prerequisite chain: %s"
+msgid "file %s is on an unknown device"
msgstr ""
-#: lib/falloc.c:124
+#: ../lib/header.c:666
#, c-format
-msgid ""
-"free list corrupt (%u)- please run\n"
-"\t\"rpm --rebuilddb\"\n"
-"More information is available from http://www.rpm.org or the "
-"rpm-list@redhat.com mailing list\n"
-"if \"rpm --rebuilddb\" fails to correct the problem.\n"
+msgid "Data type %d not supprted\n"
msgstr ""
-#: lib/formats.c:69 lib/formats.c:87 lib/formats.c:108 lib/formats.c:141
-#: lib/header.c:2189 lib/header.c:2206 lib/header.c:2226
-msgid "(not a number)"
+#. This should not be allowed
+#: ../lib/header.c:878
+msgid "grabData() RPM_STRING_TYPE count must be 1.\n"
msgstr ""
-#: lib/fs.c:56
+#: ../lib/header.c:908
#, c-format
-msgid "mntctl() failed to return fugger size: %s"
+msgid "Data type %d not supported\n"
msgstr ""
-#: lib/fs.c:91 lib/fs.c:261
+#: ../lib/header.c:967
#, c-format
-msgid "failed to stat %s: %s"
+msgid "Bad count for headerAddEntry(): %d\n"
msgstr ""
-#: lib/fs.c:127
-msgid "getting list of mounted filesystems\n"
+#: ../lib/header.c:1281
+msgid "? expected in expression"
msgstr ""
-#: lib/fs.c:132
-#, c-format
-msgid "failed to open %s: %s"
+#: ../lib/header.c:1288
+msgid "{ expected after ? in expression"
msgstr ""
-#: lib/fs.c:283
-#, c-format
-msgid "file %s is on an unknown device"
+#: ../lib/header.c:1298 ../lib/header.c:1330
+msgid "} expected in expression"
msgstr ""
-#. This should not be allowed
-#: lib/header.c:218
-msgid "grabData() RPM_STRING_TYPE count must be 1.\n"
+#: ../lib/header.c:1305
+msgid ": expected following ? subexpression"
msgstr ""
-#: lib/header.c:249 lib/header.c:812
-#, c-format
-msgid "Data type %d not supported\n"
+#: ../lib/header.c:1318
+msgid "{ expected after : in expression"
msgstr ""
-#: lib/header.c:1171
-#, c-format
-msgid "Bad count for headerAddEntry(): %d\n"
+#: ../lib/header.c:1337
+msgid "| expected at end of expression"
msgstr ""
-#: lib/header.c:1580
+#: ../lib/header.c:1431
#, c-format
msgid "missing { after %"
msgstr ""
-#: lib/header.c:1608
+#: ../lib/header.c:1459
msgid "missing } after %{"
msgstr ""
-#: lib/header.c:1620
+#: ../lib/header.c:1471
msgid "empty tag format"
msgstr ""
-#: lib/header.c:1630
+#: ../lib/header.c:1481
msgid "empty tag name"
msgstr ""
-#: lib/header.c:1645
+#: ../lib/header.c:1496
msgid "unknown tag"
msgstr ""
-#: lib/header.c:1671
+#: ../lib/header.c:1522
msgid "] expected at end of array"
msgstr ""
-#: lib/header.c:1687
+#: ../lib/header.c:1538
msgid "unexpected ]"
msgstr ""
-#: lib/header.c:1689
+#: ../lib/header.c:1540
msgid "unexpected }"
msgstr ""
-#: lib/header.c:1743
-msgid "? expected in expression"
+#: ../lib/header.c:1615 ../lib/header.c:1621 ../lib/header.c:1804
+msgid "(none)"
msgstr ""
-#: lib/header.c:1750
-msgid "{ expected after ? in expression"
+#: ../lib/header.c:1715
+msgid "(unknown type)"
msgstr ""
-#: lib/header.c:1760 lib/header.c:1795
-msgid "} expected in expression"
+#: ../lib/install.c:96
+msgid "source package expected, binary found"
msgstr ""
-#: lib/header.c:1768
-msgid ": expected following ? subexpression"
+#: ../lib/install.c:168
+msgid "package is not relocatable"
msgstr ""
-#: lib/header.c:1782
-msgid "{ expected after : in expression"
+#: ../lib/install.c:172
+msgid "package has multiple relocatable components"
msgstr ""
-#: lib/header.c:1803
-msgid "| expected at end of expression"
+#: ../lib/install.c:195
+#, c-format
+msgid "path %s is not relocatable"
msgstr ""
-#: lib/header.c:1972
-msgid "(unknown type)"
+#: ../lib/install.c:277
+#, c-format
+msgid "relocating %s to %s\n"
msgstr ""
-#: lib/install.c:142 lib/uninstall.c:194
+#: ../lib/install.c:325
#, c-format
-msgid " file: %s action: %s\n"
+msgid "not installing %s -- linguas\n"
msgstr ""
-#: lib/install.c:160
+#: ../lib/install.c:347
#, c-format
msgid "user %s does not exist - using root"
msgstr ""
-#: lib/install.c:168
+#: ../lib/install.c:355
#, c-format
msgid "group %s does not exist - using root"
msgstr ""
-#: lib/install.c:196
-msgid "%%instchangelog value in macro file should be a number, but isn't"
-msgstr ""
-
-#. this would probably be a good place to check if disk space
-#. was used up - if so, we should return a different error
-#: lib/install.c:362
-#, c-format
-msgid "unpacking of archive failed%s%s: %s"
-msgstr ""
-
-#: lib/install.c:363
-msgid " on file "
+#: ../lib/install.c:379
+msgid "instchangelog value in rpmrc should be a number, but isn't"
msgstr ""
-#: lib/install.c:406
-msgid "installing a source package\n"
-msgstr ""
-
-#: lib/install.c:426
-#, c-format
-msgid "cannot create sourcedir %s"
+#: ../lib/install.c:455 ../lib/install.c:735
+msgid "stopping install as we're running --test\n"
msgstr ""
-#: lib/install.c:432 lib/install.c:462
+#: ../lib/install.c:486
#, c-format
-msgid "cannot write to %s"
+msgid "package %s-%s-%s is for a different architecture"
msgstr ""
-#: lib/install.c:436
+#: ../lib/install.c:493
#, c-format
-msgid "sources in: %s\n"
+msgid "package %s-%s-%s is for a different operating system"
msgstr ""
-#: lib/install.c:456
+#: ../lib/install.c:505
#, c-format
-msgid "cannot create specdir %s"
+msgid "package: %s-%s-%s files test = %d\n"
msgstr ""
-#: lib/install.c:466
+#. no matches
+#: ../lib/install.c:569
#, c-format
-msgid "spec file in: %s\n"
+msgid "package %s is now obsolete and will be removed\n"
msgstr ""
-#: lib/install.c:500 lib/install.c:528
-msgid "source package contains no .spec file"
-msgstr ""
-
-#: lib/install.c:550
+#: ../lib/install.c:680
#, c-format
-msgid "renaming %s to %s\n"
+msgid "file %s in netshared path\n"
msgstr ""
-#: lib/install.c:552 lib/install.c:831 lib/uninstall.c:27
+#: ../lib/install.c:697
#, c-format
-msgid "rename of %s to %s failed: %s"
-msgstr ""
-
-#: lib/install.c:643
-msgid "source package expected, binary found"
+msgid "%s exists - creating with alternate name\n"
msgstr ""
-#: lib/install.c:700
+#: ../lib/install.c:702
#, c-format
-msgid "package: %s-%s-%s files test = %d\n"
+msgid "%s exists - backing up\n"
msgstr ""
-#: lib/install.c:761
-msgid "stopping install as we're running --test\n"
-msgstr ""
-
-#: lib/install.c:766
+#: ../lib/install.c:741
msgid "running preinstall script (if any)\n"
msgstr ""
-#: lib/install.c:791
+#: ../lib/install.c:772
#, c-format
msgid "warning: %s created as %s"
msgstr ""
-#: lib/install.c:827
+#: ../lib/install.c:806
#, c-format
msgid "warning: %s saved as %s"
msgstr ""
-#: lib/install.c:901
-msgid "running postinstall scripts (if any)\n"
-msgstr ""
-
-#: lib/lookup.c:35
-#, c-format
-msgid "cannot read header at %d for lookup"
-msgstr ""
-
-#: lib/macro.c:161
+#: ../lib/install.c:810 ../lib/install.c:1520 ../lib/uninstall.c:590
#, c-format
-msgid "======================== active %d empty %d\n"
-msgstr ""
-
-#. XXX just in case
-#: lib/macro.c:256
-#, c-format
-msgid "%3d>%*s(empty)"
-msgstr ""
-
-#: lib/macro.c:291
-#, c-format
-msgid "%3d<%*s(empty)\n"
-msgstr ""
-
-#: lib/macro.c:470
-msgid "Macro %%%s has unterminated body"
-msgstr ""
-
-#: lib/macro.c:496
-msgid "Macro %%%s has illegal name (%%define)"
-msgstr ""
-
-#: lib/macro.c:502
-msgid "Macro %%%s has unterminated opts"
-msgstr ""
-
-#: lib/macro.c:507
-msgid "Macro %%%s has empty body"
+msgid "rename of %s to %s failed: %s"
msgstr ""
-#: lib/macro.c:512
-msgid "Macro %%%s failed to expand"
+#: ../lib/install.c:911
+msgid "running postinstall script (if any)\n"
msgstr ""
-#: lib/macro.c:537
-msgid "Macro %%%s has illegal name (%%undefine)"
+#: ../lib/install.c:932
+msgid "removing old versions of package\n"
msgstr ""
-#: lib/macro.c:614
-msgid "Macro %%%s (%s) was not used below level %d"
-msgstr ""
-
-#: lib/macro.c:711
+#. this would probably be a good place to check if disk space
+#. was used up - if so, we should return a different error
+#: ../lib/install.c:1023
#, c-format
-msgid "Unknown option %c in %s(%s)"
+msgid "unpacking of archive failed on file %s: %d: %s"
msgstr ""
-#: lib/macro.c:891
+#: ../lib/install.c:1061
#, c-format
-msgid "Recursion depth(%d) greater than max(%d)"
+msgid "package %s-%s-%s is already installed"
msgstr ""
-#: lib/macro.c:957 lib/macro.c:973
+#: ../lib/install.c:1109
#, c-format
-msgid "Unterminated %c: %s"
-msgstr ""
-
-#: lib/macro.c:1013
-msgid "A %% is followed by an unparseable macro"
+msgid "%s skipped due to missingok flag\n"
msgstr ""
-#: lib/macro.c:1139
-msgid "Macro %%%.*s not found, skipping"
+#: ../lib/install.c:1127
+msgid "\tfile type on disk is different then package - saving\n"
msgstr ""
-#: lib/macro.c:1220
-msgid "Target buffer overflow"
+#: ../lib/install.c:1130
+msgid ""
+"\tfile type in database is different then disk and package file - saving\n"
msgstr ""
-#. XXX Fstrerror
-#: lib/macro.c:1400 lib/macro.c:1406
-#, c-format
-msgid "File %s: %s"
+#: ../lib/install.c:1134
+msgid "\tfile type changed - replacing\n"
msgstr ""
-#: lib/macro.c:1409
-#, c-format
-msgid "File %s is smaller than %d bytes"
+#: ../lib/install.c:1138
+msgid "\tcan't check file for changes - replacing\n"
msgstr ""
-#: lib/messages.c:55
-msgid "warning: "
+#. assume the file has been removed, don't freak
+#: ../lib/install.c:1150 ../lib/install.c:1160
+msgid "\tfile not present - creating"
msgstr ""
-#: lib/messages.c:64
-msgid "error: "
+#. this config file has never been modified, so
+#. just replace it
+#: ../lib/install.c:1173
+msgid "\told == current, replacing with new version\n"
msgstr ""
-#: lib/messages.c:73
-msgid "fatal error: "
+#. this file is the same in all versions of this package
+#: ../lib/install.c:1180
+msgid "\told == new, keeping\n"
msgstr ""
-#: lib/messages.c:82
-msgid "internal error (rpm bug?): "
+#. the config file on the disk has been modified, but
+#. the ones in the two packages are different. It would
+#. be nice if RPM was smart enough to at least try and
+#. merge the difference ala CVS, but...
+#: ../lib/install.c:1188
+msgid "\tfiles changed too much - backing up\n"
msgstr ""
-#: lib/misc.c:423 lib/misc.c:428 lib/misc.c:434
+#: ../lib/install.c:1250 ../lib/rpmdb.c:310 ../lib/uninstall.c:118
+#: ../lib/uninstall.c:218
#, c-format
-msgid "error creating temporary file %s"
+msgid "cannot read header at %d for uninstall"
msgstr ""
-#: lib/oldheader.c:301
+#: ../lib/install.c:1263 ../lib/uninstall.c:131
#, c-format
-msgid "bad file state: %s"
+msgid "package %s-%s-%s contain shared files\n"
msgstr ""
-#: lib/package.c:237
-msgid "package is a version one package!\n"
-msgstr ""
-
-#: lib/package.c:242
-msgid "old style source package -- I'll do my best\n"
+#: ../lib/install.c:1268 ../lib/uninstall.c:136
+#, c-format
+msgid "package %s contains no files"
msgstr ""
-#: lib/package.c:245
+#: ../lib/install.c:1290 ../lib/uninstall.c:159
#, c-format
-msgid "archive offset is %d\n"
+msgid "file %s is shared\n"
msgstr ""
-#: lib/package.c:256
-msgid "old style binary package\n"
+#: ../lib/install.c:1306
+msgid "\told version already replaced\n"
msgstr ""
-#: lib/package.c:316
-msgid ""
-"only packages with major numbers <= 3 are supported by this version of RPM"
+#: ../lib/install.c:1309
+msgid "\tother version never installed\n"
msgstr ""
-#: lib/problems.c:43
+#: ../lib/install.c:1317
#, c-format
-msgid " is needed by %s-%s-%s\n"
+msgid "%s conflicts with file from %s-%s-%s"
msgstr ""
-#: lib/problems.c:46
+#: ../lib/install.c:1336
#, c-format
-msgid " conflicts with %s-%s-%s\n"
+msgid "%s from %s-%s-%s will be replaced\n"
msgstr ""
-#: lib/problems.c:66
-#, c-format
-msgid "package %s-%s-%s is for a different architecture"
+#: ../lib/install.c:1400
+msgid "installing a source package\n"
msgstr ""
-#: lib/problems.c:71
+#: ../lib/install.c:1416 ../lib/install.c:1421
#, c-format
-msgid "package %s-%s-%s is for a different operating system"
+msgid "cannot write to %s"
msgstr ""
-#: lib/problems.c:76
+#: ../lib/install.c:1425
#, c-format
-msgid "package %s-%s-%s is already installed"
+msgid "sources in: %s\n"
msgstr ""
-#: lib/problems.c:81
+#: ../lib/install.c:1426
#, c-format
-msgid "path %s is not relocateable for package %s-%s-%s"
+msgid "spec file in: %s\n"
msgstr ""
-#: lib/problems.c:86
-#, c-format
-msgid "file %s conflicts between attemped installs of %s-%s-%s and %s-%s-%s"
+#: ../lib/install.c:1459 ../lib/install.c:1498
+msgid "source package contains no .spec file"
msgstr ""
-#: lib/problems.c:92
+#: ../lib/install.c:1518
#, c-format
-msgid ""
-"file %s from install of %s-%s-%s conflicts with file from package %s-%s-%s"
+msgid "renaming %s to %s\n"
msgstr ""
-#: lib/problems.c:98
+#: ../lib/install.c:1634
#, c-format
-msgid "package %s-%s-%s (which is newer than %s-%s-%s) is already installed"
+msgid "package %s-%s-%s (which is newer) is already installed"
msgstr ""
-#: lib/problems.c:104
+#: ../lib/lookup.c:86
#, c-format
-msgid "installing package %s-%s-%s needs %ld%cb on the %s filesystem"
+msgid "cannot read header at %d for lookup"
msgstr ""
-#: lib/problems.c:116
+#: ../lib/macro.c:114
#, c-format
-msgid "unknown error %d encountered while manipulating package %s-%s-%s"
+msgid "======================== active %d empty %d\n"
msgstr ""
-#: lib/query.c:138
+#. XXX just in case
+#: ../lib/macro.c:201
#, c-format
-msgid "error in format: %s\n"
-msgstr ""
-
-#: lib/query.c:181
-msgid "(contains no files)"
-msgstr ""
-
-#: lib/query.c:238
-msgid "normal "
-msgstr ""
-
-#: lib/query.c:240
-msgid "replaced "
-msgstr ""
-
-#: lib/query.c:242
-msgid "not installed "
-msgstr ""
-
-#: lib/query.c:244
-msgid "net shared "
+msgid "%3d>%*s(empty)"
msgstr ""
-#: lib/query.c:246
+#: ../lib/macro.c:236
#, c-format
-msgid "(unknown %3d) "
+msgid "%3d<%*s(empty)\n"
msgstr ""
-#: lib/query.c:250
-msgid "(no state) "
+#: ../lib/macro.c:409
+msgid "Macro %%%s has unterminated body"
msgstr ""
-#: lib/query.c:267 lib/query.c:308
-msgid "package has neither file owner or id lists"
+#: ../lib/macro.c:435
+msgid "Macro %%%s has illegal name (%%define)"
msgstr ""
-#: lib/query.c:421
-#, c-format
-msgid "record number %u\n"
+#: ../lib/macro.c:441
+msgid "Macro %%%s has unterminated opts"
msgstr ""
-#: lib/query.c:425
-msgid "error: could not read database record\n"
+#: ../lib/macro.c:446
+msgid "Macro %%%s has empty body"
msgstr ""
-#. XXX Fstrerror
-#: lib/query.c:471
-#, c-format
-msgid "open of %s failed: %s\n"
+#: ../lib/macro.c:451
+msgid "Macro %%%s failed to expand"
msgstr ""
-#: lib/query.c:489
-msgid "old format source packages cannot be queried\n"
+#: ../lib/macro.c:476
+msgid "Macro %%%s has illegal name (%%undefine)"
msgstr ""
-#: lib/query.c:498 lib/rpminstall.c:231
-#, c-format
-msgid "%s does not appear to be a RPM package\n"
+#: ../lib/macro.c:547
+msgid "Macro %%%s (%s) was not used below level %d"
msgstr ""
-#: lib/query.c:502
+#: ../lib/macro.c:630
#, c-format
-msgid "query of %s failed\n"
+msgid "Unknown option %c in %s(%s)"
msgstr ""
-#: lib/query.c:535
+#: ../lib/macro.c:792
#, c-format
-msgid "query of specfile %s failed, can't parse\n"
-msgstr ""
-
-#: lib/query.c:560
-msgid "could not read database record!\n"
+msgid "Recursion depth(%d) greater than max(%d)"
msgstr ""
-#: lib/query.c:571
+#: ../lib/macro.c:848 ../lib/macro.c:864
#, c-format
-msgid "group %s does not contain any packages\n"
+msgid "Unterminated %c: %s"
msgstr ""
-#: lib/query.c:581
-#, c-format
-msgid "no package triggers %s\n"
+#: ../lib/macro.c:893
+msgid "Empty token"
msgstr ""
-#: lib/query.c:591
-#, c-format
-msgid "no package requires %s\n"
+#: ../lib/macro.c:1015
+msgid "Macro %%%.*s not found, skipping"
msgstr ""
-#: lib/query.c:602
-#, c-format
-msgid "no package provides %s\n"
+#: ../lib/macro.c:1087
+msgid "Target buffer overflow"
msgstr ""
-#: lib/query.c:618
+#: ../lib/macro.c:1201 ../lib/macro.c:1209
#, c-format
-msgid "file %s: %s\n"
+msgid "File %s: %s"
msgstr ""
-#: lib/query.c:621
+#: ../lib/macro.c:1212
#, c-format
-msgid "file %s is not owned by any package\n"
+msgid "File %s is smaller than %d bytes"
msgstr ""
-#: lib/query.c:634
-#, c-format
-msgid "invalid package number: %s\n"
+#: ../lib/messages.c:53
+msgid "warning: "
msgstr ""
-#: lib/query.c:637
-#, c-format
-msgid "package record number: %d\n"
+#: ../lib/messages.c:59
+msgid "error: "
msgstr ""
-#: lib/query.c:640
-#, c-format
-msgid "record %d could not be read\n"
+#: ../lib/messages.c:65
+msgid "fatal error: "
msgstr ""
-#: lib/query.c:652 lib/rpminstall.c:435
-#, c-format
-msgid "package %s is not installed\n"
+#: ../lib/messages.c:72
+msgid "internal error (rpm bug?): "
msgstr ""
-#: lib/query.c:655
+#: ../lib/misc.c:338 ../lib/misc.c:343 ../lib/misc.c:349
#, c-format
-msgid "error looking for package %s\n"
-msgstr ""
-
-#: lib/query.c:677
-msgid "rpmQuery: rpmdbOpen() failed\n"
-msgstr ""
-
-#: lib/query.c:736
-msgid "query package owning file"
-msgstr ""
-
-#: lib/query.c:738
-msgid "query packages in group"
-msgstr ""
-
-#: lib/query.c:740
-msgid "query a package file"
-msgstr ""
-
-#: lib/query.c:744
-msgid "query a spec file"
-msgstr ""
-
-#: lib/query.c:746
-msgid "query the pacakges triggered by the package"
-msgstr ""
-
-#: lib/query.c:748
-msgid "query the packages which require a capability"
-msgstr ""
-
-#: lib/query.c:750
-msgid "query the packages which provide a capability"
-msgstr ""
-
-#: lib/query.c:789
-msgid "list all configuration files"
-msgstr ""
-
-#: lib/query.c:791
-msgid "list all documentation files"
+msgid "error creating temporary file %s"
msgstr ""
-#: lib/query.c:793
-msgid "dump basic file information"
+#: ../lib/oldheader.c:294
+msgid "bad file state: "
msgstr ""
-#: lib/query.c:795
-msgid "list files in package"
+#: ../lib/package.c:51
+msgid "package is a version one package!\n"
msgstr ""
-#: lib/query.c:799
-msgid "use the following query format"
+#: ../lib/package.c:54
+msgid "old style source package -- I'll do my best\n"
msgstr ""
-#: lib/query.c:801
-msgid "substitute i18n sections from the following catalogue"
+#: ../lib/package.c:57
+#, c-format
+msgid "archive offset is %d\n"
msgstr ""
-#: lib/query.c:804
-msgid "display the states of the listed files"
+#: ../lib/package.c:67
+msgid "old style binary package\n"
msgstr ""
-#: lib/query.c:806
-msgid "display a verbose file listing"
+#: ../lib/package.c:98
+msgid ""
+"only packages with major numbers <= 3 are supported by this version of RPM"
msgstr ""
-#: lib/rebuilddb.c:20
+#: ../lib/rebuilddb.c:15
#, c-format
msgid "rebuilding database in rootdir %s\n"
msgstr ""
-#: lib/rebuilddb.c:24 lib/rpmdb.c:249
+#: ../lib/rebuilddb.c:19 ../lib/rpmdb.c:45 ../lib/rpmdb.c:58
msgid "no dbpath has been set"
msgstr ""
-#: lib/rebuilddb.c:34
+#: ../lib/rebuilddb.c:27
#, c-format
msgid "temporary database %s already exists"
msgstr ""
-#: lib/rebuilddb.c:38
+#: ../lib/rebuilddb.c:31
#, c-format
msgid "creating directory: %s\n"
msgstr ""
-#: lib/rebuilddb.c:40
+#: ../lib/rebuilddb.c:33
#, c-format
msgid "error creating directory %s: %s"
msgstr ""
-#: lib/rebuilddb.c:44
+#: ../lib/rebuilddb.c:39
msgid "opening old database\n"
msgstr ""
-#: lib/rebuilddb.c:51
+#: ../lib/rebuilddb.c:44
msgid "opening new database\n"
msgstr ""
-#: lib/rebuilddb.c:61 lib/rebuilddb.c:79
+#: ../lib/rebuilddb.c:53 ../lib/rebuilddb.c:71
#, c-format
msgid "record number %d in database is bad -- skipping it"
msgstr ""
-#: lib/rebuilddb.c:73
+#: ../lib/rebuilddb.c:65
#, c-format
msgid "cannot add record originally at %d"
msgstr ""
-#: lib/rebuilddb.c:92
+#: ../lib/rebuilddb.c:82
msgid "failed to rebuild database; original database remains in place\n"
msgstr ""
-#: lib/rebuilddb.c:100
+#: ../lib/rebuilddb.c:89
msgid "failed to replace old database with new database!\n"
msgstr ""
-#: lib/rebuilddb.c:102
+#: ../lib/rebuilddb.c:91
#, c-format
msgid "replaces files in %s with files from %s to recover"
msgstr ""
-#: lib/rebuilddb.c:108
-#, c-format
-msgid "failed to remove directory %s: %s\n"
-msgstr ""
-
-#: lib/rpmchecksig.c:31
+#: ../lib/rebuilddb.c:96
#, c-format
-msgid "%s: open failed: %s\n"
+msgid "failed to remove %s: %s\n"
msgstr ""
-#: lib/rpmchecksig.c:42
-msgid "makeTempFile failed\n"
-msgstr ""
-
-#: lib/rpmchecksig.c:74
+#: ../lib/rpmdb.c:113
#, c-format
-msgid "%s: Fwrite failed: %s\n"
+msgid "opening database in %s\n"
msgstr ""
-#: lib/rpmchecksig.c:80
+#: ../lib/rpmdb.c:122
#, c-format
-msgid "%s: Fread failed: %s\n"
+msgid "failed to open %s\n"
msgstr ""
-#: lib/rpmchecksig.c:113 lib/rpmchecksig.c:243
-#, c-format
-msgid "%s: readLead failed\n"
-msgstr ""
-
-#: lib/rpmchecksig.c:118
-#, c-format
-msgid "%s: Can't sign v1.0 RPM\n"
-msgstr ""
-
-#: lib/rpmchecksig.c:122
-#, c-format
-msgid "%s: Can't re-sign v2.0 RPM\n"
-msgstr ""
-
-#: lib/rpmchecksig.c:130 lib/rpmchecksig.c:257
-#, c-format
-msgid "%s: rpmReadSignature failed\n"
-msgstr ""
-
-#: lib/rpmchecksig.c:134 lib/rpmchecksig.c:262
-#, c-format
-msgid "%s: No signature available\n"
-msgstr ""
-
-#: lib/rpmchecksig.c:167
-#, c-format
-msgid "%s: writeLead failed: %s\n"
-msgstr ""
-
-#: lib/rpmchecksig.c:173
-#, c-format
-msgid "%s: rpmWriteSignature failed: %s\n"
-msgstr ""
-
-#: lib/rpmchecksig.c:249
-#, c-format
-msgid "%s: No signature available (v1.0 RPM)\n"
-msgstr ""
-
-#: lib/rpmchecksig.c:412
-msgid "NOT OK"
-msgstr ""
-
-#: lib/rpmchecksig.c:413 lib/rpmchecksig.c:427
-msgid " (MISSING KEYS:"
-msgstr ""
-
-#: lib/rpmchecksig.c:415 lib/rpmchecksig.c:429
-msgid ") "
-msgstr ""
-
-#: lib/rpmchecksig.c:416 lib/rpmchecksig.c:430
-msgid " (UNTRUSTED KEYS:"
-msgstr ""
-
-#: lib/rpmchecksig.c:418 lib/rpmchecksig.c:432
-msgid ")"
-msgstr ""
-
-#: lib/rpmchecksig.c:426
-msgid "OK"
-msgstr ""
-
-#: lib/rpmdb.c:147
-#, c-format
-msgid "opening database mode 0x%x in %s\n"
-msgstr ""
-
-#: lib/rpmdb.c:157 lib/url.c:442
-#, c-format
-msgid "failed to open %s: %s\n"
-msgstr ""
-
-#: lib/rpmdb.c:171 lib/rpmdb.c:179
+#: ../lib/rpmdb.c:135 ../lib/rpmdb.c:142
#, c-format
msgid "cannot get %s lock on database"
msgstr ""
-#: lib/rpmdb.c:172
+#: ../lib/rpmdb.c:136
msgid "exclusive"
msgstr ""
-#: lib/rpmdb.c:180
+#: ../lib/rpmdb.c:143
msgid "shared"
msgstr ""
-#: lib/rpmdb.c:211
-msgid ""
-"old format database is present; use --rebuilddb to generate a new format "
-"database"
-msgstr ""
-
-#: lib/rpmdb.c:469
+#: ../lib/rpmdb.c:276
#, c-format
msgid "package %s not listed in %s"
msgstr ""
-#: lib/rpmdb.c:480
+#: ../lib/rpmdb.c:287
#, c-format
msgid "package %s not found in %s"
msgstr ""
-#: lib/rpmdb.c:504 lib/uninstall.c:86
-#, c-format
-msgid "cannot read header at %d for uninstall"
-msgstr ""
-
-#: lib/rpmdb.c:512
+#: ../lib/rpmdb.c:318
msgid "package has no name"
msgstr ""
-#: lib/rpmdb.c:514
+#: ../lib/rpmdb.c:320
msgid "removing name index\n"
msgstr ""
-#: lib/rpmdb.c:519
+#: ../lib/rpmdb.c:325
msgid "package has no group\n"
msgstr ""
-#: lib/rpmdb.c:521
+#: ../lib/rpmdb.c:327
msgid "removing group index\n"
msgstr ""
-#: lib/rpmdb.c:528
+#: ../lib/rpmdb.c:334
#, c-format
msgid "removing provides index for %s\n"
msgstr ""
-#: lib/rpmdb.c:543
+#: ../lib/rpmdb.c:349
#, c-format
msgid "removing requiredby index for %s\n"
msgstr ""
-#: lib/rpmdb.c:555
+#: ../lib/rpmdb.c:361
#, c-format
msgid "removing trigger index for %s\n"
msgstr ""
-#: lib/rpmdb.c:566
+#: ../lib/rpmdb.c:372
#, c-format
msgid "removing conflict index for %s\n"
msgstr ""
-#: lib/rpmdb.c:577
+#: ../lib/rpmdb.c:383
#, c-format
msgid "removing file index for %s\n"
msgstr ""
-#: lib/rpmdb.c:586
+#: ../lib/rpmdb.c:390
msgid "package has no files\n"
msgstr ""
-#: lib/rpmdb.c:692
+#: ../lib/rpmdb.c:463
msgid "cannot allocate space for database"
msgstr ""
-#: lib/rpmdb.c:751
+#: ../lib/rpmdb.c:527
#, c-format
msgid "cannot read header at %d for update"
msgstr ""
-#: lib/rpmdb.c:764
+#: ../lib/rpmdb.c:536
msgid "header changed size!"
msgstr ""
-#: lib/rpminstall.c:126
-msgid "counting packages to install\n"
-msgstr ""
-
-#: lib/rpminstall.c:130
-#, c-format
-msgid "found %d packages\n"
-msgstr ""
-
-#: lib/rpminstall.c:135
-msgid "looking for packages to download\n"
-msgstr ""
-
-#: lib/rpminstall.c:150
-#, c-format
-msgid "skipping %s - rpmGlob failed(%d)\n"
-msgstr ""
-
-#: lib/rpminstall.c:165
-#, c-format
-msgid "Retrieving %s\n"
-msgstr ""
-
-#. XXX undefined %{name}/%{version}/%{release} here
-#. XXX %{_tmpdir} does not exist
-#: lib/rpminstall.c:175
-#, c-format
-msgid " ... as %s\n"
-msgstr ""
-
-#: lib/rpminstall.c:179
-#, c-format
-msgid "skipping %s - transfer failed - %s\n"
-msgstr ""
-
-#: lib/rpminstall.c:206
-#, c-format
-msgid "retrieved %d packages\n"
-msgstr ""
-
-#: lib/rpminstall.c:217 lib/rpminstall.c:360
-#, c-format
-msgid "cannot open file %s: %s\n"
-msgstr ""
-
-#: lib/rpminstall.c:235 lib/rpminstall.c:512
-#, c-format
-msgid "%s cannot be installed\n"
-msgstr ""
-
-#: lib/rpminstall.c:270
-#, c-format
-msgid "package %s is not relocateable\n"
-msgstr ""
-
-#: lib/rpminstall.c:289
-#, c-format
-msgid "error reading from file %s\n"
-msgstr ""
-
-#: lib/rpminstall.c:294
-#, c-format
-msgid "file %s requires a newer version of RPM\n"
-msgstr ""
-
-#: lib/rpminstall.c:311
-#, c-format
-msgid "found %d source and %d binary packages\n"
-msgstr ""
-
-#: lib/rpminstall.c:322
-msgid "failed dependencies:\n"
-msgstr ""
-
-#: lib/rpminstall.c:340
-msgid "installing binary packages\n"
-msgstr ""
-
-#: lib/rpminstall.c:439
-#, c-format
-msgid "searching for package %s\n"
-msgstr ""
-
-#: lib/rpminstall.c:448
-#, c-format
-msgid "\"%s\" specifies multiple packages\n"
-msgstr ""
-
-#: lib/rpminstall.c:474
-msgid "removing these packages would break dependencies:\n"
-msgstr ""
-
-#: lib/rpminstall.c:501
-#, c-format
-msgid "cannot open %s: %s\n"
-msgstr ""
-
-#: lib/rpminstall.c:507
-#, c-format
-msgid "Installing %s\n"
-msgstr ""
-
-#: lib/rpmio.c:769
-msgid "Success"
-msgstr ""
-
-#: lib/rpmio.c:772
-msgid "Bad server response"
-msgstr ""
-
-#: lib/rpmio.c:775
-msgid "Server IO error"
-msgstr ""
-
-#: lib/rpmio.c:778
-msgid "Server timeout"
-msgstr ""
-
-#: lib/rpmio.c:781
-msgid "Unable to lookup server host address"
-msgstr ""
-
-#: lib/rpmio.c:784
-msgid "Unable to lookup server host name"
-msgstr ""
-
-#: lib/rpmio.c:787
-msgid "Failed to connect to server"
-msgstr ""
-
-#: lib/rpmio.c:790
-msgid "Failed to establish data connection to server"
-msgstr ""
-
-#: lib/rpmio.c:793
-msgid "IO error to local file"
-msgstr ""
-
-#: lib/rpmio.c:796
-msgid "Error setting remote server to passive mode"
-msgstr ""
-
-#: lib/rpmio.c:799
-msgid "File not found on server"
-msgstr ""
-
-#: lib/rpmio.c:802
-msgid "Abort in progress"
-msgstr ""
-
-#: lib/rpmio.c:806
-msgid "Unknown or unexpected error"
-msgstr ""
-
-#: lib/rpmio.c:1339
-#, c-format
-msgid "logging into %s as %s, pw %s\n"
-msgstr ""
-
-#: lib/rpmlead.c:48
+#: ../lib/rpmlead.c:43
#, c-format
msgid "read failed: %s (%d)"
msgstr ""
-#: lib/rpmrc.c:144
+#: ../lib/rpmrc.c:212
#, c-format
msgid "missing second ':' at %s:%d"
msgstr ""
-#: lib/rpmrc.c:147
+#: ../lib/rpmrc.c:215
#, c-format
msgid "missing architecture name at %s:%d"
msgstr ""
-#: lib/rpmrc.c:307
+#: ../lib/rpmrc.c:360
#, c-format
msgid "Incomplete data line at %s:%d"
msgstr ""
-#: lib/rpmrc.c:311
+#: ../lib/rpmrc.c:364
#, c-format
msgid "Too many args in data line at %s:%d"
msgstr ""
-#: lib/rpmrc.c:318
+#: ../lib/rpmrc.c:371
#, c-format
msgid "Bad arch/os number: %s (%s:%d)"
msgstr ""
-#: lib/rpmrc.c:353
+#: ../lib/rpmrc.c:404
#, c-format
msgid "Incomplete default line at %s:%d"
msgstr ""
-#: lib/rpmrc.c:358
+#: ../lib/rpmrc.c:409
#, c-format
msgid "Too many args in default line at %s:%d"
msgstr ""
-#: lib/rpmrc.c:547
-#, c-format
-msgid "Cannot expand %s"
-msgstr ""
-
-#: lib/rpmrc.c:562
+#: ../lib/rpmrc.c:544 ../lib/rpmrc.c:560
#, c-format
msgid "Unable to open %s for reading: %s."
msgstr ""
-#. XXX Feof(fd)
-#: lib/rpmrc.c:607
+#: ../lib/rpmrc.c:604
#, c-format
msgid "Failed to read %s: %s."
msgstr ""
-#: lib/rpmrc.c:644
+#: ../lib/rpmrc.c:635
#, c-format
-msgid "missing ':' (found 0x%02x) at %s:%d"
+msgid "missing ':' at %s:%d"
msgstr ""
-#: lib/rpmrc.c:661 lib/rpmrc.c:735
+#: ../lib/rpmrc.c:651 ../lib/rpmrc.c:746
#, c-format
msgid "missing argument for %s at %s:%d"
msgstr ""
-#: lib/rpmrc.c:678 lib/rpmrc.c:700
+#: ../lib/rpmrc.c:681
+#, c-format
+msgid "no macroname for setenv %s:%d"
+msgstr ""
+
+#: ../lib/rpmrc.c:712
#, c-format
-msgid "%s expansion failed at %s:%d \"%s\""
+msgid "expansion failed at %s:d \"%s\""
msgstr ""
-#: lib/rpmrc.c:687
+#: ../lib/rpmrc.c:718
#, c-format
-msgid "cannot open %s at %s:%d: %s"
+msgid "cannot open %s at %s:%d"
msgstr ""
-#: lib/rpmrc.c:727
+#: ../lib/rpmrc.c:736
#, c-format
msgid "missing architecture for %s at %s:%d"
msgstr ""
-#: lib/rpmrc.c:794
+#: ../lib/rpmrc.c:803
#, c-format
msgid "bad option '%s' at %s:%d"
msgstr ""
-#: lib/rpmrc.c:1162
+#: ../lib/rpmrc.c:1168
#, c-format
msgid "Unknown system: %s\n"
msgstr ""
-#: lib/rpmrc.c:1163
+#: ../lib/rpmrc.c:1169
msgid "Please contact rpm-list@redhat.com\n"
msgstr ""
-#: lib/signature.c:107
-#, c-format
-msgid "sigsize : %d\n"
-msgstr ""
-
-#: lib/signature.c:108
-#, c-format
-msgid "Header + Archive: %d\n"
-msgstr ""
-
-#: lib/signature.c:109
-#, c-format
-msgid "expected size : %d\n"
-msgstr ""
-
-#: lib/signature.c:113
-msgid "file is not regular -- skipping size check\n"
-msgstr ""
-
-#: lib/signature.c:135
+#: ../lib/signature.c:72
msgid "No signature\n"
msgstr ""
-#: lib/signature.c:138
+#: ../lib/signature.c:75
msgid "Old PGP signature\n"
msgstr ""
-#: lib/signature.c:150
+#: ../lib/signature.c:88
msgid "Old (internal-only) signature! How did you get that!?"
msgstr ""
-#: lib/signature.c:154
+#: ../lib/signature.c:92
msgid "New Header signature\n"
msgstr ""
#. 8-byte pad
-#: lib/signature.c:161 lib/signature.c:203
+#: ../lib/signature.c:100 ../lib/signature.c:138
#, c-format
msgid "Signature size: %d\n"
msgstr ""
-#: lib/signature.c:162 lib/signature.c:204
+#: ../lib/signature.c:101 ../lib/signature.c:139
#, c-format
msgid "Signature pad : %d\n"
msgstr ""
-#: lib/signature.c:267
-#, c-format
-msgid "Couldn't exec pgp (%s)"
+#: ../lib/signature.c:211 ../lib/signature.c:468
+msgid "Couldn't exec pgp"
msgstr ""
-#: lib/signature.c:278
+#: ../lib/signature.c:222
msgid "pgp failed"
msgstr ""
#. PGP failed to write signature
#. Just in case
-#: lib/signature.c:285
+#: ../lib/signature.c:229
msgid "pgp failed to write signature"
msgstr ""
-#: lib/signature.c:290
+#: ../lib/signature.c:234
#, c-format
msgid "PGP sig size: %d\n"
msgstr ""
-#: lib/signature.c:301 lib/signature.c:378
+#: ../lib/signature.c:242
msgid "unable to read the signature"
msgstr ""
-#: lib/signature.c:306
+#: ../lib/signature.c:248
#, c-format
msgid "Got %d bytes of PGP sig\n"
msgstr ""
-#: lib/signature.c:344 lib/signature.c:687
-msgid "Couldn't exec gpg"
-msgstr ""
-
-#: lib/signature.c:355
-msgid "gpg failed"
-msgstr ""
-
-#. GPG failed to write signature
-#. Just in case
-#: lib/signature.c:362
-msgid "gpg failed to write signature"
-msgstr ""
-
-#: lib/signature.c:367
+#: ../lib/signature.c:263
#, c-format
-msgid "GPG sig size: %d\n"
+msgid "sigsize : %d\n"
msgstr ""
-#: lib/signature.c:383
+#: ../lib/signature.c:264
#, c-format
-msgid "Got %d bytes of GPG sig\n"
-msgstr ""
-
-#: lib/signature.c:410
-msgid "Generating signature using PGP.\n"
+msgid "Header + Archive: %d\n"
msgstr ""
-#: lib/signature.c:416
-msgid "Generating signature using GPG.\n"
+#: ../lib/signature.c:265
+#, c-format
+msgid "expected size : %d\n"
msgstr ""
-#: lib/signature.c:493 lib/signature.c:555
-msgid "Could not run pgp. Use --nopgp to skip PGP checks."
+#: ../lib/signature.c:269
+msgid "file is not regular -- skipping size check\n"
msgstr ""
-#: lib/signature.c:553 lib/signature.c:626
+#: ../lib/signature.c:383
msgid "exec failed!\n"
msgstr ""
-#: lib/signature.c:628
-msgid "Could not run gpg. Use --nogpg to skip GPG checks."
+#: ../lib/signature.c:385
+msgid "Could not run pgp. Use --nopgp to skip PGP checks."
msgstr ""
-#: lib/signature.c:716
-msgid "Couldn't exec pgp"
+#: ../lib/signature.c:419
+msgid "You must set \"pgp_name:\" in your rpmrc file"
msgstr ""
-#. @notreached@
-#. This case should have been screened out long ago.
-#: lib/signature.c:720 lib/signature.c:773
-msgid "Invalid %%_signature spec in macro file"
+#. This shouldn't happen, but some versions of RPM didn't
+#. implement --justdb properly, and chose to leave this stuff
+#. out.
+#: ../lib/uninstall.c:149 ../lib/uninstall.c:279
+msgid "package is missing FILESTATES\n"
msgstr ""
-#: lib/signature.c:753
-msgid "You must set \"%%_gpg_name\" in your macro file"
+#: ../lib/uninstall.c:164
+msgid " file has already been replaced\n"
msgstr ""
-#: lib/signature.c:765
-msgid "You must set \"%%_pgp_name\" in your macro file"
+#: ../lib/uninstall.c:168
+msgid " file was never installed\n"
msgstr ""
-#: lib/transaction.c:389
-#, c-format
-msgid "excluding file %s%s\n"
+#: ../lib/uninstall.c:172
+msgid " file is netshared (so don't touch it)\n"
msgstr ""
-#: lib/transaction.c:415 lib/transaction.c:499
-#, c-format
-msgid "excluding directory %s\n"
+#: ../lib/uninstall.c:179
+msgid " file is truely shared - saving\n"
msgstr ""
-#: lib/transaction.c:420
+#: ../lib/uninstall.c:229
#, c-format
-msgid "relocating %s to %s\n"
+msgid "cannot read packages named %s for uninstall"
msgstr ""
-#: lib/transaction.c:492
+#: ../lib/uninstall.c:257
#, c-format
-msgid "relocating directory %s to %s\n"
+msgid "will remove files test = %d\n"
msgstr ""
-#: lib/transaction.c:643
+#: ../lib/uninstall.c:305
#, c-format
-msgid "%s skipped due to missingok flag\n"
+msgid "%s has a netshared override\n"
msgstr ""
-#: lib/uninstall.c:38
-#, c-format
-msgid "cannot remove %s - directory not empty"
+#: ../lib/uninstall.c:343
+msgid "running postuninstall script (if any)\n"
msgstr ""
-#: lib/uninstall.c:41
-#, c-format
-msgid "rmdir of %s failed: %s"
+#: ../lib/uninstall.c:357
+msgid "removing database entry\n"
msgstr ""
-#: lib/uninstall.c:49
-#, c-format
-msgid "removal of %s failed: %s"
+#: ../lib/uninstall.c:506
+msgid "execution of script failed"
msgstr ""
-#: lib/uninstall.c:98
+#: ../lib/uninstall.c:551
#, c-format
-msgid "cannot read packages named %s for uninstall"
+msgid "%s has already been replaced\n"
msgstr ""
-#: lib/uninstall.c:131
+#. if it's a config file, we may not want to remove it
+#: ../lib/uninstall.c:557
#, c-format
-msgid "will remove files test = %d\n"
+msgid "finding md5sum of %s\n"
msgstr ""
-#: lib/uninstall.c:208
-msgid "running postuninstall script (if any)\n"
+#: ../lib/uninstall.c:565
+msgid " failed - assuming file removed\n"
msgstr ""
-#: lib/uninstall.c:222
-msgid "removing database entry\n"
+#: ../lib/uninstall.c:568
+msgid " file changed - will save\n"
msgstr ""
-#: lib/uninstall.c:400
-msgid "execution of script failed"
+#: ../lib/uninstall.c:572
+msgid " file unchanged - will remove\n"
msgstr ""
-#: lib/url.c:85
+#: ../lib/uninstall.c:580
#, c-format
-msgid "warning: u %p ctrl %p nrefs != 0 (%s %s)\n"
+msgid "keeping %s\n"
msgstr ""
-#: lib/url.c:102
+#: ../lib/uninstall.c:584
#, c-format
-msgid "warning: u %p data %p nrefs != 0 (%s %s)\n"
+msgid "saving %s as %s.rpmsave\n"
msgstr ""
-#: lib/url.c:129
+#: ../lib/uninstall.c:598
#, c-format
-msgid "warning: uCache[%d] %p nrefs(%d) != 1 (%s %s)\n"
+msgid "%s - removing\n"
msgstr ""
-#: lib/url.c:215
+#: ../lib/uninstall.c:604
#, c-format
-msgid "Password for %s@%s: "
+msgid "cannot remove %s - directory not empty"
msgstr ""
-#: lib/url.c:240 lib/url.c:266
+#: ../lib/uninstall.c:607
#, c-format
-msgid "error: %sport must be a number\n"
-msgstr ""
-
-#: lib/url.c:402
-msgid "url port must be a number\n"
+msgid "rmdir of %s failed: %s"
msgstr ""
-#. XXX Fstrerror
-#: lib/url.c:459
+#: ../lib/uninstall.c:617
#, c-format
-msgid "failed to create %s: %s\n"
-msgstr ""
-
-#: lib/verify.c:38
-msgid "don't verify files in package"
+msgid "removal of %s failed: %s"
msgstr ""
-#: lib/verify.c:213
+#: ../lib/verify.c:171
msgid "package lacks both user name and id lists (this should never happen)"
msgstr ""
-#: lib/verify.c:231
+#: ../lib/verify.c:189
msgid "package lacks both group name and id lists (this should never happen)"
msgstr ""
-
-#: lib/verify.c:266
-#, c-format
-msgid "missing %s\n"
-msgstr ""
-
-#: lib/verify.c:328
-#, c-format
-msgid "Unsatisfied dependencies for %s-%s-%s: "
-msgstr ""
-
-#: lib/verify.c:376
-msgid "rpmVerify: rpmdbOpen() failed\n"
-msgstr ""
diff --git a/popt/.cvsignore b/popt/.cvsignore
index ca86025b9..3f3598053 100644
--- a/popt/.cvsignore
+++ b/popt/.cvsignore
@@ -1,11 +1,13 @@
+.deps
+.depend
Makefile
mappcinames
pci-ids-temp.h
Makefile
configure
+config.h
config.log
config.cache
config.satus
config.status
-.depend
test1
diff --git a/popt/Makefile.am b/popt/Makefile.am
new file mode 100644
index 000000000..4a93db4a5
--- /dev/null
+++ b/popt/Makefile.am
@@ -0,0 +1,9 @@
+# Makefile for popt library.
+
+AUTOMAKE_OPTIONS = 1.3 foreign
+
+INCLUDES = -I..
+
+noinst_HEADERS = popt.h
+noinst_LIBRARIES = libpopt.a
+libpopt_a_SOURCES = popt.c findme.c poptparse.c poptconfig.c popthelp.c
diff --git a/popt/Makefile.in b/popt/Makefile.in
index 2a8814ed5..acf90fc73 100644
--- a/popt/Makefile.in
+++ b/popt/Makefile.in
@@ -1,83 +1,344 @@
+# Makefile.in generated automatically by automake 1.3 from Makefile.am
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+# Makefile for popt library.
+
+
+SHELL = /bin/sh
+
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+infodir = @infodir@
+mandir = @mandir@
+includedir = @includedir@
+oldincludedir = /usr/include
+
+DISTDIR =
+
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
-LIBOBJECTS = popt.o findme.o poptparse.o poptconfig.o popthelp.o
+top_builddir = .
-SOURCES = $(addprefix $(srcdir)/,$(subst .o,.c,$(LIBOBJECTS)))
-LIBPOPT = libpopt.a
+ACLOCAL = @ACLOCAL@
+AUTOCONF = @AUTOCONF@
+AUTOMAKE = @AUTOMAKE@
+AUTOHEADER = @AUTOHEADER@
+
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+transform = @program_transform_name@
+
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
CC = @CC@
+CPP = @CPP@
+MAKEINFO = @MAKEINFO@
+PACKAGE = @PACKAGE@
+RANLIB = @RANLIB@
+TARGET = @TARGET@
+U = @U@
+VERSION = @VERSION@
+
+AUTOMAKE_OPTIONS = 1.3 foreign
+
+INCLUDES = -I..
+
+noinst_HEADERS = popt.h
+noinst_LIBRARIES = libpopt.a
+libpopt_a_SOURCES = popt.c findme.c poptparse.c poptconfig.c popthelp.c
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = config.h
+CONFIG_CLEAN_FILES =
+LIBRARIES = $(noinst_LIBRARIES)
+
+
+DEFS = @DEFS@ -I. -I$(srcdir) -I.
+CPPFLAGS = @CPPFLAGS@
+LDFLAGS = @LDFLAGS@
+LIBS = @LIBS@
+libpopt_a_LIBADD =
+libpopt_a_OBJECTS = popt.o findme.o poptparse.o poptconfig.o popthelp.o
+AR = ar
+CFLAGS = @CFLAGS@
+COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
+LINK = $(CC) $(CFLAGS) $(LDFLAGS) -o $@
+HEADERS = $(noinst_HEADERS)
+
+DIST_COMMON = README Makefile.am Makefile.in aclocal.m4 config.h.in \
+configure configure.in install-sh stamp-h.in
+
+
+DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+
+TAR = tar
+GZIP = --best
+DEP_FILES = .deps/findme.P .deps/popt.P .deps/poptconfig.P \
+.deps/popthelp.P .deps/poptparse.P
+SOURCES = $(libpopt_a_SOURCES)
+OBJECTS = $(libpopt_a_OBJECTS)
+
+all: Makefile $(LIBRARIES) $(HEADERS) config.h
+
+.SUFFIXES:
+.SUFFIXES: .S .c .o .s
+$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+ cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+$(ACLOCAL_M4): configure.in
+ cd $(srcdir) && $(ACLOCAL)
+
+config.status: $(srcdir)/configure
+ $(SHELL) ./config.status --recheck
+$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
+ cd $(srcdir) && $(AUTOCONF)
+
+config.h: stamp-h
+ @:
+stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status
+ cd $(top_builddir) \
+ && CONFIG_FILES= CONFIG_HEADERS=config.h \
+ $(SHELL) ./config.status
+ @echo timestamp > stamp-h
+$(srcdir)/config.h.in: $(srcdir)/stamp-h.in
+$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4)
+ cd $(top_srcdir) && $(AUTOHEADER)
+ @echo timestamp > $(srcdir)/stamp-h.in
+
+mostlyclean-hdr:
+
+clean-hdr:
+
+distclean-hdr:
+ -rm -f config.h
+
+maintainer-clean-hdr:
+
+mostlyclean-noinstLIBRARIES:
+
+clean-noinstLIBRARIES:
+ -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
+
+distclean-noinstLIBRARIES:
+
+maintainer-clean-noinstLIBRARIES:
+
+.s.o:
+ $(COMPILE) -c $<
+
+.S.o:
+ $(COMPILE) -c $<
+
+mostlyclean-compile:
+ -rm -f *.o core *.core
+
+clean-compile:
+
+distclean-compile:
+ -rm -f *.tab.c
+
+maintainer-clean-compile:
+
+libpopt.a: $(libpopt_a_OBJECTS) $(libpopt_a_DEPENDENCIES)
+ -rm -f libpopt.a
+ $(AR) cru libpopt.a $(libpopt_a_OBJECTS) $(libpopt_a_LIBADD)
+ $(RANLIB) libpopt.a
+
+tags: TAGS
+
+ID: $(HEADERS) $(SOURCES) $(LISP)
+ here=`pwd` && cd $(srcdir) \
+ && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)
+
+TAGS: $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS)'; \
+ unique=`for i in $$list; do echo $$i; done | \
+ awk ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(ETAGS_ARGS)config.h.in$$unique$(LISP)$$tags" \
+ || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) -o $$here/TAGS)
+
+mostlyclean-tags:
+
+clean-tags:
+
+distclean-tags:
+ -rm -f TAGS ID
+
+maintainer-clean-tags:
+
+distdir = $(PACKAGE)-$(VERSION)
+top_distdir = $(distdir)
+
+# This target untars the dist file and tries a VPATH configuration. Then
+# it guarantees that the distribution is self-contained by making another
+# tarfile.
+distcheck: dist
+ -rm -rf $(distdir)
+ GZIP=$(GZIP) $(TAR) zxf $(distdir).tar.gz
+ mkdir $(distdir)/=build
+ mkdir $(distdir)/=inst
+ dc_install_base=`cd $(distdir)/=inst && pwd`; \
+ cd $(distdir)/=build \
+ && ../configure --srcdir=.. --prefix=$$dc_install_base \
+ && $(MAKE) \
+ && $(MAKE) dvi \
+ && $(MAKE) check \
+ && $(MAKE) install \
+ && $(MAKE) installcheck \
+ && $(MAKE) dist
+ -rm -rf $(distdir)
+ @echo "========================"; \
+ echo "$(distdir).tar.gz is ready for distribution"; \
+ echo "========================"
+dist: distdir
+ -chmod -R a+r $(distdir)
+ GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir)
+ -rm -rf $(distdir)
+dist-all: distdir
+ -chmod -R a+r $(distdir)
+ GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir)
+ -rm -rf $(distdir)
+distdir: $(DISTFILES)
+ -rm -rf $(distdir)
+ mkdir $(distdir)
+ -chmod 777 $(distdir)
+ here=`cd $(top_builddir) && pwd`; \
+ top_distdir=`cd $(distdir) && pwd`; \
+ distdir=`cd $(distdir) && pwd`; \
+ cd $(top_srcdir) \
+ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ test -f $(distdir)/$$file \
+ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
+ || cp -p $$d/$$file $(distdir)/$$file; \
+ done
+
+DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
+
+-include $(DEP_FILES)
+
+mostlyclean-depend:
+
+clean-depend:
+
+distclean-depend:
+
+maintainer-clean-depend:
+ -rm -rf .deps
+
+%.o: %.c
+ @echo '$(COMPILE) -c $<'; \
+ $(COMPILE) -Wp,-MD,.deps/$(*F).P -c $<
+
+%.lo: %.c
+ @echo '$(LTCOMPILE) -c $<'; \
+ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).p -c $<
+ @-sed -e 's/^\([^:]*\)\.o:/\1.lo \1.o:/' \
+ < .deps/$(*F).p > .deps/$(*F).P
+ @-rm -f .deps/$(*F).p
+info:
+dvi:
+check: all
+ $(MAKE)
+installcheck:
+install-exec:
+ @$(NORMAL_INSTALL)
+
+install-data:
+ @$(NORMAL_INSTALL)
+
+install: install-exec install-data all
+ @:
+
+uninstall:
+
+install-strip:
+ $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install
+installdirs:
+
+
+mostlyclean-generic:
+ -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -rm -f Makefile $(DISTCLEANFILES)
+ -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+ -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+mostlyclean: mostlyclean-hdr mostlyclean-noinstLIBRARIES \
+ mostlyclean-compile mostlyclean-tags mostlyclean-depend \
+ mostlyclean-generic
+
+clean: clean-hdr clean-noinstLIBRARIES clean-compile clean-tags \
+ clean-depend clean-generic mostlyclean
+
+distclean: distclean-hdr distclean-noinstLIBRARIES distclean-compile \
+ distclean-tags distclean-depend distclean-generic clean
+ -rm -f config.status
+
+maintainer-clean: maintainer-clean-hdr maintainer-clean-noinstLIBRARIES \
+ maintainer-clean-compile maintainer-clean-tags \
+ maintainer-clean-depend maintainer-clean-generic \
+ distclean
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+ -rm -f config.status
+
+.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \
+mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \
+clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \
+mostlyclean-compile distclean-compile clean-compile \
+maintainer-clean-compile tags mostlyclean-tags distclean-tags \
+clean-tags maintainer-clean-tags distdir mostlyclean-depend \
+distclean-depend clean-depend maintainer-clean-depend info dvi \
+installcheck install-exec install-data install uninstall all \
+installdirs mostlyclean-generic distclean-generic clean-generic \
+maintainer-clean-generic clean mostlyclean distclean maintainer-clean
+
-RANLIB=@RANLIB@
-INSTALL=@INSTALL@
-INSTALL_PREOGRAM=@INSTALL_PREOGRAM@
-INSTALL_DATA=@INSTALL_DATA@
-prefix=@prefix@
-LIBS=$(prefix)/lib
-INCLUDE=$(prefix)/include
-CPP=@CPP@
-LDFLAGS=@LIBS@
-TESTCASES=test1
-
-VERSION=$(shell awk '/define version/ { print $$3 }' popt.spec)
-CVSTAG = r$(subst .,-,$(VERSION))
-
-# -----------------------------------------------------------------------
-
-CFLAGS = @CFLAGS@ @DEFS@ $(OPTS)
-
-ifeq ($(RANLIB),)
-RANLIB=ranlib
-endif
-
-ifeq (.depend-done,$(wildcard .depend-done))
-TARGET=allprogs
-else
-TARGET=@TARGET@
-endif
-
-allprogs: $(LIBPOPT) testcases
-
-testcases: $(TESTCASES)
-
-# XXX SINIX ld is stupid: needs explicit rule with libs at end
-$(TESTCASES): $(LIBPOPT)
- $(CC) $(TESTCASES).c $< -o $@ $(LDFLAGS) $(LIBPOPT)
-
-$(LIBPOPT): $(LIBPOPT)($(LIBOBJECTS))
- $(RANLIB) $@
-
-distclean: clean
- rm -f Makefile .depend-done config.log config.status
-
-clean:
- rm -f *.a *.o *~ $(PROGS) test.out tagtable.c
-
-squeaky: distclean
- rm -f .depend
-
-depend:
- topdir_path=`( cd $(top_srcdir) && pwd )` ; \
- /bin/rm -f .depend ; \
- $(CPP) $(CFLAGS) -MM $(SOURCES) | \
- sed s+$$topdir_path+$(top_srcdir)+g > .depend
-
-install:
- mkdir -p $(PREFIX)/$(INCLUDE)
- mkdir -p $(PREFIX)/$(LIBS)
- $(INSTALL_DATA) -m 644 popt.h $(PREFIX)/$(INCLUDE)/popt.h
- $(INSTALL_DATA) -m 644 $(LIBPOPT) $(PREFIX)/$(LIBS)/$(LIBPOPT)
-
-archive:
- cvs tag -F $(CVSTAG) .
- @rm -rf /tmp/popt-$(VERSION) /tmp/popt
- @cd /tmp; cvs export -r$(CVSTAG) popt
- @cd /tmp/popt; autoconf
- @mv /tmp/popt /tmp/popt-$(VERSION)
- @dir=$$PWD; cd /tmp; tar cvzf $$dir/popt-$(VERSION).tar.gz popt-$(VERSION)
- @rm -rf /tmp/popt-$(VERSION)
- @echo "The archive is in popt-$(VERSION).tar.gz"
-
-ifeq (.depend,$(wildcard .depend))
-include .depend
-endif
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/popt/aclocal.m4 b/popt/aclocal.m4
new file mode 100644
index 000000000..d234055df
--- /dev/null
+++ b/popt/aclocal.m4
@@ -0,0 +1,246 @@
+dnl aclocal.m4 generated automatically by aclocal 1.3
+
+dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+dnl This Makefile.in is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+dnl PARTICULAR PURPOSE.
+
+# Do all the work for Automake. This macro actually does too much --
+# some checks are only needed if your package does certain things.
+# But this isn't really a big deal.
+
+# serial 1
+
+dnl Usage:
+dnl AM_INIT_AUTOMAKE(package,version, [no-define])
+
+AC_DEFUN(AM_INIT_AUTOMAKE,
+[AC_REQUIRE([AM_PROG_INSTALL])
+PACKAGE=[$1]
+AC_SUBST(PACKAGE)
+VERSION=[$2]
+AC_SUBST(VERSION)
+dnl test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
+ AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
+fi
+ifelse([$3],,
+AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
+AC_DEFINE_UNQUOTED(VERSION, "$VERSION"))
+AC_REQUIRE([AM_SANITY_CHECK])
+AC_REQUIRE([AC_ARG_PROGRAM])
+dnl FIXME This is truly gross.
+missing_dir=`cd $ac_aux_dir && pwd`
+AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
+AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
+AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
+AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
+AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
+AC_REQUIRE([AC_PROG_MAKE_SET])])
+
+
+# serial 1
+
+AC_DEFUN(AM_PROG_INSTALL,
+[AC_REQUIRE([AC_PROG_INSTALL])
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
+AC_SUBST(INSTALL_SCRIPT)dnl
+])
+
+#
+# Check to make sure that the build environment is sane.
+#
+
+AC_DEFUN(AM_SANITY_CHECK,
+[AC_MSG_CHECKING([whether build environment is sane])
+# Just in case
+sleep 1
+echo timestamp > conftestfile
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments. Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+ set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
+ if test "[$]*" = "X"; then
+ # -L didn't work.
+ set X `ls -t $srcdir/configure conftestfile`
+ fi
+ if test "[$]*" != "X $srcdir/configure conftestfile" \
+ && test "[$]*" != "X conftestfile $srcdir/configure"; then
+
+ # If neither matched, then we have a broken ls. This can happen
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
+ # broken ls alias from the environment. This has actually
+ # happened. Such a system could not be considered "sane".
+ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
+alias in your environment])
+ fi
+
+ test "[$]2" = conftestfile
+ )
+then
+ # Ok.
+ :
+else
+ AC_MSG_ERROR([newly created file is older than distributed files!
+Check your system clock])
+fi
+rm -f conftest*
+AC_MSG_RESULT(yes)])
+
+dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
+dnl The program must properly implement --version.
+AC_DEFUN(AM_MISSING_PROG,
+[AC_MSG_CHECKING(for working $2)
+# Run test in a subshell; some versions of sh will print an error if
+# an executable is not found, even if stderr is redirected.
+# Redirect stdin to placate older versions of autoconf. Sigh.
+if ($2 --version) < /dev/null > /dev/null 2>&1; then
+ $1=$2
+ AC_MSG_RESULT(found)
+else
+ $1="$3/missing $2"
+ AC_MSG_RESULT(missing)
+fi
+AC_SUBST($1)])
+
+# Like AC_CONFIG_HEADER, but automatically create stamp file.
+
+AC_DEFUN(AM_CONFIG_HEADER,
+[AC_PREREQ([2.12])
+AC_CONFIG_HEADER([$1])
+dnl When config.status generates a header, we must update the stamp-h file.
+dnl This file resides in the same directory as the config header
+dnl that is generated. We must strip everything past the first ":",
+dnl and everything past the last "/".
+AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
+ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
+<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
+<<am_indx=1
+for am_file in <<$1>>; do
+ case " <<$>>CONFIG_HEADERS " in
+ *" <<$>>am_file "*<<)>>
+ echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
+ ;;
+ esac
+ am_indx=`expr "<<$>>am_indx" + 1`
+done<<>>dnl>>)
+changequote([,]))])
+
+
+# serial 1
+
+AC_DEFUN(AM_C_PROTOTYPES,
+[AC_REQUIRE([AM_PROG_CC_STDC])
+AC_REQUIRE([AC_PROG_CPP])
+AC_MSG_CHECKING([for function prototypes])
+if test "$am_cv_prog_cc_stdc" != no; then
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(PROTOTYPES)
+ U= ANSI2KNR=
+else
+ AC_MSG_RESULT(no)
+ U=_ ANSI2KNR=./ansi2knr
+ # Ensure some checks needed by ansi2knr itself.
+ AC_HEADER_STDC
+ AC_CHECK_HEADERS(string.h)
+fi
+AC_SUBST(U)dnl
+AC_SUBST(ANSI2KNR)dnl
+])
+
+
+# serial 1
+
+# @defmac AC_PROG_CC_STDC
+# @maindex PROG_CC_STDC
+# @ovindex CC
+# If the C compiler in not in ANSI C mode by default, try to add an option
+# to output variable @code{CC} to make it so. This macro tries various
+# options that select ANSI C on some system or another. It considers the
+# compiler to be in ANSI C mode if it handles function prototypes correctly.
+#
+# If you use this macro, you should check after calling it whether the C
+# compiler has been set to accept ANSI C; if not, the shell variable
+# @code{am_cv_prog_cc_stdc} is set to @samp{no}. If you wrote your source
+# code in ANSI C, you can make an un-ANSIfied copy of it by using the
+# program @code{ansi2knr}, which comes with Ghostscript.
+# @end defmac
+
+AC_DEFUN(AM_PROG_CC_STDC,
+[AC_REQUIRE([AC_PROG_CC])
+AC_BEFORE([$0], [AC_C_INLINE])
+AC_BEFORE([$0], [AC_C_CONST])
+dnl Force this before AC_PROG_CPP. Some cpp's, eg on HPUX, require
+dnl a magic option to avoid problems with ANSI preprocessor commands
+dnl like #elif.
+dnl FIXME: can't do this because then AC_AIX won't work due to a
+dnl circular dependency.
+dnl AC_BEFORE([$0], [AC_PROG_CPP])
+AC_MSG_CHECKING(for ${CC-cc} option to accept ANSI C)
+AC_CACHE_VAL(am_cv_prog_cc_stdc,
+[am_cv_prog_cc_stdc=no
+ac_save_CC="$CC"
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX -qlanglvl=ansi
+# Ultrix and OSF/1 -std1
+# HP-UX -Aa -D_HPUX_SOURCE
+# SVR4 -Xc -D__EXTENSIONS__
+for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+ CC="$ac_save_CC $ac_arg"
+ AC_TRY_COMPILE(
+[#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+ char **p;
+ int i;
+{
+ return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+ char *s;
+ va_list v;
+ va_start (v,p);
+ s = g (p, va_arg (v,int));
+ va_end (v);
+ return s;
+}
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
+int argc;
+char **argv;
+], [
+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
+],
+[am_cv_prog_cc_stdc="$ac_arg"; break])
+done
+CC="$ac_save_CC"
+])
+if test -z "$am_cv_prog_cc_stdc"; then
+ AC_MSG_RESULT([none needed])
+else
+ AC_MSG_RESULT($am_cv_prog_cc_stdc)
+fi
+case "x$am_cv_prog_cc_stdc" in
+ x|xno) ;;
+ *) CC="$CC $am_cv_prog_cc_stdc" ;;
+esac
+])
+
diff --git a/popt/config.h.in b/popt/config.h.in
new file mode 100644
index 000000000..2641ff242
--- /dev/null
+++ b/popt/config.h.in
@@ -0,0 +1,10 @@
+/* config.h.in. Generated automatically from configure.in by autoheader. */
+
+/* Define if you have the strerror function. */
+#undef HAVE_STRERROR
+
+/* Define if you have the <alloca.h> header file. */
+#undef HAVE_ALLOCA_H
+
+/* Define if you have the <unistd.h> header file. */
+#undef HAVE_UNISTD_H
diff --git a/popt/configure.in b/popt/configure.in
index d5394155b..d0d6ad8bf 100755
--- a/popt/configure.in
+++ b/popt/configure.in
@@ -1,7 +1,11 @@
AC_INIT(popt.h)
+AM_INIT_AUTOMAKE(popt, 1.1.1)
+AM_CONFIG_HEADER(config.h)
AC_PROG_CC
AC_GCC_TRADITIONAL
+AM_C_PROTOTYPES
+
AC_PROG_RANLIB
AC_PROG_INSTALL
@@ -47,6 +51,7 @@ if test -d /usr/ucblib ; then
else
AC_MSG_RESULT(no)
fi
+
AC_CHECK_FUNCS(strerror)
AC_CHECK_FUNC(setreuid, [], [
AC_CHECK_LIB(ucb, setreuid, [if echo $LIBS | grep -- -lucb >/dev/null ;then :; else LIBS="$LIBS -lc -lucb" USEUCB=y;fi])
diff --git a/popt/stamp-h b/popt/stamp-h
new file mode 100644
index 000000000..9788f7023
--- /dev/null
+++ b/popt/stamp-h
@@ -0,0 +1 @@
+timestamp
diff --git a/popt/stamp-h.in b/popt/stamp-h.in
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/popt/stamp-h.in
diff --git a/scripts/Makefile.am b/scripts/Makefile.am
new file mode 100644
index 000000000..212ec8cca
--- /dev/null
+++ b/scripts/Makefile.am
@@ -0,0 +1,11 @@
+# Makefile for rpm scripts.
+
+AUTOMAKE_OPTIONS = 1.2 foreign
+
+installprefix = $(DESTDIR)
+
+all:
+
+configdir = ${prefix}/lib/rpm
+config_SCRIPTS = find-lang.sh freshen.sh
+
diff --git a/scripts/Makefile.in b/scripts/Makefile.in
index 2bebf30b6..8f3e3b4cf 100644
--- a/scripts/Makefile.in
+++ b/scripts/Makefile.in
@@ -1,16 +1,245 @@
+# Makefile.in generated automatically by automake 1.3 from Makefile.am
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+# Makefile for rpm scripts.
+
+
+SHELL = /bin/sh
+
srcdir = @srcdir@
-VPATH = @srcdir@
top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+infodir = @infodir@
+mandir = @mandir@
+includedir = @includedir@
+oldincludedir = /usr/include
+
+DISTDIR =
+
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+
+top_builddir = ..
-INSTALL= @INSTALL@
-INSTALL_PROGRAM= @INSTALL_PROGRAM@
-INSTALL_DATA= @INSTALL_DATA@
+ACLOCAL = @ACLOCAL@
+AUTOCONF = @AUTOCONF@
+AUTOMAKE = @AUTOMAKE@
+AUTOHEADER = @AUTOHEADER@
-SCRIPTS= freshen.sh find-lang.sh
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+transform = @program_transform_name@
-include ../Makefile.inc
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+host_alias = @host_alias@
+host_triplet = @host@
+AR = @AR@
+AWK = @AWK@
+BZIP2BIN = @BZIP2BIN@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CPP = @CPP@
+DATADIRNAME = @DATADIRNAME@
+FIXPERMS = @FIXPERMS@
+GENCAT = @GENCAT@
+GETTEXTSTUB = @GETTEXTSTUB@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+GT_NO = @GT_NO@
+GT_YES = @GT_YES@
+GZIPBIN = @GZIPBIN@
+INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INCPATH = @INCPATH@
+INSTOBJEXT = @INSTOBJEXT@
+INTLDEF = @INTLDEF@
+INTLDEPS = @INTLDEPS@
+INTLLIBS = @INTLLIBS@
+INTLOBJS = @INTLOBJS@
+LDFLAGS_STATIC = @LDFLAGS_STATIC@
+LIBDL = @LIBDL@
+LIBINTL = @LIBINTL@
+LIBMISC = @LIBMISC@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+MAKEINFO = @MAKEINFO@
+MISCDIR = @MISCDIR@
+MISCPATH = @MISCPATH@
+MKDIR = @MKDIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+PACKAGE = @PACKAGE@
+PO = @PO@
+POFILES = @POFILES@
+POSUB = @POSUB@
+RANLIB = @RANLIB@
+ROOT_GROUP = @ROOT_GROUP@
+RPM = @RPM@
+RPMCONFIGDIR = @RPMCONFIGDIR@
+TARGET = @TARGET@
+U = @U@
+USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+l = @l@
+tmpdir = @tmpdir@
+topdir = @topdir@
+topsrcdir = @topsrcdir@
+varprefix = @varprefix@
-install:
- for n in $(SCRIPTS); do \
- $(INSTALL_DATA) -m 755 $$n $(installprefix)/$(RPMCONFIGDIR); \
+AUTOMAKE_OPTIONS = 1.2 foreign
+
+installprefix = $(DESTDIR)
+
+configdir = ${prefix}/lib/rpm
+config_SCRIPTS = find-lang.sh freshen.sh
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = ../config.h
+CONFIG_CLEAN_FILES =
+SCRIPTS = $(config_SCRIPTS)
+
+DIST_COMMON = Makefile.am Makefile.in
+
+
+DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+
+TAR = tar
+GZIP = --best
+all: Makefile $(SCRIPTS)
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+ cd $(top_srcdir) && $(AUTOMAKE) --foreign scripts/Makefile
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+
+install-configSCRIPTS: $(config_SCRIPTS)
+ @$(NORMAL_INSTALL)
+ $(mkinstalldirs) $(DESTDIR)$(configdir)
+ @list='$(config_SCRIPTS)'; for p in $$list; do \
+ if test -f $$p; then \
+ echo " $(INSTALL_SCRIPT) $$p $(DESTDIR)$(configdir)/`echo $$p|sed '$(transform)'`"; \
+ $(INSTALL_SCRIPT) $$p $(DESTDIR)$(configdir)/`echo $$p|sed '$(transform)'`; \
+ else if test -f $(srcdir)/$$p; then \
+ echo " $(INSTALL_SCRIPT) $(srcdir)/$$p $(DESTDIR)$(configdir)/`echo $$p|sed '$(transform)'`"; \
+ $(INSTALL_SCRIPT) $(srcdir)/$$p $(DESTDIR)$(configdir)/`echo $$p|sed '$(transform)'`; \
+ else :; fi; fi; \
done
+
+uninstall-configSCRIPTS:
+ @$(NORMAL_UNINSTALL)
+ list='$(config_SCRIPTS)'; for p in $$list; do \
+ rm -f $(DESTDIR)$(configdir)/`echo $$p|sed '$(transform)'`; \
+ done
+tags: TAGS
+TAGS:
+
+
+distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+
+subdir = scripts
+
+distdir: $(DISTFILES)
+ here=`cd $(top_builddir) && pwd`; \
+ top_distdir=`cd $(top_distdir) && pwd`; \
+ distdir=`cd $(distdir) && pwd`; \
+ cd $(top_srcdir) \
+ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign scripts/Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ test -f $(distdir)/$$file \
+ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
+ || cp -p $$d/$$file $(distdir)/$$file; \
+ done
+info:
+dvi:
+check: all
+ $(MAKE)
+installcheck:
+install-exec:
+ @$(NORMAL_INSTALL)
+
+install-data: install-configSCRIPTS
+ @$(NORMAL_INSTALL)
+
+install: install-exec install-data all
+ @:
+
+uninstall: uninstall-configSCRIPTS
+
+install-strip:
+ $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install
+installdirs:
+ $(mkinstalldirs) $(DATADIR)$(configdir)
+
+
+mostlyclean-generic:
+ -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -rm -f Makefile $(DISTCLEANFILES)
+ -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+ -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+mostlyclean: mostlyclean-generic
+
+clean: clean-generic mostlyclean
+
+distclean: distclean-generic clean
+ -rm -f config.status
+
+maintainer-clean: maintainer-clean-generic distclean
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+
+.PHONY: uninstall-configSCRIPTS install-configSCRIPTS tags distdir info \
+dvi installcheck install-exec install-data install uninstall all \
+installdirs mostlyclean-generic distclean-generic clean-generic \
+maintainer-clean-generic clean mostlyclean distclean maintainer-clean
+
+
+all:
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/stamp-h b/stamp-h
new file mode 100644
index 000000000..9788f7023
--- /dev/null
+++ b/stamp-h
@@ -0,0 +1 @@
+timestamp
diff --git a/stamp-h.in b/stamp-h.in
new file mode 100644
index 000000000..9788f7023
--- /dev/null
+++ b/stamp-h.in
@@ -0,0 +1 @@
+timestamp
diff --git a/tests/Makefile.am b/tests/Makefile.am
new file mode 100644
index 000000000..aed05fff5
--- /dev/null
+++ b/tests/Makefile.am
@@ -0,0 +1,5 @@
+## Process this file with automake to produce Makefile.in.
+
+EXTRA_DIST =
+SUBDIRS = if-test
+
diff --git a/tools/.cvsignore b/tools/.cvsignore
index 3dc277e04..ba1f40dae 100644
--- a/tools/.cvsignore
+++ b/tools/.cvsignore
@@ -1,5 +1,6 @@
-Makefile
+.deps
.depend
+Makefile
rpmlead
dump
rpmheader
diff --git a/tools/Makefile.am b/tools/Makefile.am
new file mode 100644
index 000000000..a19da866f
--- /dev/null
+++ b/tools/Makefile.am
@@ -0,0 +1,15 @@
+# Makefile for rpm tools.
+
+AUTOMAKE_OPTIONS = 1.3 foreign
+
+INCLUDES = -I../build -I../lib -I../intl -I../misc @INCPATH@
+
+LDFLAGS = -L../popt -L../build -L../lib -L../misc
+LDADD = -lrpm
+
+noinst_PROGRAMS = rpmlead rpmheader rpmarchive rpmsignature dump dumpdb
+
+$(PROGRAMS): ../lib/librpm.a
+
+rpmgettext: rpmgettext.o ../build/librpmbuild.a ../popt/libpopt.a ../lib/librpm.a
+
diff --git a/tools/Makefile.in b/tools/Makefile.in
index 9982a2c82..778c3cf2d 100644
--- a/tools/Makefile.in
+++ b/tools/Makefile.in
@@ -1,34 +1,377 @@
+# Makefile.in generated automatically by automake 1.3 from Makefile.am
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+# Makefile for rpm tools.
+
+
+SHELL = /bin/sh
+
srcdir = @srcdir@
-VPATH = @srcdir@
top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+infodir = @infodir@
+mandir = @mandir@
+includedir = @includedir@
+oldincludedir = /usr/include
+
+DISTDIR =
+
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+
+top_builddir = ..
+
+ACLOCAL = @ACLOCAL@
+AUTOCONF = @AUTOCONF@
+AUTOMAKE = @AUTOMAKE@
+AUTOHEADER = @AUTOHEADER@
+
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+transform = @program_transform_name@
+
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+host_alias = @host_alias@
+host_triplet = @host@
+AR = @AR@
+AWK = @AWK@
+BZIP2BIN = @BZIP2BIN@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CPP = @CPP@
+DATADIRNAME = @DATADIRNAME@
+FIXPERMS = @FIXPERMS@
+GENCAT = @GENCAT@
+GETTEXTSTUB = @GETTEXTSTUB@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+GT_NO = @GT_NO@
+GT_YES = @GT_YES@
+GZIPBIN = @GZIPBIN@
+INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INCPATH = @INCPATH@
+INSTOBJEXT = @INSTOBJEXT@
+INTLDEF = @INTLDEF@
+INTLDEPS = @INTLDEPS@
+INTLLIBS = @INTLLIBS@
+INTLOBJS = @INTLOBJS@
+LDFLAGS_STATIC = @LDFLAGS_STATIC@
+LIBDL = @LIBDL@
+LIBINTL = @LIBINTL@
+LIBMISC = @LIBMISC@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+MAKEINFO = @MAKEINFO@
+MISCDIR = @MISCDIR@
+MISCPATH = @MISCPATH@
+MKDIR = @MKDIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+PACKAGE = @PACKAGE@
+PO = @PO@
+POFILES = @POFILES@
+POSUB = @POSUB@
+RANLIB = @RANLIB@
+ROOT_GROUP = @ROOT_GROUP@
+RPM = @RPM@
+RPMCONFIGDIR = @RPMCONFIGDIR@
+TARGET = @TARGET@
+U = @U@
+USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+l = @l@
+tmpdir = @tmpdir@
+topdir = @topdir@
+topsrcdir = @topsrcdir@
+varprefix = @varprefix@
+
+AUTOMAKE_OPTIONS = 1.3 foreign
+
+INCLUDES = -I../build -I../lib -I../intl -I../misc @INCPATH@
+
+LDFLAGS = -L../popt -L../build -L../lib -L../misc
+LDADD = -lrpm
+
+noinst_PROGRAMS = rpmlead rpmheader rpmarchive rpmsignature dump dumpdb
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = ../config.h
+CONFIG_CLEAN_FILES =
+PROGRAMS = $(noinst_PROGRAMS)
+
+
+DEFS = @DEFS@ -I. -I$(srcdir) -I..
+CPPFLAGS = @CPPFLAGS@
+rpmlead_SOURCES = rpmlead.c
+rpmlead_OBJECTS = rpmlead.o
+rpmlead_LDADD = $(LDADD)
+rpmlead_DEPENDENCIES =
+rpmlead_LDFLAGS =
+rpmheader_SOURCES = rpmheader.c
+rpmheader_OBJECTS = rpmheader.o
+rpmheader_LDADD = $(LDADD)
+rpmheader_DEPENDENCIES =
+rpmheader_LDFLAGS =
+rpmarchive_SOURCES = rpmarchive.c
+rpmarchive_OBJECTS = rpmarchive.o
+rpmarchive_LDADD = $(LDADD)
+rpmarchive_DEPENDENCIES =
+rpmarchive_LDFLAGS =
+rpmsignature_SOURCES = rpmsignature.c
+rpmsignature_OBJECTS = rpmsignature.o
+rpmsignature_LDADD = $(LDADD)
+rpmsignature_DEPENDENCIES =
+rpmsignature_LDFLAGS =
+dump_SOURCES = dump.c
+dump_OBJECTS = dump.o
+dump_LDADD = $(LDADD)
+dump_DEPENDENCIES =
+dump_LDFLAGS =
+dumpdb_SOURCES = dumpdb.c
+dumpdb_OBJECTS = dumpdb.o
+dumpdb_LDADD = $(LDADD)
+dumpdb_DEPENDENCIES =
+dumpdb_LDFLAGS =
+CFLAGS = @CFLAGS@
+COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
+LINK = $(CC) $(CFLAGS) $(LDFLAGS) -o $@
+DIST_COMMON = Makefile.am Makefile.in
+
+
+DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+
+TAR = tar
+GZIP = --best
+DEP_FILES = .deps/dump.P .deps/dumpdb.P .deps/rpmarchive.P \
+.deps/rpmheader.P .deps/rpmlead.P .deps/rpmsignature.P
+SOURCES = rpmlead.c rpmheader.c rpmarchive.c rpmsignature.c dump.c dumpdb.c
+OBJECTS = rpmlead.o rpmheader.o rpmarchive.o rpmsignature.o dump.o dumpdb.o
+
+all: Makefile $(PROGRAMS)
+
+.SUFFIXES:
+.SUFFIXES: .S .c .o .s
+$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+ cd $(top_srcdir) && $(AUTOMAKE) --foreign tools/Makefile
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+
+mostlyclean-noinstPROGRAMS:
+
+clean-noinstPROGRAMS:
+ -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS)
+
+distclean-noinstPROGRAMS:
+
+maintainer-clean-noinstPROGRAMS:
+
+.s.o:
+ $(COMPILE) -c $<
+
+.S.o:
+ $(COMPILE) -c $<
+
+mostlyclean-compile:
+ -rm -f *.o core *.core
+
+clean-compile:
+
+distclean-compile:
+ -rm -f *.tab.c
+
+maintainer-clean-compile:
+
+rpmlead: $(rpmlead_OBJECTS) $(rpmlead_DEPENDENCIES)
+ @rm -f rpmlead
+ $(LINK) $(rpmlead_LDFLAGS) $(rpmlead_OBJECTS) $(rpmlead_LDADD) $(LIBS)
+
+rpmheader: $(rpmheader_OBJECTS) $(rpmheader_DEPENDENCIES)
+ @rm -f rpmheader
+ $(LINK) $(rpmheader_LDFLAGS) $(rpmheader_OBJECTS) $(rpmheader_LDADD) $(LIBS)
+
+rpmarchive: $(rpmarchive_OBJECTS) $(rpmarchive_DEPENDENCIES)
+ @rm -f rpmarchive
+ $(LINK) $(rpmarchive_LDFLAGS) $(rpmarchive_OBJECTS) $(rpmarchive_LDADD) $(LIBS)
+
+rpmsignature: $(rpmsignature_OBJECTS) $(rpmsignature_DEPENDENCIES)
+ @rm -f rpmsignature
+ $(LINK) $(rpmsignature_LDFLAGS) $(rpmsignature_OBJECTS) $(rpmsignature_LDADD) $(LIBS)
+
+dump: $(dump_OBJECTS) $(dump_DEPENDENCIES)
+ @rm -f dump
+ $(LINK) $(dump_LDFLAGS) $(dump_OBJECTS) $(dump_LDADD) $(LIBS)
+
+dumpdb: $(dumpdb_OBJECTS) $(dumpdb_DEPENDENCIES)
+ @rm -f dumpdb
+ $(LINK) $(dumpdb_LDFLAGS) $(dumpdb_OBJECTS) $(dumpdb_LDADD) $(LIBS)
+
+tags: TAGS
+
+ID: $(HEADERS) $(SOURCES) $(LISP)
+ here=`pwd` && cd $(srcdir) \
+ && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS)'; \
+ unique=`for i in $$list; do echo $$i; done | \
+ awk ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
+ || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
+
+mostlyclean-tags:
+
+clean-tags:
+
+distclean-tags:
+ -rm -f TAGS ID
+
+maintainer-clean-tags:
+
+distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+
+subdir = tools
+
+distdir: $(DISTFILES)
+ here=`cd $(top_builddir) && pwd`; \
+ top_distdir=`cd $(top_distdir) && pwd`; \
+ distdir=`cd $(distdir) && pwd`; \
+ cd $(top_srcdir) \
+ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign tools/Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ test -f $(distdir)/$$file \
+ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
+ || cp -p $$d/$$file $(distdir)/$$file; \
+ done
+
+DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
+
+-include $(DEP_FILES)
+
+mostlyclean-depend:
+
+clean-depend:
+
+distclean-depend:
+
+maintainer-clean-depend:
+ -rm -rf .deps
+
+%.o: %.c
+ @echo '$(COMPILE) -c $<'; \
+ $(COMPILE) -Wp,-MD,.deps/$(*F).P -c $<
+
+%.lo: %.c
+ @echo '$(LTCOMPILE) -c $<'; \
+ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).p -c $<
+ @-sed -e 's/^\([^:]*\)\.o:/\1.lo \1.o:/' \
+ < .deps/$(*F).p > .deps/$(*F).P
+ @-rm -f .deps/$(*F).p
+info:
+dvi:
+check: all
+ $(MAKE)
+installcheck:
+install-exec:
+ @$(NORMAL_INSTALL)
+
+install-data:
+ @$(NORMAL_INSTALL)
+
+install: install-exec install-data all
+ @:
+
+uninstall:
+
+install-strip:
+ $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install
+installdirs:
+
+
+mostlyclean-generic:
+ -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
-include ../Makefile.inc
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-PROGS = rpmlead rpmheader rpmarchive rpmsignature dump dumpdb
-LOADLIBES = @LIBS@ @LIBMISC@ @LIBINTL@
+distclean-generic:
+ -rm -f Makefile $(DISTCLEANFILES)
+ -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-TARGET=everything
+maintainer-clean-generic:
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+ -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+mostlyclean: mostlyclean-noinstPROGRAMS mostlyclean-compile \
+ mostlyclean-tags mostlyclean-depend mostlyclean-generic
-all: $(TARGET)
+clean: clean-noinstPROGRAMS clean-compile clean-tags clean-depend \
+ clean-generic mostlyclean
-everything: $(PROGS)
+distclean: distclean-noinstPROGRAMS distclean-compile distclean-tags \
+ distclean-depend distclean-generic clean
+ -rm -f config.status
-clean:
- rm -f *.a *.o core *~ $(PROGS)
+maintainer-clean: maintainer-clean-noinstPROGRAMS \
+ maintainer-clean-compile maintainer-clean-tags \
+ maintainer-clean-depend maintainer-clean-generic \
+ distclean
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
-distclean: clean
- rm -f Makefile
+.PHONY: mostlyclean-noinstPROGRAMS distclean-noinstPROGRAMS \
+clean-noinstPROGRAMS maintainer-clean-noinstPROGRAMS \
+mostlyclean-compile distclean-compile clean-compile \
+maintainer-clean-compile tags mostlyclean-tags distclean-tags \
+clean-tags maintainer-clean-tags distdir mostlyclean-depend \
+distclean-depend clean-depend maintainer-clean-depend info dvi \
+installcheck install-exec install-data install uninstall all \
+installdirs mostlyclean-generic distclean-generic clean-generic \
+maintainer-clean-generic clean mostlyclean distclean maintainer-clean
-depend:
- topdir_path=`( cd $(top_srcdir) && pwd )` ; \
- /bin/rm -f .depend ; \
- $(CPP) $(CFLAGS) -MM $(srcdir)/*.c | \
- sed s+$$topdir_path+$(top_srcdir)+g > .depend
-$(PROGS): ../lib/librpm.a
+$(PROGRAMS): ../lib/librpm.a
rpmgettext: rpmgettext.o ../build/librpmbuild.a ../popt/libpopt.a ../lib/librpm.a
-ifeq (.depend,$(wildcard .depend))
-include .depend
-endif
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT: