given the libz typedef "voidp" for void *, "const voidp" does not magically
inject const inside the typedef'd type. Use the libz typedef "voidpc"
instead. May fix PR 46996.
Changes since version 1.1.1:
System emulation
All targets
* ... QMP error changes go here ...
* File descriptors can be passed to qemu using the new
add-fd/remove-fd QMP commands. It is intended that they can
be used in any place where QEMU would expect a file name.
This is ensured for disk images, support in other parts of
QEMU may still be inconsistent.
ARM
* LPAE (large physical address extensions) are now supported
for the Cortex-A15 CPU; you can now run a vexpress-a15 model
with more than 4GB of RAM
* The new monitor command "dump-guest-memory" creates an ELF
dump of the guest memory.
* New board model: i.MX31
PowerPC
* The pSeries target correctly creates segment size device
tree nodes (fixes odd bugs with HV vs PR KVM)
* The pSeries target implements an IOMMU.
* ... pSeries VGA, USB, etc.? ...
* The E500 target generates its device tree dynamically
* New mpc8544ds -machine option: dumpdtb. This allows to dump
the dynamically generated device tree to a file.
* Emulation for e5500 cores
* PC87312 Super I/O chipset emulation for PReP, adding
parallel port to prep machine
x86
* Support for PCI passthrough is available for Xen
fully-virtualized domains.
* The new monitor command "dump-guest-memory" creates an ELF
dump of the guest memory.
* When using KVM, the in-kernel APIC supports MSI.
* Also when using KVM, new PV EOI feature improves performance
when both host and guest run linux 3.6-rc1 and up. To
enable, add +kvm_pv_eoi to -cpu option, e.g.
-cpu kvm64,+kvm_pv_eoi
* The "cpudef" config file section is being deprecated and may
be removed in v1.3.
Device emulation
* VGA and QXL cards (obtained with -vga std and -vga qxl) have
16 MB of VRAM rather than 8 MB.
* Three new SCSI host bus adapter devices are available:
am53c974 and dc390 emulate respectively an AMD PCI PCscsi
and a Tekram DC-390 device, both of which are supported on
older operating systems including MS DOS 6.2, MS Windows 3.11,
98 SE, NT 3.1 and NT 4.0. megasas emulated an LSI SAS1078 RAID
controller. The next version of SeaBIOS will support booting
from am53c974 and dc390 disks.
* An USB-attached SCSI controller is now available.
Audio devices
* The PC speaker audio card is now available by default.
Network devices
* The guestfwd argument to slirp now supports running an
arbitrary command on every TCP connection (as in inetd).
This is invoked by specifying a target that starts with "cmd:".
Block devices
* Emulated IDE and SCSI as well as virtio-blk devices can now
switch the cache mode between writethrough and writeback.
virtio-blk automatically switches to writethrough if the
guest driver doesn't support flushes.
* The default cache mode for images is now writeback.
* Emulated SCSI devices can be given a custom vendor name,
product name and WWN.
* Improved support for passthrough of SCSI tapes and media changers.
* libiscsi can be used together with scsi-generic to pass
iSCSI tapes and media changers to the guest.
* When raw files are streamed, parts of the files that are
holes in the underlying filesystem are treated as
unallocated (as long as the OS supports either the FIEMAP
ioctl or the SEEK_HOLE/SEEK_DATA modes)
* CD-ROM drives can now be used with AHCI
qcow2
* qcow2 images support a new option, lazy_refcounts. If on,
the speed of cache=writethrough mode will be improved, at
the cost of requiring an fsck-like pass (and thus QEMU 1.2)
to use the image again after a power loss.
* qemu-img check can now repair qcow2 and QED images with the
new -r option.
VMDK
* Support for images in the streamOptimized subformat has been
fixed. This is a VMDK subformat commonly used with OVF appliances.
rbd
* rbd no longer ignores the cache setting
Live Migration, Save/Restore
* Migration works much better with guests with large memory.
* USB mass storage and passthrough devices support live migration.
VNC
* The threaded VNC server is now enabled by default.
Guest agent
* A new command "fstrim" was added to the guest agent.
New targets
* OpenRISC is now supported for both user-mode and system emulation.
- Fix a bit of pkglint.
- patch-aa is no longer needed.
Upstream changelog:
3.7.1 to 3.7.2: (June 10, 2012)
* Fixed bug in handling filenames with the '~' character, as is used
extensively by RomHunter rom-sets.
-Have fun!
3.7 to 3.7.1: (June 8, 2012)
* Note: because of TIA changes, the state file format has changed again,
and old state files will not work with this release.
* Improved TIA emulation with ROMs that have too few or too many
scanlines; the output is now more accurate compared to a real TV.
Special thanks to Omegamatrix of AtariAge for test ROMs in this area.
* Modified hotkey for "Change console palette" (Control-f) to also
change the display properties of the TIA. This allows you to switch
between NTSC/PAL/SECAM (and variant) modes dynamically. Related to
this, added Shift-Control-f key to step backwards through the
available modes.
* Added '64in1' and '128in1' multicart bankswitching schemes, which work
the same as the 2in1/4in1/etc ones (Control-r switches to each
consecutive game in the ROM).
* Fixed several bugs in DPC+ bankswitching scheme, including ability
to load and save state files. As well, ROMs now work correctly after
console format autodetection.
* Fixed bugs in handling relative filenames on the commandline,
introduced in the last release. The new functionality should be much
more robust.
3.6.1 to 3.7: (June 1, 2012)
* Added Blargg TV effects, with presets for Composite, S-video, RGB,
and badly adjusted TV, and well as a custom mode with full
configurability of contrast, brightness, gamma, etc. Many
keyboard shortcuts and commandline arguments were added to support
this; see the documentation for a detailed explanation. These
effects are OpenGL-only. Special thanks to Ian Bogost and the
Georgia Tech Atari Team for the preliminary implementation.
* Updated the CompuMate keyboard handler to recognize more keys on an
actual keyboard, instead of having to remember the weird combinations
used on the original CompuMate keyboard (although those original keys
will continue to work). Related to this, fixed bug whereby
'ghost keys' would be detected by the CompuMate, particularly after
pressing 'Enter' to start a game from the ROM launcher.
* Added emulation for MindLink controller using the mouse; the 'Bionic
Breakthrough' and 'Telepathy' ROMs now work.
* Updated FA2 bankswitch scheme (Star Castle) to emulate load/save
high score functionality to the Harmony cart flash RAM.
* Added ability for ROM launcher to 'descend' into ZIP files when it
contains more than one ROM file. This means you no longer have to
unzip a multi-file archive before using each ROM. Thanks go to Roland
Schabenberger (webOS maintainer) for this idea and sample code.
* Several improvements to the debugger/disassembler:
- The 'resolvedata', 'showaddr' and 'gfxformat' commandline
arguments are renamed to start with 'dis', indicating that
they're used with the built-in disassembler.
- Zero-page code addresses no longer have their high-byte
truncated, and system equates (TIA and I/O registers) are now
properly marked as such.
- The Distella '-r' option (Relocate calls out of address range)
is no longer the default, resulting in output more consistent
with normal usage of Distella. Related to this, added the
'-dis.relocate' commandline argument (and associated UI item)
to toggle this dynamically.
* Fixed bug in EFSC bankswitch scheme state saving; the Superchip RAM
wasn't actually being loaded and saved to state files.
* Improved speed of loading and saving state files, as well as slightly
reducing their size. Because of this, old state files will not work
with this release.
* Replaced commandline argument 'uselauncher' with 'exitlauncher'. The
new option specifies the behaviour of the ROM launcher when exiting
a ROM (always exit to launcher, or only when the launcher was actually
used). This setting can now be changed in the GUI.
* Several updates to the internal properties database:
- 'Juno First' ROMs now use an AtariVox/SaveKey when possible
- 'Astroblast' ROMs now use the paddles by default
- 'Star Castle 2600' ROMs added
* Changed key-combo for enabling TIA objects and collisions to be
toggled on and off with the Alt-period and Shift-Alt-period
respectively (instead of having two separate keys to turn them on
and off).
* When working on the commandline, relative filenames are now
correctly handled (current working directory is used).
* The Windows 98/ME/2000 builds have been discontinued, due to code and
features that are only available on Windows XP/SP3 and later.
* Updated included PNG library to latest stable version.
3.6 to 3.6.1: (March 30, 2012)
* Extended FA2 bankswitch scheme to handle 28K ROMs (in addition to
the previously supported 24K ROMs).
3.5.5 to 3.6: (March 16, 2012)
* Added support for 2600-daptor II device, including native support
for 7800 controllers, BoosterGrip and Keypad controllers. Special
thanks go to Tom Hafner for a complimentary test sample of this
device, and also for donating a BoosterGrip controller.
* Added ability to dynamically swap the port order of Stelladaptor/
2600-daptor devices with the 'Control-1' key combo (useful if you
have only one 2600-daptor and want to use it as a left port
normally, but as a right port for Star Raiders, etc).
* Added CompuMate bankswitching/controller support to the emulation
core; the Spectravideo CompuMate ROMs (NTSC and PAL) now work.
Frequently used keys on the CompuMate are directly mapped to your
keyboard (ie, Func-Space for backspace is mapped to Backspace, etc).
Loading/saving from the cassette player is not yet supported, and
will come in a future release.
* Fixed bug in BoosterGrip controller emulation; the functionality
of the booster and trigger buttons was reversed. Related to this,
renamed these actions in the Event Mapping dialog to be more clear.
* Reverted to SDL 1.2.14 for the Windows 98/2k release, since SDL
1.2.15 isn't supported in that environment.
* Updated included PNG library to latest stable version.
3.5 to 3.5.5: (February 4, 2012)
* Due to changes in the debugger, old state files will not work with
this release.
* Fixed bug in sound restructuring introduced in the last release; in
some cases, there could be some sound 'crackling' when starting a
ROM after at least one ROM had already been loaded.
* Several significant improvements to the debugger I/O tab:
- added controller input widgets for many of the built-in
controllers, allowing to control joysticks, paddles, etc
from within the debugger.
- added ability to modify the SWCHB/SWBCNT port B registers.
- added ability to view TIA INPTx and VBLANK latch/dump bits.
* Reworked 'mcontrol' argument, and added ability to map the mouse
axes separately for paddles 0-3 or driving controllers 0-1. In
such modes, the left mouse button is tied to the x-axis, and the
right button is tied to the y-axis.
* Mouse 'specific-axis' mode is now saved per-ROM, meaning that each
ROM can have separate settings. For example, this allows one ROM to
use paddles 0 and 1, while another can use paddles 0 and 2, etc.
* The key-combo for switching the mouse between controller modes is now
'Control-0' (Control-1,2,3 have been removed). This switches
between all possible modes for the current virtual controllers.
* Fixed bug in 'Fixed Debug Colors' mode; under certain circumstances,
playfield graphics could be coloured as being player graphics.
* Fixed bug in PAL color-loss setting in Video Settings; changing the
settings wouldn't take effect until the ROM was reloaded.
* Fixed bugs with cheatcode handling; loading a ROM with a cheat
disabled would sometimes trash the emulation. More work is
required in this area, including the ability to create more
advanced types of cheats.
* Updated ROM properties database for all Sega Genesis controller
compatible ROMs. Also, the mouse can now emulate a Genesis
controller, with the left/right buttons mapped to buttons B and C,
respectively.
* Added 'FA2' bankswitch scheme, thanks to code from Chris D.
Walton. This scheme will be used in an upcoming 'Star Castle' ROM.
* Updated internal ROM properties database to ROM-Hunter version 7
(thanks go to RomHunter for his tireless research in this area).
* Added several PERL tools to help in automation of analyzing RomHunter
ROM set releases.
* Fixed compile issues in Irix when using the default compiler
instead of gcc. Thanks go to Rainer M. Canavan for this code.
* Updated included PNG library to latest stable version.
3.4.1 to 3.5: (December 29, 2011)
* Stella is now DonationWare! Please see the DonationWare link on the
main webpage for more information.
* Added several improvements to the joystick management code. Joystick
event mapping is now saved per device, meaning that if you map events
to a certain joystick device, remove the device and then later insert
it again, Stella will remember the original mapping.
* The total number of joysticks present and their associated properties
(number of axes, buttons and hats) is now dynamic. That is, there's
no longer a hard-coded limit on the number of joysticks that Stella
can use, or the number of buttons, etc that it contains. This fixes
a serious bug with PS3 controllers with 27 buttons, whereby adding a
mapping for joystick 0 would inadvertantly change settings for
joystick 1, and could potentially lead to a program crash.
* Added 'mcontrol' commandline argument, which can specify to use each
mouse axis as a separate paddle. The old (and default) behaviour can
be activated by setting this argument to 'auto'. Related to this,
removed redundant 'usemouse' argument.
* Huge restructuring of the OpenGL code, making it compatible with
OpenGL 2.x+ features (such as vertex buffer objects), while at the
same time keeping compatibility with OpenGL 1.5 / OpenGL ES.
Because of the required changes, TV effects were removed (they will
be added again for the next release).
* Improvements to audio handling, particularly for certain cases of
Windows, ATI video cards, and OpenGL mode. The sound device is now
opened only once when Stella starts, and is paused between loading
different ROMs. This fixes a problem whereby sound could possibly
not be functional after loading the first ROM. Related to this,
removed the 'audiofirst' commandline argument as it's now redundant.
* Fixed bug with displaying the ROM launcher in Windows XP; the initial
load was sometimes taking up to 30 seconds to complete.
* Added logging facility, whereby the output of the application is
available within Stella itself. This can still be printed to the
console, or also saved to a file. Add the 'loglevel' and
'logtoconsole' commandline arguments which control these settings,
and removed the 'showinfo' argument as it's now redundant.
* Updated DPC+ bankswitching scheme to latest code provided by
SpiceWare.
* Added MAMCR handling to the Thumb ARM emulation code. Note that
MAMCR isn't actually emulated, it is just ignored for now. This
fixes a bug whereby accessing MAMCR would crash the ARM emulation.
* Added 'thumb.trapfatal' commandline argument, which causes the
Thumb ARM emulation to either trap on a fatal error (throw an
exception to the debugger and exit emulation) or simply log the
error and continue. This should normally always be enabled, but
can be disabled by developers for testing reasons.
* Updated default snapshot directory to be much saner and easier to
find. For most systems, it now defaults to the users 'Desktop'.
Note that the commandline argument has changed to 'snapdir'.
* The debugger 'print' command now indicates "special" addresses if
they are read-only (R), write-only (W) or read-write (R/W).
* Fixed a bug where scrolling the mouse-wheel in certain debugger UI
items would cause the program to crash; scrolling now works as
expected.
* Fixed minor display issue in the debugger RAM area; some addresses
were being displayed as '...'.
* Fixed compile issues in the latest versions of Ubuntu and Debian, and
fixed UNIX desktop file so that Stella will launch with a ROM when
selected from its icon. Thanks go to Stephen Kitt for this code.
* Updated included PNG library to latest stable version.
* Updated the credits list in the documentation, listing people that
have donated hardware to the Stella team.
Probably this was a problem for non-gcc / non-clang compilers, but such
a compiler wasn't tested. When lintpkgsrc tried to scan this package,
it spun around forever. Rewrite the CXX override code so this doesn't
happen. Fixes lintpkgsrc scan and probably build for rarer compilers
as well.
There were two problems building openMSX on NetBSD:
1) The was a name conflict with the funcion bswap16. This only appeared
on one file, so the function was prefixed with msx_ to solve it.
2) freetype-config is not located on $PREFIX on NetBSD with native X11.
Normally the wrappers abstract this but openmsx was making assumptions
and using absolute paths. The solution was to set the distroRoot
value to "None" which tells the configure process to not use a path
and those finds freetype-configure through the search path.
I compiled it, installed it, and executed openMSX with these patches.
Two years and a little over a month elapsed between the pkgsrc release
and the latest version 2.2.1 (5 May 2011). There were hundreds of
changes, but the vast majority were bug fixes and improvements on
existing functionality.
The only major addition was implementation of IDE.
See changelog in DOC/ChangeLog for details.
* Update configure script to force all platforms to use same installation
path as NetBSD
* The PLIST was built with fc-cache detected. This implicates fontconfig
as a dependency (without it, font still install but with a diff. name)
* like NetBSD, define HAVE_STDINT_H (other platforms may need it too)
Revbump required because package would have installed before without
PKG_DEVELOPER=yes, albeit incorrectly.
Version 2.1a is not compatible with zlib 1.26+. Luckily this problem
was fixed in version 2.2. Three patches were removed, and a few were
tweaked.
src/linux.c and src/win.c now have dos line endings. I used the
technique seen in textproc/FlightCrew to convert these to unix
endings after extraction. That should allow this package to build
on all platforms where zip handling of line ending differs.
Also defined GPLv3 license.
Several files needed the <cstring> include for functions like memset.
Additional, Tinderbox caught this error:
=== Checking filesystem state after all packages deleted
================================================================
list of extra files and directories in / (not present on clean system
but present after everything was deinstalled)
34217227226 0 lrwxr-xr-x 1 root wheel 65 Aug 12 00:13
usr/local/bin/openmsx ->
/work/emulators/openmsx/work/.destdir/usr/pkg/openmsx/bin/openmsx
The package was installing a symbolic link from /usr/local/bin to the
destdir! Luckily this feature is switchable with a variable. Fixed.
Now works with NetBSD 4, 5 & 6 which would have previously failed.
Comment out some unusual sector subtractions which handled values in the
multigigabyte range.
Now allows all tested NetBSD versions (3, 4, 5 & 6) to mount ISO images
Changelog:
# System emulation
## All targets
* qdev properties of type hex8 and hex32 used to accept hexadecimal values not prefixed with "0x"; the prefix is mandatory starting with this version. These properties are: iobase, membase, io_base for all devices that support the properties; vram_size for sysbus-g364 and SUNW,tcx; version for sb16 and iommu; ctl_iobase and data_iobase for fw_cfg; readback for debugcon; elcr_addr and elcr_mask for i8259.
* PCI addresses can still be addressed with a pair of hexadecimal device and function without a "0x" prefix.
* -kernel, -initrd and -append are now aliases for suboptions of -machine (for example -machine kernel=foo), and as such they are also available with -readconfig.
* PCI-to-PCI bridges are supported [...]
* PCI emulation includes a standard hot-plug controller [...]
* The coroutine backend can now be configured using configure --with-coroutine=.... A new coroutine backend sigaltstack is available for platforms that don't support the default ucontext backend.
* Last but not least: the SDL user interface now uses the new QEMU icon.
## ARM
* The syborg machine type has been removed since the Symbian Virtual Platform is no longer relevant with the disbanding of Symbian.
* A device tree can be passed to the kernel using -dtb option (or alternatively -machine dtb=...).
* New 'nuri' and 'smdkc210' models of Samsung Exynos4210 based devboards.
* New 'highbank' model of the Calxeda Highbank.
* New 'vexpress-a15' model of the Versatile Express Cortex-A15.
## PowerPC
* The Bamboo machine now works with TCG, before only KVM was able to execute 440 code.
* Pseries handles PCI, allowing for virtio devices with -M pseries.
* Pseries works with PR KVM allowing for -M pseries -enable-kvm to work on G5s.
* We can now emulate e500mc cores, but no e500mc based board is emulated yet. You need to use -M mpc8544ds and a special guest kernel.
* Timers on ppc405 now work and don't segfault QEMU.
## S/390
* Added support to -kernel to allow booting of ELF binaries.
* Fixed -kernel to allow booting of newer guest kernels.
* Devices can now be hotplug add'ed (remove is not there yet).
* Rebooting a virtual machine now works.
## SPARC
* Added interrupt controller and support of vector interrupts.
* Fixed handling 32 bit instructions on a sparc64 CPU.
* Fixed block load instructions regression happened in 1.0 release.
* Fixed BCD mask in m48t59 emulation, so that Solaris 2.5.1 doesn't hang on sun4m emulation when day of month >21.
* Fixed initrd loading in qemu-system-sparc64.
## x86
* NMIs are correctly injected through the LAPIC (rather than sent directly to the guest CPU) and respect the LINT1 mask, thus fixing kdump.
* The -rtc-td-hack option is now available as a qdev property (-global mc146818rtc.lost_tick_policy=slew) and as such can be specified in a -readconfig configuration file.
* When the system is suspended to RAM, QEMU will now stop executing the guest until a wakeup event occurs. Implemented wakeup events include key presses, mouse button presses, RTC alarm, ACPI timer expiration, serial console input (off by default; enable with -global isa-serial.wakeup=1), and the system_wakeup monitor command.
* KVM can optionally use kernel-based emulation of the local APIC, IOAPIC, i8259 PIC and i8254 PIT. This is supported with the -machine ...,kernel_irqchip=on command-line option. MSI is not supported yet when using the kernel_irqchip option.
* Emulation of a PC System Flash device. The feature is enabled by adding a pflash drive. This feature is not supported when KVM is enabled. See Features/PC System Flash for more information.
* KVM guests support Hyper-V enlightenments. These are enabled by the -cpu features hv_spinlocks, hv_relaxed and hv_vapic.
## Device emulation
* The virtio-scsi device is now supported by QEMU. The guest driver will be supported in Linux starting at version 3.4.
* QEMU now includes experimental support for USB 3.0 (xHCI).
* Various improvement on the floppy emulation, most notably media change has been fixed
## Audio devices
* Audio devices can now use volume control capabilities exposed by the PulseAudio and Spice backends. (Note: all audio devices do not expose their volume control unless --enable-mixemu is turned on).
## Block devices
* QEMU's NBD client implementation and the qemu-nbd server both fully support asynchronous I/O.
* The rbd block driver supports the discard operation now
* The vpc block driver supports the Fixed Disk subformat of VHD images now
* The new QMP command transaction can be used to perform a set of multiple snapshots atomically, rolling back to the original images if there is a problem along the way. See Features/SnapshotsMultipleDevices for more information.
* The new monitor command block_stream lets guest copy data from the backing file to the current image while the guest is running. This lets users enables quick provisioning of new virtual machines using shared remote storage, and lets the guest transition incrementally to fast local storage. An alternative to streaming is the copy-on-read option of the -drive command-line option, which only transfers data when the guest needs it.
* An experimental extension of the qcow2 file format has been introduced. With the implementation as of QEMU 1.1, the most important addition is zero clusters, which allows image streaming and copy-on-read to leave images sparse if the backing file they are copying from is sparse. In order to enable the extension, use qemu-img create -f qcow2 -o compat=1.1 <filename> <size> for creating the image. Note that older versions of QEMU won't be able to read such images.
* I/O throttling is experimentally supported using the new -drive options bps/bps_rd/bps_wr/iops/iops_rd/iops_wr. It is expected to work with virtio-blk and IDE harddisks, but may lead to hangs when used with CD-ROM or floppy emulation or other devices.
* qemu-io supports new options to enable tracing and to choose a cache modes
## Network devices
* QEMU supports a new type of network device, bridge (used with -net bridge or -netdev bridge). The new type is similar to tap, but uses a helper program instead of a script to attach the device to a bridge. The helper program can then be installed as setuid. The helper program supports a simple ACL and configuration mechanism, see the commit message and feature page for documentation.
## Live Migration, Save/Restore
* Live migration (or save/restore) from QEMU releases prior to 0.13 to QEMU 1.1 is not supported.
* Live migration supports IPv6. IPv6 addresses can be expressed as tcp:host:port. Brackets around a numeric host address are required if a port is also specified, otherwise they can be omitted.
# Guest agent
* qemu-ga has been ported to Windows.
* Interfaces added for suspending guests to disk/ram, and retrieving information about network interfaces
* Interfaces for filesystem freeze have been hardened, and no longer depend on guest agent runtime state to determine whether a system is currently frozen.
* An easier to use reset mechanism has been added: guest-sync-delimited.
# Host support
* ARM hosts are now supported again (they were broken in 1.0).
* Sockets and SLIRP on Windows hosts was broken in 0.14 and works again.
* 64-bit Windows hosts are now supported.
# User-mode emulation
* User-mode emulation can provide some information from the /proc filesystem.
* On 64-bit hosts user-mode emulation now defaults to reserving 0xf7000000 bytes of address space for the guest. This significantly reduces the likelihood of QEMU having to fail a guest mmap() request when there is still memory available. This reservation can be overridden with the -R command line option.
# Testing
* A make check target has been implemented and runs some quick sanity tests
* qemu-iotests, which was previously hosted in an external git repository, has been merged into the QEMU source tree
# Build dependencies
* Building QEMU requires glib 2.12 on POSIX systems, and glib 2.20 on Win32 systems.
This package starting failing this week. It was due to an change in the
system binutils which turned on link time optimization support. This
was intended for external compilers.
The package picked up that the linker was capable of supporting -flto, but
then just assumed the compiler also was! "4.4.7" was added to the list of
compilers to exclude. Earlier versions are not necessary because the
-flto switch would be suppressed anyway due to binutils not supporting it.
The current package won't compile if using libz >= 1.2.6 due to a typedef
change of GzFile. Luckily this packages used macros for gz* functions
which significantly cut down the number of lines to be patched.
As previously predicted, the horrible code in archive.c wouldn't last long
before breaking. There were a few dozen errors erupting when libz 1.2.7
header was used. The previous patch-af was appended, but the previous fix
for linux was changed because that was broken too.
Info: typedef of gzFile changed from void* at version 1.2.6, so its use
is no longer optional with libz versions >= 1.2.6.
The current package won't compile if using libz >= 1.2.6 due to a typedef
change of GzFile. Fix inspired by r1091 at vbam.svn.sourceforge.net
Package broke after DragonFly upgraded system libz from 1.2.5 to 1.2.7