Name: hercules
Summary: Hercules S/370, ESA/390, and z/Architecture emulator
Version: 3.02
Release: 1.2
License: QPL
Group: Applications/Emulators
URL: http://www.conmicro.cx/hercules/
Description: Hercules is an emulator for the IBM System/370, ESA/390, and z/Architecture
series of mainframe computers. It is capable of running any IBM operating
system and applications that a real system will run, as long as the hardwre
needed is emulated. Hercules can emulate FBA and CKD DASD, tape, printer,
card reader, card punch, channel-to-channel adapter, LCS Ethernet, and
printer-keyboard, 3270 terminal, and 3287 printer devices.
The build was not successful.
The build was not successful.
The spec file used by the build system currently has the following contents:
# $Id$ # Authority: dag # Upstream: Jay Maynard <jmaynard$conmicro,cx> # Upstream: <hercules-390$yahoogroups,com> #define date 20041025 Summary: Hercules S/370, ESA/390, and z/Architecture emulator Name: hercules Version: 3.02 Release: %{?date:0.%{date}.}1.2%{?dist} License: QPL Group: Applications/Emulators URL: http://www.conmicro.cx/hercules/ Source: http://www.conmicro.cx/hercules/hercules-%{version}%{?date:-cvs}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRequires: bison, zlib-devel, bzip2-devel, libgcrypt, gcc-c++ Obsoletes: hercules-docs <= 3.01 %description Hercules is an emulator for the IBM System/370, ESA/390, and z/Architecture series of mainframe computers. It is capable of running any IBM operating system and applications that a real system will run, as long as the hardwre needed is emulated. Hercules can emulate FBA and CKD DASD, tape, printer, card reader, card punch, channel-to-channel adapter, LCS Ethernet, and printer-keyboard, 3270 terminal, and 3287 printer devices. %prep %setup -n %{name}-%{version}%{?date:-cvs} ### FIXME: Make buildsystem use standard autotools directories (Fix upstream please) %{__perl} -pi.orig -e 's|^(modexecdir) =.*$|$1 = \$(libdir)/hercules|' \ Makefile.in crypto/Makefile.in %{__mv} hercules.cnf hercules.cnf.sample %{__cat} <<EOF >hercules.cnf # Sample configuration file to run Red Hat Linux or Fedora Core S/390 with the # the Hercules ESA/390 emulator # CPUSERIAL 002623 # CPU serial number CPUMODEL 3090 # CPU model number: 3090, 7490, 2064 MAINSIZE 256 # Main storage size in megabytes NUMCPU 1 # Number of CPUs CNSLPORT 3270 # TCP port number to which consoles connect #HTTPPORT 8081 # enable a HTTP server on this port OSTAILOR LINUX # OS tailoring LOADPARM 0120.... # IPL parameter IODELAY 0 # modern kernels do not need a delay ARCHMODE ESA/390 # Architecture mode S/370, ESA/390 or ESAME TZOFFSET +0100 # Central Europe MODPATH %{_libdir}/hercules # .-----------------------Device number # | .-----------------Device type # | | .---------File name and parameters # | | | # V V V #--- ---- -------------------- # card reader 000C 3505 kernel.img hercules.prm initrd.img autopad # card punch #000D 3525 punch00d.txt ascii # line printer #000E 1403 print00e.txt crlf # local non-SNA 3270 TN3270 client connection #001F 3270 # CKD direct access storage device # initialize with: dasdinit -z linux.120 3390-3 lin000 0120 3390 %{_sysconfdir}/hercules/linux.120 # local non-SNA 3270 TN3270 client connection #0200 3270 #0201 3270 # tape drives 0580 3420 %{_sysconfdir}/hercules/hercules.tdf #0581 3420 /dev/st0 #0582 3420 ickdsf.ipl # networking, channel-to-channel adapter 0600 3088 CTCI -n /dev/net/tun -t 1500 192.168.200.3 192.168.200.4 # networking, LCS adaptor #0700 3088 LCS 192.168.200.4 -n /dev/net/tun -m 01:02:03:04:05:06 EOF %{__cat} <<EOF >hercules.ins * Red Hat Linux for S/390 Installation kernel.img 0x00000000 initrd.img 0x00800000 hercules.prm 0x00010480 EOF %{__cat} <<'EOF' >hercules.init #!/bin/sh ### Startup script for the Hercules S/390 emulator ### Copyright (C) 2001 Karsten Hopp <karsten@redhat.de> ### Copyright (C) 2003 Florian La Roche <laroche@redhat.com> ### This is your "hercules network" between your machine running the ### hercules emulator and the Linux guest running in hercules. HERCNET="192.168.200.0/24" PATH=/bin:/usr/bin:/sbin:/usr/sbin export PATH unset LANG LC_COLLATE if [ `id -u` != 0 ]; then echo "This script requires root permissions." exit 1 fi lsmod | grep -q ipchains && { echo "ipchains module is already loaded, cannot setup iptables." exit 1 } ### This device must be present for hercules to setup networking. [ -d /dev/net ] || mkdir -p /dev/net [ -c /dev/net/tun ] || mknod /dev/net/tun c 10 200 ### Load the necessary kernel modules: modprobe tun ip_tables iptable_filter ip_conntrack ip_conntrack_ftp ip_nat_ftp 2>/dev/null ### Enable IP forwarding, you can permanently change this in in ### /etc/sysctl.conf with "net.ipv4.ip_forward = 1". echo "1" >/proc/sys/net/ipv4/ip_forward ### Masquerade the hercules network. iptables -t nat -A POSTROUTING -s ${HERCNET} -j MASQUERADE iptables -A FORWARD -i eth0 -o tun0 -m state --state ESTABLISHED,RELATED -j ACCEPT ### Start hercules itself. cd %{_sysconfdir}/hercules LD_ASSUME_KERNEL=2.4.1 export LD_ASSUME_KERNEL hercules EOF %{__cat} <<EOF >hercules.prm root=/dev/ram0 ro ip=off ramdisk_size=40000 EOF %{__cat} <<EOF >hercules.tdf @TDF tape0 FIXED RECSIZE 1024 kernel.img FIXED RECSIZE 1024 hercules.prm FIXED RECSIZE 1024 initrd.img FIXED RECSIZE 1024 EOT EOF %build %configure \ --enable-shared \ --enable-dependency-tracking \ --enable-optimization="%{optflags}" %{__make} %{?_smp_mflags} %install %{__rm} -rf %{buildroot} %makeinstall %find_lang %{name} %{__install} -Dp -m0755 hercules.init %{buildroot}%{_sysconfdir}/hercules/hercules.init %{__install} -Dp -m0644 hercules.cnf %{buildroot}%{_sysconfdir}/hercules/hercules.cnf %{__install} -Dp -m0644 hercules.ins %{buildroot}%{_sysconfdir}/hercules/hercules.ins %{__install} -Dp -m0644 hercules.prm %{buildroot}%{_sysconfdir}/hercules/hercules.prm %{__install} -Dp -m0644 hercules.tdf %{buildroot}%{_sysconfdir}/hercules/hercules.tdf %clean %{__rm} -rf %{buildroot} %files -f %{name}.lang %defattr(-, root, root, 0755) %doc CHANGES README* RELEASE* hercules.cnf.sample html/ util/ %doc %{_mandir}/man?/* %dir %{_sysconfdir}/hercules/ %config(noreplace) %{_sysconfdir}/hercules/* %{_bindir}/* %{_datadir}/hercules/ %{_libdir}/hercules/ %{_libdir}/libherc.so %{_libdir}/libhercs.so %exclude %{_libdir}/libherc.la %exclude %{_libdir}/libhercs.la %exclude %{_libdir}/hercules/*.la %changelog * Sat Apr 08 2006 Dries Verachtert <dries@ulyssis.org> - 3.02-%{?date:0.%{date}.}1.2 - Rebuild for Fedora Core 5. * Tue Jan 25 2005 Dag Wieers <dag@wieers.com> - 3.02-1 - Updated to release 3.02. * Mon Oct 25 2004 Matthias Saou <http://freshrpms.net/> 3.02-0.20041025.1 - Update to today's CVS snapshot. * Thu Jul 29 2004 Matthias Saou <http://freshrpms.net/> 3.01-2.20040729 - Update to CVS version. - Merge the docs back into the main package. * Sat Jul 17 2004 Matthias Saou <http://freshrpms.net/> 3.01-2 - Updated config's ctc entry to the new syntax. * Sat Apr 10 2004 Dag Wieers <dag@wieers.com> - 3.01-1 - Updated to release 3.01. - Added default configuration from Florian La Roche. * Fri Oct 3 2003 Jay Maynard <jmaynard@conmicro.cx> Updates for version 3.00: lots of libraries and executable changes. * Thu Feb 6 2003 Jay Maynard <jmaynard@conmicro.cx> Fixed permissions again. Thanks to John Summerfield for finding my screwup and pointing it out. * Sun Feb 2 2003 Jay Maynard <jmaynard@conmicro.cx> Updates for 2.17: new files, RPM 4 updates to build specifications (thanks to Florian La Roche), fixed default attributes (thanks again to John Summerfield, and this time it'll stick!), and RPM 4 updates to file header (thanks to Frank Meurer). * Wed Jul 3 2002 Jay Maynard <jmaynard@conmicro.cx> Added Alpha build kludge to bypass setresuid test in configure. * Sat May 4 2002 Jay Maynard <jmaynard@conmicro.cx> Removed enable-setuid-hercifc option (thanks again to John Summerfield). * Fri Apr 19 2002 Jay Maynard <jmaynard@conmicro.cx> Added new HTTP server files for 2.16. * Thu Dec 20 2001 Jay Maynard <jmaynard@conmicro.cx> Changed build process to include configure step. * Sun May 7 2001 Jay Maynard <jmaynard@conmicro.cx> Changed executables for Hercules 2.12; set default attributes (thanks to John Summerfield). * Sun Feb 3 2001 Jay Maynard <jmaynard@conmicro.cx> Changed executables for Hercules 2.10. * Sun Oct 8 2000 Jay Maynard <jmaynard@conmicro.cx> Added multi-architecture build processing. * Sun Jul 4 2000 Jay Maynard <jmaynard@conmicro.cx> Added BuildRoot (thanks to David Barth). * Sun Jun 18 2000 Jay Maynard <jmaynard@conmicro.cx> Created RPM.