From: jbj Date: Thu, 17 Jun 1999 21:35:34 +0000 (+0000) Subject: MiNT port (Guido Flohr ). X-Git-Tag: rpm-4.4-release~2828 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=bafb62fbb0e8d912fe372f776be9280df76e6679;p=platform%2Fupstream%2Frpm.git MiNT port (Guido Flohr ). CVS patchset: 3096 CVS date: 1999/06/17 21:35:34 --- diff --git a/CHANGES b/CHANGES index 903d420..5237b18 100644 --- a/CHANGES +++ b/CHANGES @@ -14,6 +14,7 @@ - common parse for all dependency token syntax. - eliminate find-requirements on libNoVersion (Red Hat linux only). - add new-fangled requires on "libc.so.6(GLIBC_2.1)" (sparc-linux only). + - MiNT port (Guido Flohr ). 3.0 -> 3.0.1 - fix: %verifyscript resurrected (Shing-Gene Yung). diff --git a/Makefile.am b/Makefile.am index 481066b..9b121d5 100644 --- a/Makefile.am +++ b/Makefile.am @@ -58,7 +58,8 @@ rpm2cpio_SOURCES = rpm2cpio.c rpm2cpio_LDADD = $(mylibs) rpmconvert_SOURCES = convertdb.c oldrpmdb.c -rpmconvert_LDADD = $(mylibs) -lgdbm +## Libmisc.a is required for rpmconvert. +rpmconvert_LDADD = $(mylibs) @LIBMISC@ -lgdbm install-data-local: @$(mkinstalldirs) $(DESTDIR)$(varprefix)/lib/rpm @@ -73,7 +74,13 @@ install-data-local: sparc*) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/sparc ;;\ powerpc*) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/ppc ;;\ esac - @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/@build_cpu@ + @case "@build_os@" in \ + mint) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/m68kmint ;; \ + esac + @case "@build_os@" in \ + mint) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/m68kmint ;;\ + *) @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/@build_cpu@ ;;\ + esac @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/noarch @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/SOURCES @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/SPECS diff --git a/autodeps/mint.prov b/autodeps/mint.prov new file mode 100644 index 0000000..a752f8f --- /dev/null +++ b/autodeps/mint.prov @@ -0,0 +1,5 @@ +#!/bin/sh +# +# No shared libs on MiNT yet, sigh. + +echo > /dev/null diff --git a/autodeps/mint.req b/autodeps/mint.req new file mode 100644 index 0000000..a752f8f --- /dev/null +++ b/autodeps/mint.req @@ -0,0 +1,5 @@ +#!/bin/sh +# +# No shared libs on MiNT yet, sigh. + +echo > /dev/null diff --git a/build/build.c b/build/build.c index f830a32..c0c7764 100644 --- a/build/build.c +++ b/build/build.c @@ -83,7 +83,9 @@ int doScript(Spec spec, int what, const char *name, StringBuf sb, int test) rpmError(RPMERR_SCRIPT, _("Unable to open temp file")); return RPMERR_SCRIPT; } +#ifdef HAVE_FCHMOD (void)fchmod(fdFileno(fd), 0600); +#endif f = fdFdopen(fd, "w"); strcpy(buf, _preScriptEnvironment); diff --git a/configure.in b/configure.in index ec5f853..7f58c5b 100644 --- a/configure.in +++ b/configure.in @@ -255,6 +255,16 @@ AC_CHECK_FUNC(socket, [], [ AC_CHECK_LIB(socket, socket, [LIBS="$LIBS -lsocket"]) ]) +dnl Better not use fchmod at all. +AC_CHECK_FUNC(fchmod) + +dnl Temporary hack for MiNT. Some functions (writev, snprintf) are +dnl not in the libc but in libport (for political reasons). This check +dnl can hopefully be removed soon. Please use the default action +dnl for this macro (not LIBS=...), otherwise the check for dbopen +dnl will fail. +AC_CHECK_LIB(port, writev) + AC_CHECK_FUNC(dbopen, [], AC_CHECK_LIB(db1, dbopen, [], AC_CHECK_LIB(db, dbopen, [], @@ -725,6 +735,9 @@ armv4b*) RPMCANONARCH=armv4b ;; arm*) RPMCANONARCH=arm ;; *) RPMCANONARCH=unknown ;; esac +case "${build_os_noversion}" in +mint) RPMCANONARCH=m68kmint ;; +esac RPMCANONVENDOR="$build_vendor" case "${build_vendor}" in unknown|pc) test -f /etc/redhat-release && RPMCANONVENDOR=redhat ;; diff --git a/ftp.c b/ftp.c index ebccc61..ae46b19 100644 --- a/ftp.c +++ b/ftp.c @@ -46,6 +46,15 @@ int inet_aton(const char *cp, struct in_addr *inp); #include "url.h" #include "ftp.h" +#ifdef __MINT__ +# ifndef EAGAIN +# define EAGAIN EWOULDBLOCK +# endif +# ifndef O_NONBLOCK +# define O_NONBLOCK O_NDELAY +# endif +#endif + static int ftpDebug = 0; static int ftpTimeoutSecs = TIMEOUT_SECS; static int httpTimeoutSecs = TIMEOUT_SECS; diff --git a/rpm.c b/rpm.c index 45d7ac2..76ee2d7 100755 --- a/rpm.c +++ b/rpm.c @@ -155,6 +155,11 @@ static struct poptOption optionsTable[] = { { 0, 0, 0, 0, 0, NULL, NULL } }; +#ifdef __MINT__ +/* MiNT cannot dynamically increase the stack. */ +long _stksize = 64 * 1024L; +#endif + static void argerror(char * desc) { fprintf(stderr, _("rpm: %s\n"), desc); exit(EXIT_FAILURE); diff --git a/rpmrc.in b/rpmrc.in index fa9ab54..7ea62e5 100644 --- a/rpmrc.in +++ b/rpmrc.in @@ -1,4 +1,4 @@ -# $Id: rpmrc.in,v 2.11 1999/06/09 19:06:48 jbj Exp $ +# $Id: rpmrc.in,v 2.12 1999/06/17 21:35:40 jbj Exp $ ############################################################# @@ -22,6 +22,13 @@ optflags: mipseb -O2 optflags: mipsel -O2 optflags: armv4b -O2 -fsigned-char -fomit-frame-pointer optflags: armv4l -O2 -fsigned-char -fomit-frame-pointer +optflags: atarist -O2 -fomit-frame-pointer +optflags: atariste -O2 -fomit-frame-pointer +optflags: ataritt -O2 -fomit-frame-pointer +optflags: falcon -O2 -fomit-frame-pointer +optflags: atariclone -O2 -fomit-frame-pointer +optflags: milan -O2 -fomit-frame-pointer +optflags: hades -O2 -fomit-frame-pointer ############################################################# # Canonical arch names and numbers @@ -54,6 +61,15 @@ arch_canon: mipsel: mipsel 11 arch_canon: armv4b: armv4b 12 arch_canon: armv4l: armv4l 12 +arch_canon: m68kmint: m68kmint 13 +arch_canon: atarist: m68kmint 13 +arch_canon: atariste: m68kmint 13 +arch_canon: ataritt: m68kmint 13 +arch_canon: falcon: m68kmint 13 +arch_canon: atariclone: m68kmint 13 +arch_canon: milan: m68kmint 13 +arch_canon: hades: m68kmint 13 + ############################################################# # Canonical OS names and numbers @@ -78,6 +94,7 @@ os_canon: machten: machten 13 os_canon: CYGWIN32_NT: cygwin32 14 os_canon: CYGWIN32_95: cygwin32 15 os_canon: UNIX_SV: MP_RAS: 16 +os_canon: MiNT: FreeMiNT 17 ############################################################# # For a given uname().machine, the default build arch @@ -107,6 +124,14 @@ buildarchtranslate: sun4d: sparc buildarchtranslate: sun4m: sparc buildarchtranslate: sun4u: sparc64 +buildarchtranslate: atarist: m68kmint +buildarchtranslate: atariste: m68kmint +buildarchtranslate: ataritt: m68kmint +buildarchtranslate: falcon: m68kmint +buildarchtranslate: atariclone: m68kmint +buildarchtranslate: milan: m68kmint +buildarchtranslate: hades: m68kmint + ############################################################# # Architecture compatibility @@ -153,6 +178,14 @@ arch_compat: parisc: noarch arch_compat: armv4b: noarch arch_compat: armv4l: noarch +arch_compat: atarist: m68kmint noarch +arch_compat: atariste: m68kmint noarch +arch_compat: ataritt: m68kmint noarch +arch_compat: falcon: m68kmint noarch +arch_compat: atariclone: m68kmint noarch +arch_compat: milan: m68kmint noarch +arch_compat: hades: m68kmint noarch + os_compat: IRIX64: IRIX os_compat: solaris2.7: solaris2.3 solaris2.4 solaris2.5 solaris2.6 os_compat: solaris2.6: solaris2.3 solaris2.4 solaris2.5 @@ -172,6 +205,11 @@ os_compat: osf4.0: osf3.2 os_compat: ncr-sysv4.3: ncr-sysv4.2 +os_compat: FreeMiNT: mint MiNT TOS +os_compat: MiNT: FreeMiNT mint TOS +os_compat: mint: FreeMiNT MiNT TOS +os_compat: TOS: FreeMiNT MiNT mint + buildarch_compat: i986: i886 buildarch_compat: i886: i786 buildarch_compat: i786: i686 @@ -195,9 +233,18 @@ buildarch_compat: armv4b: noarch buildarch_compat: armv4l: noarch buildarch_compat: parisc: noarch +buildarch_compat: atarist: m68kmint noarch +buildarch_compat: atariste: m68kmint noarch +buildarch_compat: ataritt: m68kmint noarch +buildarch_compat: falcon: m68kmint noarch +buildarch_compat: atariclone: m68kmint noarch +buildarch_compat: milan: m68kmint noarch +buildarch_compat: hades: m68kmint noarch + ############################################################# #macrofiles: @RPMCONFIGDIR@/macros:@SYSCONFIGDIR@/macros:~/.rpmmacros macrofiles: @RPMCONFIGDIR@/macros:@RPMCONFIGDIR@/%{_target}/macros:@SYSCONFIGDIR@/macros:@SYSCONFIGDIR@/%{_target}/macros:~/.rpmmacros #include: @RPMCONFIGDIR@/%{_target}/rpmrc + diff --git a/tools/Makefile.am b/tools/Makefile.am index 1057029..2508fd3 100644 --- a/tools/Makefile.am +++ b/tools/Makefile.am @@ -31,4 +31,8 @@ rpmgettext_LDADD = $(mylibs) @LIBMISC@ rpmputtext_SOURCES = rpmgettext.c rpmputtext_LDADD = $(mylibs) @LIBMISC@ +## Dumpdb requires fprint.o (in libmisc) and this requires realpath +## (from libmisc). +dumpdb_LDADD = $(mylibs) @LIBMISC@ + $(PROGRAMS): $(mylibs)