Hi Adam, * Thorsten Glaser <t...@mirbsd.de> [2013-04-24 19:25] wrote: > Oh great, this one FTBFS on kfreebsd… again. Although that’s > not dependent on the delta between -3.1 and -5…
The -6 should address that. Debdiff attached. I am currently on business trip, but Thorsten jumped in and made a needed cherrypick, so I've only needed to compile it and upload it. Thanks again Thorsten. Antonin
diff -Nru aranym-0.9.13/debian/changelog aranym-0.9.13/debian/changelog --- aranym-0.9.13/debian/changelog 2012-05-06 23:50:52.000000000 +0200 +++ aranym-0.9.13/debian/changelog 2013-04-25 06:11:53.000000000 +0200 @@ -1,3 +1,23 @@ +aranym (0.9.13-6) testing-proposed-updates; urgency=low + + [ Thorsten Glaser ] + * handle libusb dependency on kfreebsd (Closes: #690007) + + -- Antonin Kral <a.k...@sh.cvut.cz> Wed, 24 Apr 2013 20:02:06 +0000 + +aranym (0.9.13-5) testing-proposed-updates; urgency=low + + * Reupload of -4 with merged previously forgotten NMU -3.1 + + -- Antonin Kral <a.k...@sh.cvut.cz> Wed, 24 Apr 2013 11:40:18 +0200 + +aranym (0.9.13-4) testing-proposed-updates; urgency=low + + * cherrypick patch for NatFeast problem (Closes: #698064) + to get ARAnyM to wheezy + + -- Antonin Kral <a.k...@sh.cvut.cz> Wed, 24 Apr 2013 08:56:45 +0200 + aranym (0.9.13-3.1) unstable; urgency=low * Non-maintainer upload. diff -Nru aranym-0.9.13/debian/control aranym-0.9.13/debian/control --- aranym-0.9.13/debian/control 2012-05-06 23:44:18.000000000 +0200 +++ aranym-0.9.13/debian/control 2013-04-25 06:11:53.000000000 +0200 @@ -4,7 +4,7 @@ Maintainer: Antonin Kral <a.k...@sh.cvut.cz> Homepage: http://aranym.org/ Standards-Version: 3.9.3 -Build-Depends: debhelper (>= 5), autotools-dev, bzip2, libsdl1.2-dev, libsdl-image1.2-dev, libmpfr-dev, libusb-1.0-0-dev, imagemagick, zlib1g-dev +Build-Depends: debhelper (>= 5), autotools-dev, bzip2, libsdl1.2-dev, libsdl-image1.2-dev, libmpfr-dev, libusb-1.0-0-dev [!kfreebsd-any], imagemagick, zlib1g-dev Package: aranym Architecture: any diff -Nru aranym-0.9.13/debian/patches/0006-NatFeats-patch-to-address-Bug-698064.patch aranym-0.9.13/debian/patches/0006-NatFeats-patch-to-address-Bug-698064.patch --- aranym-0.9.13/debian/patches/0006-NatFeats-patch-to-address-Bug-698064.patch 1970-01-01 01:00:00.000000000 +0100 +++ aranym-0.9.13/debian/patches/0006-NatFeats-patch-to-address-Bug-698064.patch 2013-04-25 06:11:53.000000000 +0200 @@ -0,0 +1,151 @@ +From: Antonin Kral <a.k...@bobek.cz> +Date: Wed, 24 Apr 2013 08:47:40 +0200 +Subject: NatFeats patch to address Bug#698064 + +--- + src/include/natfeats.h | 98 ++++++++++++++++++++++++++++++++++++------------ + 1 file changed, 74 insertions(+), 24 deletions(-) + +diff --git a/src/include/natfeats.h b/src/include/natfeats.h +index e5ff8ab..c6155b8 100644 +--- a/src/include/natfeats.h ++++ b/src/include/natfeats.h +@@ -1,3 +1,26 @@ ++/* ++ * natfeats.h - common functions for all NatFeats ++ * ++ * Copyright (c) 2001-2013 Petr Stehlik of ARAnyM dev team (see AUTHORS) ++ * ++ * This file is part of the ARAnyM project which builds a new and powerful ++ * TOS/FreeMiNT compatible virtual machine running on almost any hardware. ++ * ++ * ARAnyM 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. ++ * ++ * ARAnyM 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 ARAnyM; if not, write to the Free Software ++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ++ */ ++ + #ifndef _NATFEATS_H + #define _NATFEATS_H + +@@ -14,6 +37,9 @@ extern uint32 nf_getparameter(int); + // should NatFeats work with physical (not MMU mapped) addresses + #define NATFEAT_PHYS_ADDR 1 + ++// should NatFeats use direct memcpy() to/from guest provided pointer (fast but less safe) ++#define NATFEAT_LIBC_MEMCPY 1 ++ + #if NATFEAT_PHYS_ADDR + # define ReadNFInt8 ReadAtariInt8 + # define ReadNFInt16 ReadAtariInt16 +@@ -30,53 +56,77 @@ extern uint32 nf_getparameter(int); + # define WriteNFInt32 WriteInt32 + #endif + +-static inline void Atari2Host_memcpy(void *dst, memptr src, size_t n) ++static inline void Atari2Host_memcpy(void *_dst, memptr src, size_t count) + { +-#if NATFEAT_PHYS_ADDR +- memcpy(dst, Atari2HostAddr(src), n); ++#if NATFEAT_LIBC_MEMCPY && NATFEAT_PHYS_ADDR ++ memptr src_end = src + count - 1; ++ if (! ValidAtariAddr(src, false, 1)) ++ BUS_ERROR(src); ++ if (! ValidAtariAddr(src_end, false, 1)) ++ BUS_ERROR(src_end); ++ ++ memcpy(_dst, Atari2HostAddr(src), count); + #else +- uint8 *dest = (uint8 *)dst; +- while ( n-- ) +- *dest++ = (char)ReadInt8( (uint32)src++ ); ++ uint8 *dst = (uint8 *)_dst; ++ while ( count-- ) ++ *dst++ = (char)ReadNFInt8( src++ ); + #endif + } + +-static inline void Host2Atari_memcpy(memptr dest, const void *src, size_t n) ++static inline void Host2Atari_memcpy(memptr dst, const void *_src, size_t count) + { +-#if NATFEAT_PHYS_ADDR +- memcpy(Atari2HostAddr(dest), src, n); ++#if NATFEAT_LIBC_MEMCPY && NATFEAT_PHYS_ADDR ++ memptr dst_end = dst + count - 1; ++ if (! ValidAtariAddr(dst, true, 1)) ++ BUS_ERROR(dst); ++ if (! ValidAtariAddr(dst_end, true, 1)) ++ BUS_ERROR(dst_end); ++ ++ memcpy(Atari2HostAddr(dst), _src, count); + #else +- uint8 *source = (uint8 *)src; +- while ( n-- ) +- WriteInt8( dest++, *source++ ); ++ uint8 *src = (uint8 *)_src; ++ while ( count-- ) ++ WriteNFInt8( dst++, *src++ ); + #endif + } + +-static inline void Atari2HostSafeStrncpy( char *dest, memptr source, size_t count ) ++static inline void Atari2HostSafeStrncpy(char *dst, memptr src, size_t count) + { +-#if NATFEAT_PHYS_ADDR +- safe_strncpy(dest, (const char*)Atari2HostAddr(source), count); ++#if NATFEAT_LIBC_MEMCPY && NATFEAT_PHYS_ADDR ++ memptr src_end = src + count - 1; ++ if (! ValidAtariAddr(src, false, 1)) ++ BUS_ERROR(src); ++ if (! ValidAtariAddr(src_end, false, 1)) ++ BUS_ERROR(src_end); ++ ++ safe_strncpy(dst, (const char*)Atari2HostAddr(src), count); + #else +- while ( count > 1 && (*dest = (char)ReadInt8( source++ )) != 0 ) { ++ while ( count > 1 && (*dst = (char)ReadNFInt8( src++ )) != 0 ) { + count--; +- dest++; ++ dst++; + } + if (count > 0) +- *dest = '\0'; ++ *dst = '\0'; + #endif + } + +-static inline void Host2AtariSafeStrncpy( memptr dest, const char *source, size_t count ) ++static inline void Host2AtariSafeStrncpy(memptr dst, const char *src, size_t count) + { +-#if NATFEAT_PHYS_ADDR +- safe_strncpy((char *)Atari2HostAddr(dest), source, count); ++#if NATFEAT_LIBC_MEMCPY && NATFEAT_PHYS_ADDR ++ memptr dst_end = dst + count - 1; ++ if (! ValidAtariAddr(dst, true, 1)) ++ BUS_ERROR(dst); ++ if (! ValidAtariAddr(dst_end, true, 1)) ++ BUS_ERROR(dst_end); ++ ++ safe_strncpy((char *)Atari2HostAddr(dst), src, count); + #else +- while ( count > 1 && *source ) { +- WriteInt8( dest++, (uint8)*source++ ); ++ while ( count > 1 && *src ) { ++ WriteNFInt8( dst++, (uint8)*src++ ); + count--; + } + if (count > 0) +- WriteInt8( dest, 0 ); ++ WriteNFInt8( dst, 0 ); + #endif + } + #endif /* _NATFEATS_H */ diff -Nru aranym-0.9.13/debian/patches/series aranym-0.9.13/debian/patches/series --- aranym-0.9.13/debian/patches/series 2012-05-06 23:47:50.000000000 +0200 +++ aranym-0.9.13/debian/patches/series 2013-04-25 06:11:53.000000000 +0200 @@ -3,3 +3,4 @@ 0003-fix-missing-libusb.h-on-kfreebsd-platforms-Closes-66.patch 0004-fix-spelling.patch 0005-fix-zlib-configure.patch +0006-NatFeats-patch-to-address-Bug-698064.patch diff -Nru aranym-0.9.13/debian/rules aranym-0.9.13/debian/rules --- aranym-0.9.13/debian/rules 2012-05-06 23:49:48.000000000 +0200 +++ aranym-0.9.13/debian/rules 2013-04-25 06:11:53.000000000 +0200 @@ -16,6 +16,14 @@ HOSTTYPE = i386 endif +DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS) + +ifeq (${DEB_HOST_ARCH_OS},kfreebsd) + CF_USB = --disable-usbhost +else + CF_USB = --enable-usbhost +endif + build: build-arch build-indep build-arch: build-stamp build-indep: build-stamp @@ -23,11 +31,11 @@ dh_testdir ([ ! -f Makefile ] || $(MAKE) distclean) - (bash configure --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) --prefix=/usr --enable-usbhost && $(MAKE)) + (bash configure --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) --prefix=/usr ${CF_USB} && $(MAKE)) ($(MAKE) install DESTDIR=`pwd`/debian/tmp ) ([ ! -f Makefile ] || $(MAKE) distclean) - (bash configure --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) --prefix=/usr --enable-fullmmu --enable-lilo --enable-usbhost && $(MAKE)) + (bash configure --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) --prefix=/usr --enable-fullmmu --enable-lilo ${CF_USB} && $(MAKE)) ($(MAKE) install DESTDIR=`pwd`/debian/aranym-mmu ) cp `pwd`/debian/aranym-mmu/usr/bin/aranym `pwd`/debian/tmp/usr/bin/aranym-mmu @@ -35,7 +43,7 @@ ifeq ($(HOSTTYPE),i386) ([ ! -f Makefile ] || $(MAKE) distclean) - (bash configure --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) --prefix=/usr --enable-jit-compiler --enable-usbhost && $(MAKE)) + (bash configure --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) --prefix=/usr --enable-jit-compiler ${CF_USB} && $(MAKE)) ($(MAKE) install DESTDIR=`pwd`/debian/aranym-jit ) cp `pwd`/debian/aranym-jit/usr/bin/aranym `pwd`/debian/tmp/usr/bin/aranym-jit