aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/conf-riscos
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/conf-riscos')
-rw-r--r--scripts/conf-riscos/Makefile465
-rw-r--r--scripts/conf-riscos/cipher/construct.c38
-rw-r--r--scripts/conf-riscos/cipher/constructv.c32
-rw-r--r--scripts/conf-riscos/include/config.h384
-rw-r--r--scripts/conf-riscos/include/g10defs.h41
5 files changed, 960 insertions, 0 deletions
diff --git a/scripts/conf-riscos/Makefile b/scripts/conf-riscos/Makefile
new file mode 100644
index 000000000..3461fa196
--- /dev/null
+++ b/scripts/conf-riscos/Makefile
@@ -0,0 +1,465 @@
+# Makefile for the RISC OS version of GnuPG
+CC=cc
+LINK=link
+AS=objasm
+MAKE=amu
+DEPEND=-depend !Depend
+LIBLDAP=^.^.openldap-2/0/18
+CC_FLAGS=-Wp -apcs 3/26bit/fpe2 -throwback -Otime -IUnix:,include,mpi,intl,zlib,$(LIBLDAP).include -JUnix: -D__riscos__ -DHAVE_CONFIG_H -DNO_ASM -UIS_MODULE -DVERSION="\"$(GnuPG$Version)\"" $(GnuPG$DevDefine)
+AS_FLAGS=-apcs 3/26bit/fpe2 -throwback -predefine "ARMv4 SETA 0"
+LD_FLAGS=Unix:o.unixlib
+CIPHER_OBJS=cipher.o.blowfish \
+ cipher.o.cast5 \
+ cipher.o.cipher \
+ cipher.o.construct \
+ cipher.o.des \
+ cipher.o.dsa \
+ cipher.o.dynload \
+ cipher.o.elgamal \
+ cipher.o.g10c \
+ cipher.o.md \
+ cipher.o.md5 \
+ cipher.o.primegen \
+ cipher.o.pubkey \
+ cipher.o.random \
+ cipher.o.rijndael \
+ cipher.o.rmd160 \
+ cipher.o.rndriscos \
+ cipher.o.rsa \
+ cipher.o.sha1 \
+ cipher.o.smallprime \
+ cipher.o.tiger32 \
+ cipher.o.twofish
+GETTEXT_OBJS=intl.o.bindtextdom \
+ intl.o.dcgettext \
+ intl.o.dgettext \
+ intl.o.explodename \
+ intl.o.finddomain \
+ intl.o.gettext \
+ intl.o.intl-compat \
+ intl.o.l10nflist \
+ intl.o.loadmsgcat \
+ intl.o.localealias \
+ intl.o.textdomain
+MPI_OBJS=mpi.o.mpi-add \
+ mpi.o.mpi-bit \
+ mpi.o.mpi-cmp \
+ mpi.o.mpi-div \
+ mpi.o.mpi-gcd \
+ mpi.o.mpi-inline \
+ mpi.o.mpi-inv \
+ mpi.o.mpi-mul \
+ mpi.o.mpi-pow \
+ mpi.o.mpi-mpow \
+ mpi.o.mpi-scan \
+ mpi.o.mpicoder \
+ mpi.o.mpih-div \
+ mpi.o.mpih-mul \
+ mpi.o.mpiutil \
+ mpi.o.g10m \
+ mpi.arm.o.mpih
+UTIL_OBJS=util.o.argparse \
+ util.o.dotlock \
+ util.o.errors \
+ util.o.fileutil \
+ util.o.g10u \
+ util.o.http \
+ util.o.iobuf \
+ util.o.logger \
+ util.o.memory \
+ util.o.miscutil \
+ util.o.secmem \
+ util.o.strgutil \
+ util.o.ttyio \
+ util.o.riscos
+ZLIB_OBJS=zlib.o.adler32 \
+ zlib.o.compress \
+ zlib.o.crc32 \
+ zlib.o.deflate \
+ zlib.o.infblock \
+ zlib.o.infcodes \
+ zlib.o.inffast \
+ zlib.o.inflate \
+ zlib.o.inftrees \
+ zlib.o.infutil \
+ zlib.o.trees \
+ zlib.o.uncompr \
+ zlib.o.zutil
+G10_OBJS=g10.o.armor \
+ g10.o.build-packet \
+ g10.o.cipher \
+ g10.o.comment \
+ g10.o.compress \
+ g10.o.dearmor \
+ g10.o.decrypt \
+ g10.o.delkey \
+ g10.o.encode \
+ g10.o.encr-data \
+ g10.o.exec \
+ g10.o.export \
+ g10.o.free-packet \
+ g10.o.g10 \
+ g10.o.getkey \
+ g10.o.helptext \
+ g10.o.hkp \
+ g10.o.import \
+ g10.o.kbnode \
+ g10.o.keydb \
+ g10.o.keyedit \
+ g10.o.keygen \
+ g10.o.keyid \
+ g10.o.keylist \
+ g10.o.keyring \
+ g10.o.keyserver \
+ g10.o.mainproc \
+ g10.o.mdfilter \
+ g10.o.misc \
+ g10.o.mkdtemp \
+ g10.o.openfile \
+ g10.o.parse-packet \
+ g10.o.passphrase \
+ g10.o.photoid \
+ g10.o.pipemode \
+ g10.o.pkclist \
+ g10.o.plaintext \
+ g10.o.pubkey-enc \
+ g10.o.revoke \
+ g10.o.seckey-cert \
+ g10.o.seskey \
+ g10.o.sig-check \
+ g10.o.sign \
+ g10.o.signal \
+ g10.o.skclist \
+ g10.o.status \
+ g10.o.tdbdump \
+ g10.o.tdbio \
+ g10.o.textfilter \
+ g10.o.trustdb \
+ g10.o.verify
+GPGV_OBJS=g10.o.armor \
+ g10.o.build-packet \
+ g10.o.compress \
+ g10.o.free-packet \
+ g10.o.getkey \
+ g10.o.gpgv \
+ g10.o.keydb \
+ g10.o.keylist \
+ g10.o.kbnode \
+ g10.o.keyid \
+ g10.o.keyring \
+ g10.o.mainproc \
+ g10.o.mdfilter \
+ g10.o.misc \
+ g10.o.openfile \
+ g10.o.parse-packet \
+ g10.o.plaintext \
+ g10.o.seskey \
+ g10.o.sig-check \
+ g10.o.signal \
+ g10.o.status \
+ g10.o.textfilter \
+ g10.o.verify \
+ util.o.argparse \
+ util.o.errors \
+ util.o.fileutil \
+ util.o.g10u \
+ util.o.iobuf \
+ util.o.logger \
+ util.o.memory \
+ util.o.miscutil \
+ util.o.secmem \
+ util.o.strgutil \
+ util.o.riscos \
+ cipher.o.constructv \
+ cipher.o.dsa \
+ cipher.o.dynload \
+ cipher.o.elgamal \
+ cipher.o.g10c \
+ cipher.o.md \
+ cipher.o.pubkey \
+ cipher.o.rmd160 \
+ cipher.o.rsa \
+ mpi.mpi \
+ zlib.zlib
+GPGKEYS_OBJS=util.o.riscos \
+ util.o.strgutil \
+ util.o.memory \
+ util.o.logger \
+ util.o.secmem \
+ intl.gettext
+
+## Rule Patterns ##
+
+.SUFFIXES: .c .o .s
+
+.c.o:
+ $(CC) $(CC_FLAGS) $(DEPEND) -c -o $@ $<
+
+.s.o:
+ $(AS) $(AS_FLAGS) $(DEPEND) $< $@
+
+# Static dependencies:
+
+all:
+ @echo Use one of the following as target:
+ @echo | dev to build the development version
+ @echo | dist to build the distribution with all archives
+ @echo All other targets are internal and shouldn't be used!
+
+cipher.cipher: $(CIPHER_OBJS)
+ $(LINK) -aof $(CIPHER_OBJS) -o cipher.cipher
+
+intl.gettext: $(GETTEXT_OBJS)
+ $(LINK) -aof $(GETTEXT_OBJS) -o intl.gettext
+
+mpi.mpi: $(MPI_OBJS)
+ $(LINK) -aof $(MPI_OBJS) -o mpi.mpi
+
+tools.gpgsplit: tools.o.gpgsplit util.util intl.gettext zlib.zlib
+ $(LINK) $(LD_FLAGS) tools.o.gpgsplit util.util intl.gettext zlib.zlib -o tools.gpgsplit
+ -squeeze tools.gpgsplit
+ -copy tools.gpgsplit ADFS::A5.$.tmp.!GnuPG.gpgsplit ~CF~V
+
+keyserver.gpgkeys_ldap: keyserver.o.gpgkeys_ldap $(GPGKEYS_OBJS) $(LIBLDAP).libraries.libldap.libldap
+ $(LINK) $(LD_FLAGS) keyserver.o.gpgkeys_ldap $(GPGKEYS_OBJS) $(LIBLDAP).libraries.libldap.libldap -o keyserver.gpgkeys_ldap
+ -squeeze keyserver.gpgkeys_ldap
+ -copy keyserver.gpgkeys_ldap ADFS::A5.$.tmp.!GnuPG.gpgkeys_ldap ~CF~V
+
+riscos.jpegview.jpegview:
+ -dir riscos.jpegview
+ -$(MAKE)
+ -back
+
+util.util: $(UTIL_OBJS)
+ $(LINK) -aof $(UTIL_OBJS) -o util.util
+
+zlib.zlib: $(ZLIB_OBJS)
+ $(LINK) -aof zlib.o.* -o zlib.zlib
+
+g10.gpg: $(G10_OBJS) cipher.o.idea cipher.cipher intl.gettext mpi.mpi util.util zlib.zlib BUILD
+ $(LINK) $(G10_OBJS) $(LD_FLAGS) cipher.o.idea cipher.cipher intl.gettext mpi.mpi util.util zlib.zlib -o g10.gpg
+ -copy g10.gpg ADFS::A5.$.tmp.!GnuPG.gpg ~CFR~V
+
+g10.gpgv: $(GPGV_OBJS) intl.gettext BUILD
+ $(LINK) $(GPGV_OBJS) intl.gettext $(LD_FLAGS) -o g10.gpgv
+ -copy g10.gpgv ADFS::A5.$.tmp.!GnuPG.gpgv ~CFR~V
+
+g10.gpgpart: $(G10_OBJS) cipher.cipher intl.gettext mpi.mpi util.util zlib.zlib BUILD
+ drlink034 -aof $(G10_OBJS) $(LD_FLAGS) cipher.cipher intl.gettext mpi.mpi util.util zlib.zlib -o g10.gpgpart
+
+select-idea-src:
+ -copy distrib.idea-addon.cipher.c.idea cipher.c.idea ~CF~NR~V
+ $(CC) $(CC_FLAGS) $(DEPEND) -c -o cipher.o.idea cipher.c.idea
+
+select-gpl-src:
+ -copy distrib.non-idea.cipher.c.idea cipher.c.idea ~CF~NR~V
+ $(CC) $(CC_FLAGS) $(DEPEND) -c -o cipher.o.idea cipher.c.idea
+
+distrib.gnupgsrc/zip: select-gpl-src
+ -zip -9@ distrib.gnupgsrc/zip < distrib.resources.distfiles
+
+distrib.gnupg/zip: distrib.gpl-bin.!GnuPG.JPEGview distrib.gpl-bin.!GnuPG.gpgsplit distrib.gpl-bin.!GnuPG.gpg distrib.gpl-bin.!GnuPG.gpgv select-gpl-src
+ -copy distrib.resources.History distrib.gpl-bin.History ~CFR~V
+ -copy distrib.resources.Upgrading distrib.gpl-bin.Upgrading ~CFR~V
+ -copy distrib.resources.ReadMe_bin distrib.gpl-bin.!ReadMe1st ~CFR~V
+ -copy distrib.resources.!GnuPG distrib.gpl-bin.!GnuPG ~CFR~V
+ -copy distrib.resources.!GnuPGUser distrib.gpl-bin.!GnuPGUser ~CFR~V
+ -copy distrib.resources.!System distrib.gpl-bin.!System ~CFR~V
+ -copy distrib.resources.orig_docs distrib.gpl-bin.orig_docs ~CFR~V
+ -dir distrib.gpl-bin
+ -zip -r9 ^.gnupg/zip *
+ -back
+
+distrib.gnupgdev/zip: distrib.private.!GnuPG.JPEGview distrib.private.!GnuPG.gpgsplit distrib.private.!GnuPG.gpgkeys_ldap distrib.private.!GnuPG.gpg distrib.private.!GnuPG.gpgv select-idea-src
+ -ifthere distrib.private.!GnuPG.locale then wipe distrib.private.!GnuPG.locale ~CFR~V
+ -copy distrib.intl.!GnuPG.locale distrib.private.!GnuPG.locale ~CFR~V
+ -copy distrib.resources.History distrib.private.History ~CFR~V
+ -copy distrib.resources.Upgrading distrib.private.Upgrading ~CFR~V
+ -copy distrib.resources.ReadMe_bin distrib.private.!ReadMe1st ~CFR~V
+ -copy distrib.resources.!GnuPG distrib.private.!GnuPG ~CFR~V
+ -copy distrib.resources.!GnuPGUser distrib.private.!GnuPGUser ~CFR~V
+ -copy distrib.resources.!System distrib.private.!System ~CFR~V
+ -copy distrib.resources.orig_docs distrib.private.orig_docs ~CFR~V
+ -dir distrib.private
+ -zip -r9 ^.gnupgdev/zip *
+ -back
+
+distrib.gnupgidea/zip: cipher.o.idea select-idea-src
+ -copy distrib.resources.ReadMe_idea distrib.idea-addon.!ReadMe ~CFR~V
+ -copy cipher.o.idea distrib.idea-addon.cipher.o.idea ~CFR~V
+ -dir distrib.idea-addon
+ -zip -r9 ^.gnupgidea/zip *
+ -back
+
+distrib.gnupgpart/zip: g10.gpgpart select-idea-src
+ -copy distrib.resources.ReadMe_part distrib.part.!ReadMe1st ~CFR~V
+ -copy g10.gpgpart distrib.part.g10.gpgpart ~CFR~V
+ -dir distrib.part
+ -zip -r9 ^.gnupgpart/zip *
+ -back
+
+distrib.gnupgldap/zip: keyserver.gpgkeys_ldap
+ -copy distrib.resources.ReadMe_ldap distrib.ldap.!ReadMe ~CFR~V
+ -copy keyserver.gpgkeys_ldap distrib.ldap.!GnuPG.gpgkeys_ldap ~CFR~V
+ -dir distrib.ldap
+ -zip -r9 ^.gnupgldap/zip *
+ -back
+
+distrib.gnupgintl/zip:
+ -dir distrib.intl
+ -zip -r9 ^.gnupgintl/zip *
+ -back
+
+distrib.gpl-bin.!GnuPG.gpg: g10.gpg
+ -copy g10.gpg distrib.gpl-bin.!GnuPG.gpg ~CFR~V
+ -squeeze distrib.gpl-bin.!GnuPG.gpg
+
+distrib.gpl-bin.!GnuPG.gpgv: g10.gpgv
+ -copy g10.gpgv distrib.gpl-bin.!GnuPG.gpgv ~CFR~V
+ -squeeze distrib.gpl-bin.!GnuPG.gpgv
+
+distrib.gpl-bin.!GnuPG.gpgsplit: tools.gpgsplit
+ -copy tools.gpgsplit distrib.gpl-bin.!GnuPG.gpgsplit ~CFR~V
+ -squeeze distrib.gpl-bin.!GnuPG.gpgsplit
+
+distrib.gpl-bin.!GnuPG.JPEGview: riscos.jpegview.jpegview
+ -copy riscos.jpegview.jpegview distrib.gpl-bin.!GnuPG.JPEGview ~CFR~V
+
+distrib.private.!GnuPG.gpg: g10.gpg
+ -copy g10.gpg distrib.private.!GnuPG.gpg ~CFR~V
+ -squeeze distrib.private.!GnuPG.gpg
+
+distrib.private.!GnuPG.gpgv: g10.gpgv
+ -copy g10.gpgv distrib.private.!GnuPG.gpgv ~CFR~V
+ -squeeze distrib.private.!GnuPG.gpgv
+
+distrib.private.!GnuPG.gpgsplit: tools.gpgsplit
+ -copy tools.gpgsplit distrib.private.!GnuPG.gpgsplit ~CFR~V
+ -squeeze distrib.private.!GnuPG.gpgsplit
+
+distrib.private.!GnuPG.gpgkeys_ldap: keyserver.gpgkeys_ldap
+ -copy keyserver.gpgkeys_ldap distrib.private.!GnuPG.gpgkeys_ldap ~CFR~V
+ -squeeze distrib.private.!GnuPG.gpgkeys_ldap
+
+distrib.private.!GnuPG.JPEGview: riscos.jpegview.jpegview
+ -copy riscos.jpegview.jpegview distrib.private.!GnuPG.JPEGview ~CFR~V
+
+clean-cipher:
+ -ifthere cipher.o.* then wipe cipher.o.* ~CFR~V
+ -ifthere cipher.cipher then wipe cipher.cipher ~CFR~V
+
+clean-intl:
+ -ifthere intl.o.* then wipe intl.o.* ~CFR~V
+ -ifthere intl.gettext then wipe intl.gettext ~CFR~V
+
+clean-mpi:
+ -ifthere mpi.o.* then wipe mpi.o.* ~CFR~V
+ -ifthere mpi.arm.o.* then wipe mpi.arm.o.* ~CFR~V
+ -ifthere mpi.mpi then wipe mpi.mpi ~CFR~V
+
+clean-util:
+ -ifthere util.o.* then wipe util.o.* ~CFR~V
+ -ifthere util.util then wipe util.util ~CFR~V
+
+clean-zlib:
+ -ifthere zlib.o.* then wipe zlib.o.* ~CFR~V
+ -ifthere zlib.zlib then wipe zlib.zlib ~CFR~V
+
+clean-dist:
+ -ifthere distrib.*/zip then wipe distrib.*/zip ~CFR~V
+
+clean-g10:
+ -ifthere g10.gpg then wipe g10.gpg ~CFR~V
+ -ifthere g10.gpgv then wipe g10.gpgv ~CFR~V
+ -ifthere g10.gpgpart then wipe g10.gpgpart ~CFR~V
+ -ifthere g10.o.* then wipe g10.o.* ~CFR~V
+
+clean-keyserver:
+ -ifthere keyserver.gpgkeys_* then wipe keyserver.gpgkeys_* ~CFR~V
+ -ifthere keyserver.o.* then wipe keyserver.o.* ~CFR~V
+
+clean-tools:
+ -ifthere tools.gpgsplit then wipe tools.gpgsplit ~CFR~V
+ -ifthere tools.o.* then wipe tools.o.* ~CFR~V
+
+clean-riscos:
+ -ifthere riscos.jpegview.jpegview then wipe riscos.jpegview.jpegview ~CFR~V
+
+clean-version:
+ -ifthere g10.o.armor then wipe g10.o.armor ~CFR~V
+ -ifthere g10.o.encode then wipe g10.o.encode ~CFR~V
+ -ifthere g10.o.g10 then wipe g10.o.g10 ~CFR~V
+ -ifthere g10.o.gpgv then wipe g10.o.gpgv ~CFR~V
+ -ifthere g10.o.keygen then wipe g10.o.keygen ~CFR~V
+ -ifthere g10.o.sign then wipe g10.o.sign ~CFR~V
+ -ifthere g10.gpg then wipe g10.gpg ~CFR~V
+ -ifthere g10.gpgv then wipe g10.gpgv ~CFR~V
+ -ifthere g10.gpgpart then wipe g10.gpgpart ~CFR~V
+
+clean: clean-dist clean-cipher clean-intl clean-mpi clean-util clean-zlib clean-g10 clean-keyserver clean-tools clean-riscos
+
+g10.o.armor: BUILD
+ $(CC) $(CC_FLAGS) $(DEPEND) -c -o g10.o.armor g10.c.armor
+
+g10.o.encode: BUILD
+ $(CC) $(CC_FLAGS) $(DEPEND) -c -o g10.o.encode g10.c.encode
+
+g10.o.g10: BUILD
+ $(CC) $(CC_FLAGS) $(DEPEND) -c -o g10.o.g10 g10.c.g10
+
+g10.o.gpgv: BUILD
+ $(CC) $(CC_FLAGS) $(DEPEND) -c -o g10.o.gpgv g10.c.gpgv
+
+g10.o.keygen: BUILD
+ $(CC) $(CC_FLAGS) $(DEPEND) -c -o g10.o.keygen g10.c.keygen
+
+g10.o.sign: BUILD
+ $(CC) $(CC_FLAGS) $(DEPEND) -c -o g10.o.sign g10.c.sign
+
+dev: clean-version
+ $(MAKE) fast-dev
+
+fast-dev: BUILD
+ setver configure/ac AC_INIT(gnupg, , dev
+ wipe distrib.private.!GnuPG.gpg* ~CFR~V
+ -$(MAKE) keyserver.gpgkeys_ldap
+ $(MAKE) tools.gpgsplit
+ $(MAKE) distrib.gnupgdev/zip
+ ifthere <WebServe$ServeRoot>.private.gnupgdev/zip then wipe <WebServe$ServeRoot>.private.gnupgdev/zip ~CFR~V
+ rename distrib.gnupgdev/zip <WebServe$ServeRoot>.private.gnupgdev/zip
+
+dist: BUILD clean-version tools.gpgsplit
+ setver configure/ac AC_INIT(gnupg, , dist
+ wipe distrib.gpl-bin.!GnuPG.gpg* ~CFR~V
+ $(MAKE) distrib.gnupg/zip
+ $(MAKE) distrib.gnupgidea/zip
+ $(MAKE) distrib.gnupgpart/zip
+ wipe distrib.private.!GnuPG.gpg* ~CFR~V
+ $(MAKE) distrib.gnupgdev/zip
+ $(MAKE) distrib.gnupgsrc/zip
+ $(MAKE) distrib.gnupgintl/zip
+ $(MAKE) distrib.gnupgldap/zip
+ $(MAKE) select-idea-src
+ ifthere <WebServe$ServeRoot>.archives.gnupg/zip then wipe <WebServe$ServeRoot>.archives.gnupg/zip ~CFR~V
+ ifthere <WebServe$ServeRoot>.private.gnupgdev/zip then wipe <WebServe$ServeRoot>.private.gnupgdev/zip ~CFR~V
+ ifthere <WebServe$ServeRoot>.archives.gnupgidea/zip then wipe <WebServe$ServeRoot>.archives.gnupgidea/zip ~CFR~V
+ ifthere <WebServe$ServeRoot>.archives.gnupgpart/zip then wipe <WebServe$ServeRoot>.archives.gnupgpart/zip ~CFR~V
+ ifthere <WebServe$ServeRoot>.archives.gnupgsrc/zip then wipe <WebServe$ServeRoot>.archives.gnupgsrc/zip ~CFR~V
+ ifthere <WebServe$ServeRoot>.archives.gnupgintl/zip then wipe <WebServe$ServeRoot>.archives.gnupgintl/zip ~CFR~V
+ ifthere <WebServe$ServeRoot>.archives.gnupgldap/zip then wipe <WebServe$ServeRoot>.archives.gnupgldap/zip ~CFR~V
+ ifthere <WebServe$ServeRoot>.gnupg_history/txt then wipe <WebServe$ServeRoot>.gnupg_history/txt ~CFR~V
+ ifthere <WebServe$ServeRoot>.gnupg_news/txt then wipe <WebServe$ServeRoot>.gnupg_news/txt ~CFR~V
+ rename distrib.gnupgdev/zip <WebServe$ServeRoot>.private.gnupgdev/zip
+ rename distrib.gnupg/zip <WebServe$ServeRoot>.archives.gnupg/zip
+ rename distrib.gnupgidea/zip <WebServe$ServeRoot>.archives.gnupgidea/zip
+ rename distrib.gnupgpart/zip <WebServe$ServeRoot>.archives.gnupgpart/zip
+ rename distrib.gnupgsrc/zip <WebServe$ServeRoot>.archives.gnupgsrc/zip
+ rename distrib.gnupgintl/zip <WebServe$ServeRoot>.archives.gnupgintl/zip
+ rename distrib.gnupgldap/zip <WebServe$ServeRoot>.archives.gnupgldap/zip
+ copy distrib.resources.History <WebServe$ServeRoot>.gnupg_history/txt ~CFR~V
+ copy distrib.resources.orig_docs.NEWS <WebServe$ServeRoot>.gnupg_news/txt ~CFR~V
+ unset GnuPG$DevDefine
+ unset GnuPG$Version
+ updatesigs <WebServe$ServeRoot>.archives --secring adfs::ap.$.secring/gpg
+
+# Dynamic dependencies:
diff --git a/scripts/conf-riscos/cipher/construct.c b/scripts/conf-riscos/cipher/construct.c
new file mode 100644
index 000000000..122d740e8
--- /dev/null
+++ b/scripts/conf-riscos/cipher/construct.c
@@ -0,0 +1,38 @@
+/* construct.c - RISC OS constructors for cipher algorithms
+ * Copyright (C) 2001 Free Software Foundation, Inc.
+ *
+ * This file is part of GnuPG.
+ *
+ * GnuPG 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 of the License, or
+ * (at your option) any later version.
+ *
+ * GnuPG 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
+ */
+
+void rndriscos_constructor(void);
+void sha1_constructor(void);
+void rmd160_constructor(void);
+void md5_constructor(void);
+
+void
+cipher_modules_constructor(void)
+{
+ static int done = 0;
+ if( done )
+ return;
+ done = 1;
+
+ rndriscos_constructor();
+ sha1_constructor();
+ rmd160_constructor();
+ md5_constructor();
+}
diff --git a/scripts/conf-riscos/cipher/constructv.c b/scripts/conf-riscos/cipher/constructv.c
new file mode 100644
index 000000000..cb50bfff8
--- /dev/null
+++ b/scripts/conf-riscos/cipher/constructv.c
@@ -0,0 +1,32 @@
+/* constructv.c - RISC OS constructors for cipher algorithms (gpgv version)
+ * Copyright (C) 2001 Free Software Foundation, Inc.
+ *
+ * This file is part of GnuPG.
+ *
+ * GnuPG 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 of the License, or
+ * (at your option) any later version.
+ *
+ * GnuPG 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
+ */
+
+void rmd160_constructor(void);
+
+void
+cipher_modules_constructor(void)
+{
+ static int done = 0;
+ if( done )
+ return;
+ done = 1;
+
+ rmd160_constructor();
+}
diff --git a/scripts/conf-riscos/include/config.h b/scripts/conf-riscos/include/config.h
new file mode 100644
index 000000000..6a3440235
--- /dev/null
+++ b/scripts/conf-riscos/include/config.h
@@ -0,0 +1,384 @@
+/* config.h - hand edited by Stefan Bellon to suit RISC OS needs
+ * Copyright (C) 2001 Free Software Foundation, Inc.
+ *
+ * This file is part of GNUPG.
+ *
+ * GNUPG 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 of the License, or
+ * (at your option) any later version.
+ *
+ * GNUPG 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
+ */
+#ifndef G10_CONFIG_H
+#define G10_CONFIG_H
+
+/* need this, because some autoconf tests rely on this (e.g. stpcpy)
+ * and it should be used for new programs
+ */
+#define _GNU_SOURCE 1
+
+
+/* Define if using alloca.c. */
+#undef C_ALLOCA
+
+/* Define to empty if the keyword does not work. */
+/* #undef const */
+
+/* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems.
+ This function is required for alloca.c support on those systems. */
+#undef CRAY_STACKSEG_END
+
+/* Define if you have alloca, as a function or macro. */
+/* #undef HAVE_ALLOCA */
+#define HAVE_ALLOCA
+
+/* Define if you have <alloca.h> and it should be used (not on Ultrix). */
+/* #undef HAVE_ALLOCA_H */
+#define HAVE_ALLOCA_H
+
+/* #undef _LIBC */
+
+/* Define if you don't have vprintf but do have _doprnt. */
+#undef HAVE_DOPRNT
+
+/* Define if you have the vprintf function. */
+#define HAVE_VPRINTF
+
+/* Define to `long' if <sys/types.h> doesn't define. */
+#undef off_t
+
+/* Define if you need to in order for stat and other things to work. */
+#undef _POSIX_SOURCE
+
+/* Define as the return type of signal handlers (int or void). */
+#define RETSIGTYPE void
+
+/* Define to `unsigned' if <sys/types.h> doesn't define. */
+#define size_t unsigned int
+
+/* If using the C implementation of alloca, define 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
+ */
+#undef STACK_DIRECTION
+
+/* Define if you have the ANSI C header files. */
+#define STDC_HEADERS
+
+/* Define if `sys_siglist' is declared by <signal.h>. */
+#define SYS_SIGLIST_DECLARED
+
+#undef M_DEBUG
+#undef M_GUARD
+#define PRINTABLE_OS_NAME "RISC OS"
+
+/* Define if your locale.h file contains LC_MESSAGES. */
+#undef HAVE_LC_MESSAGES
+
+/* Define to 1 if NLS is requested. */
+#define ENABLE_NLS 1
+
+/* 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
+
+#undef BIG_ENDIAN_HOST
+#define LITTLE_ENDIAN_HOST 1
+
+#undef HAVE_BYTE_TYPEDEF
+#undef HAVE_USHORT_TYPEDEF
+#undef HAVE_ULONG_TYPEDEF
+#undef HAVE_U16_TYPEDEF
+#undef HAVE_U32_TYPEDEF
+
+#undef HAVE_BROKEN_MLOCK
+
+/* defined if we have a /dev/random and /dev/urandom */
+#undef HAVE_DEV_RANDOM
+/* and the real names of the random devices */
+#undef NAME_OF_DEV_RANDOM
+#undef NAME_OF_DEV_URANDOM
+/* Linux has an ioctl */
+#undef HAVE_DEV_RANDOM_IOCTL
+
+/* see cipher/rndegd.c */
+#undef EGD_SOCKET_NAME
+
+#undef USE_DYNAMIC_LINKING
+#undef HAVE_DL_DLOPEN
+#undef HAVE_DL_SHL_LOAD
+#undef HAVE_DLD_DLD_LINK
+
+#undef USE_SHM_COPROCESSING
+
+#undef IPC_HAVE_SHM_LOCK
+#undef IPC_RMID_DEFERRED_RELEASE
+
+/* set this to limit filenames to the 8.3 format */
+#undef USE_ONLY_8DOT3
+/* defined if we must run on a stupid file system */
+#undef HAVE_DRIVE_LETTERS
+/* defined if we run on some of the PCDOS like systems (DOS, Windoze. OS/2)
+ * with special properties like no file modes */
+#undef HAVE_DOSISH_SYSTEM
+/* because the Unix gettext has to much overhead on MingW32 systems
+ * and these systems lack Posix functions, we use a simplified version
+ * of gettext */
+#undef USE_SIMPLE_GETTEXT
+/* At some point in the system we need to know that we use the Windows
+ * random module. */
+#undef USE_STATIC_RNDW32
+
+#undef USE_CAPABILITIES
+
+/* Some systems have mkdir that takes a single argument. */
+#undef MKDIR_TAKES_ONE_ARG
+
+/* The number of bytes in a unsigned int. */
+#define SIZEOF_UNSIGNED_INT 4
+
+/* The number of bytes in a unsigned long. */
+#define SIZEOF_UNSIGNED_LONG 4
+
+/* The number of bytes in a unsigned long long. */
+#define SIZEOF_UNSIGNED_LONG_LONG 0
+
+/* The number of bytes in a unsigned short. */
+#define SIZEOF_UNSIGNED_SHORT 2
+
+/* Define if you have the __argz_count function. */
+#undef HAVE___ARGZ_COUNT
+
+/* Define if you have the __argz_next function. */
+#undef HAVE___ARGZ_NEXT
+
+/* Define if you have the __argz_stringify function. */
+#undef HAVE___ARGZ_STRINGIFY
+
+/* Define if you have the atexit function. */
+#define HAVE_ATEXIT
+
+/* Define if you have the clock_gettime function. */
+#undef HAVE_CLOCK_GETTIME
+
+/* Define if you have the dcgettext function. */
+#undef HAVE_DCGETTEXT
+
+/* Define if you have the dlopen function. */
+#undef HAVE_DLOPEN
+
+/* Define if you have the fopen64 function. */
+#undef HAVE_FOPEN64
+
+/* Define if you have the fstat64 function. */
+#undef HAVE_FSTAT64
+
+/* Define if you have the getcwd function. */
+#define HAVE_GETCWD
+
+/* Define if you have the gethrtime function. */
+#undef HAVE_GETHRTIME
+
+/* Define if you have the getpagesize function. */
+#define HAVE_GETPAGESIZE
+
+/* Define if you have the getrusage function. */
+#define HAVE_GETRUSAGE
+
+/* Define if you have the gettimeofday function. */
+#define HAVE_GETTIMEOFDAY
+
+/* Define if you have the memicmp function. */
+#undef HAVE_MEMICMP
+
+/* Define if you have the memmove function. */
+#define HAVE_MEMMOVE
+
+/* Define if you have the mlock function. */
+#undef HAVE_MLOCK
+
+/* Define if you have the mmap function. */
+#undef HAVE_MMAP
+
+/* Define if you have the munmap function. */
+#undef HAVE_MUNMAP
+
+/* Define if you have the nl_langinfo function. */
+#undef HAVE_NL_LANGINFO
+
+/* Define if you have the putenv function. */
+#define HAVE_PUTENV
+
+/* Define if you have the raise function. */
+#define HAVE_RAISE
+
+/* Define if you have the rand function. */
+#define HAVE_RAND
+
+/* Define if you have the setenv function. */
+#define HAVE_SETENV
+
+/* Define if you have the setlocale function. */
+#define HAVE_SETLOCALE
+
+/* Define if you have the setrlimit function. */
+#define HAVE_SETRLIMIT
+
+/* Define if you have the sigaction function. */
+#define HAVE_SIGACTION
+
+/* Define if you have the sigprocmask function. */
+#define HAVE_SIGPROCMASK
+
+/* Define if you have the stpcpy function. */
+#define HAVE_STPCPY
+
+/* Define if you have the strcasecmp function. */
+#define HAVE_STRCASECMP
+
+/* Define if you have the strchr function. */
+#define HAVE_STRCHR
+
+/* Define if you have the strdup function. */
+#define HAVE_STRDUP
+
+/* Define if you have the strerror function. */
+#define HAVE_STRERROR
+
+/* Define if you have the strftime function. */
+#define HAVE_STRFTIME
+
+/* Define if you have the stricmp function. */
+#define HAVE_STRICMP
+
+/* Define if you have the strlwr function. */
+#undef HAVE_STRLWR
+
+/* Define if you have the strtoul function. */
+#define HAVE_STRTOUL
+
+/* Define if you have the tcgetattr function. */
+#define HAVE_TCGETATTR
+
+/* Define if you have the wait4 function. */
+#define HAVE_WAIT4
+
+/* Define if you have the waitpid function. */
+#define HAVE_WAITPID
+
+/* Define if you have the <argz.h> header file. */
+#undef HAVE_ARGZ_H
+
+/* Define if you have the <direct.h> header file. */
+#undef HAVE_DIRECT_H
+
+/* Define if you have the <gdbm.h> header file. */
+#undef HAVE_GDBM_H
+
+/* Define if you have the <langinfo.h> header file. */
+#undef HAVE_LANGINFO_H
+
+/* Define if you have the <limits.h> header file. */
+#define HAVE_LIMITS_H
+
+/* Define if you have the <linux/random.h> header file. */
+#undef HAVE_LINUX_RANDOM_H
+
+/* Define if you have the <locale.h> header file. */
+#define HAVE_LOCALE_H
+
+/* Define if you have the <malloc.h> header file. */
+#define HAVE_MALLOC_H
+
+/* Define if you have the <nl_types.h> header file. */
+#undef HAVE_NL_TYPES_H
+
+/* Define if you have the <string.h> header file. */
+#define HAVE_STRING_H
+
+/* Define if you have the <sys/capability.h> header file. */
+#undef HAVE_SYS_CAPABILITY_H
+
+/* Define if you have the <sys/ipc.h> header file. */
+#undef HAVE_SYS_IPC_H
+
+/* Define if you have the <sys/mman.h> header file. */
+#define HAVE_SYS_MMAN_H
+
+/* Define if you have the <sys/param.h> header file. */
+#define HAVE_SYS_PARAM_H
+
+/* Define if you have the <sys/shm.h> header file. */
+#undef HAVE_SYS_SHM_H
+
+/* Define if you have the <sys/stat.h> header file. */
+#define HAVE_SYS_STAT_H
+
+/* Define if you have the <termio.h> header file. */
+#define HAVE_TERMIO_H
+
+/* Define if you have the <unistd.h> header file. */
+#define HAVE_UNISTD_H
+
+/* Define if you have the <zlib.h> header file. */
+#define HAVE_ZLIB_H
+
+/* Define if you have the dl library (-ldl). */
+#undef HAVE_LIBDL
+
+/* Define if you have the dld library (-ldld). */
+#undef HAVE_LIBDLD
+
+/* Define if you have the gdbm library (-lgdbm). */
+#undef HAVE_LIBGDBM
+
+/* Define if you have the i library (-li). */
+#undef HAVE_LIBI
+
+/* Define if you have the nsl library (-lnsl). */
+#undef HAVE_LIBNSL
+
+/* Define if you have the rt library (-lrt). */
+#undef HAVE_LIBRT
+
+/* Name of package */
+#define PACKAGE "GnuPG"
+
+
+/* define if compiled symbols have a leading underscore */
+#define WITH_SYMBOL_UNDERSCORE
+
+#ifdef IS_DEVELOPMENT_VERSION
+ #define DEBUG
+/* #define M_DEBUG */
+ #define M_GUARD
+#endif
+
+
+/* RISC OS specifica */
+#if (__CC_NORCROFT == 1) /* Norcroft */
+# define __attribute__(x)
+# if (__CC_NORCROFT_VERSION < 544) /* old version of Norcroft */
+# define inline __inline
+# define STR(a) #a
+# define __func__ "[" __FILE__ ":" STR(__LINE__) "]"
+# endif
+#else /* gcc */
+#endif
+
+#include "g10defs.h"
+
+#endif /*G10_CONFIG_H*/
diff --git a/scripts/conf-riscos/include/g10defs.h b/scripts/conf-riscos/include/g10defs.h
new file mode 100644
index 000000000..a02dff42a
--- /dev/null
+++ b/scripts/conf-riscos/include/g10defs.h
@@ -0,0 +1,41 @@
+/* g10defs.h - hand edited by Stefan Bellon to suit RISC OS needs
+ * Copyright (C) 2001 Free Software Foundation, Inc.
+ *
+ * This file is part of GNUPG.
+ *
+ * GNUPG 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 of the License, or
+ * (at your option) any later version.
+ *
+ * GNUPG 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
+ */
+
+/* Path variables and filing system constants for RISC OS */
+#define G10_LOCALEDIR "<GnuPG$Dir>.locale"
+#define GNUPG_LIBDIR "<GnuPG$Dir>"
+#define GNUPG_DATADIR "<GnuPG$Dir>"
+#define GNUPG_HOMEDIR "<GnuPGUser$Dir>"
+#define LOCALE_ALIAS_PATH "<GnuPG$Dir>.locale"
+#define GNULOCALEDIR "<GnuPG$Dir>.locale"
+#define DIRSEP_C '.'
+#define EXTSEP_C '/'
+#define DIRSEP_S "."
+#define EXTSEP_S "/"
+
+/* This file defines some basic constants for the MPI machinery. We
+ * need to define the types on a per-CPU basis, so it is done with
+ * this file here. */
+#define BYTES_PER_MPI_LIMB (SIZEOF_UNSIGNED_LONG)
+
+/* External process spawning mechanism */
+#if !(defined(HAVE_FORK) && defined(HAVE_PIPE) && defined(HAVE_WAITPID))
+#define EXEC_TEMPFILE_ONLY
+#endif