pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[PATCH] emulators/qemu and DragonFly



0.9.0 (the version currently in pkgsrc) does not compile on DragonFly without
additional patches, which are attached with this message. The two new patch
files are separate files (attached as patch-ab and patch-ad) that should be
put into patches/.

This patchset is based on the patches published by Patrick Georgi (the original
patches are at: http://openbios.org/~oxygene/patch-20070816-1-qemu-on-dfly)
and I got his permission to take over the maintenance of the patch set.
$NetBSD$

--- Makefile.target.orig        2007-02-05 23:01:54 +0000
+++ Makefile.target
@@ -72,6 +72,10 @@ endif
 # We require -O2 to avoid the stack setup prologue in EXIT_TB
 OP_CFLAGS = -Wall -O2 -g -fno-strict-aliasing
 
+ifdef STACK_PROTECTOR_PRESENT
+OP_CFLAGS += -fno-stack-protector
+endif
+
 ifeq ($(ARCH),i386)
 HELPER_CFLAGS+=-fomit-frame-pointer
 OP_CFLAGS+=-mpreferred-stack-boundary=2 -fomit-frame-pointer
@@ -440,10 +444,12 @@ endif
 ifndef CONFIG_DARWIN
 ifndef CONFIG_WIN32
 ifndef CONFIG_SOLARIS
+ifndef CONFIG_DRAGONFLY
 VL_LIBS=-lutil -lrt
 endif
 endif
 endif
+endif
 ifdef TARGET_GPROF
 vl.o: BASE_CFLAGS+=-p
 VL_LDFLAGS+=-p

$NetBSD$

--- block.c.orig        2007-02-05 23:01:54 +0000
+++ block.c
@@ -29,8 +29,10 @@
 #include <sys/stat.h>
 #include <sys/ioctl.h>
 #include <sys/queue.h>
+#ifndef __DragonFly__
 #include <sys/disk.h>
 #endif
+#endif
 
 #define SECTOR_BITS 9
 #define SECTOR_SIZE (1 << SECTOR_BITS)

? patches/patch-ab
? patches/patch-ad
Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/Makefile,v
retrieving revision 1.50
diff -u -p -d -r1.50 Makefile
--- Makefile    24 Dec 2007 10:18:22 -0000      1.50
+++ Makefile    25 Dec 2007 21:12:41 -0000
@@ -50,11 +50,6 @@ REPLACE_PERL+=               texi2pod.pl
 # to build in the SSE code.
 BUILDLINK_TRANSFORM+=  rm-optarg:-march rm-optarg:-mcpu rm:-msse rm:-msse2
 
-# Does not build with the stack protector
-.if ${OPSYS} == "DragonFly"
-CFLAGS+=               -fno-stack-protector
-.endif
-
 .include "../../mk/compiler.mk"
 
 .if !empty(CC_VERSION:Mgcc-4*)
Index: distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/distinfo,v
retrieving revision 1.35
diff -u -p -d -r1.35 distinfo
--- distinfo    24 Dec 2007 10:18:22 -0000      1.35
+++ distinfo    25 Dec 2007 21:12:41 -0000
@@ -3,15 +3,17 @@ $NetBSD: distinfo,v 1.35 2007/12/24 10:1
 SHA1 (qemu-0.9.0.tar.gz) = 1e57e48a06eb8729913d92601000466eecef06cb
 RMD160 (qemu-0.9.0.tar.gz) = 4296542b6da18a6ac93d20787330d3c1c2ac0a19
 Size (qemu-0.9.0.tar.gz) = 1901741 bytes
-SHA1 (patch-aa) = 455575215bad8864da285e1979da9ff7d8476a24
-SHA1 (patch-ac) = f3f37f2e72de28077a6579b12ecb2ea6650eea85
-SHA1 (patch-ag) = 91f10c4556a45ca3ec19efe67dcaa6625902c120
-SHA1 (patch-ak) = 004f47719cd533354162c336da833c20a2b288af
-SHA1 (patch-am) = a22a3b23284c377afa8113768d68c8ef40c514f9
-SHA1 (patch-ao) = e92d56f991cf29f83e39464f9e695caa86fe5fe0
-SHA1 (patch-au) = 8dec416dcff966ecf23bd8cb7904ab5bed22d08a
-SHA1 (patch-av) = 715e9680d70c1aa1c83bda0270125144a26d6140
-SHA1 (patch-aw) = 3b1472a95a2312f9e49ea1a6aa517ad81328324c
-SHA1 (patch-ax) = 66b060005ecbf9fd0451f7960e81eccbabf959ca
-SHA1 (patch-ay) = 2d3051685878abe077abdbba9681bd04e04c7fb3
-SHA1 (patch-ba) = 7c5043a39405f52b512e479a46fc76108580b7bc
+SHA1 (patch-aa) = 08f5d49b90f1f86dc7817677eea3d09169493116
+SHA1 (patch-ab) = 29870b0bec5f9fa08267dfb9208d75d1d735714a
+SHA1 (patch-ac) = 1c0d98305bb97018dac56165d670929bae0288af
+SHA1 (patch-ad) = ac69a03e4945e8c8fd5aadca070b876d0970910d
+SHA1 (patch-ag) = 8480b6f840bcad845d76df996f913d2ad6750b8c
+SHA1 (patch-ak) = 11669ec0ac62c0c90b7d2bfecb1f6efe3cb82fd2
+SHA1 (patch-am) = 2843d4376c9d5c615c9b41095e80145080beb043
+SHA1 (patch-ao) = 4b63d59e5c44f8553d6a9097eef5fd04c4ecb66f
+SHA1 (patch-au) = 2a251ae46504f465e7b1956dd3a973473b515f79
+SHA1 (patch-av) = ea46b3afceb8168213b7b7cbe220193ce912aeb0
+SHA1 (patch-aw) = 22a029e68bb68e9724e926a979f0aabcd90104ad
+SHA1 (patch-ax) = 65075df364a8bcca0547b7ab05aa0b5ec85434a7
+SHA1 (patch-ay) = 02f24f223456ae3946ec0a63396dabbc5fd2bcd2
+SHA1 (patch-ba) = b93ee5b3790a4619ca7c6cbe8cd4782ed516c4ae
Index: patches/patch-aa
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/patches/patch-aa,v
retrieving revision 1.3
diff -u -p -d -r1.3 patch-aa
--- patches/patch-aa    14 Dec 2004 01:02:19 -0000      1.3
+++ patches/patch-aa    25 Dec 2007 21:12:41 -0000
@@ -1,6 +1,6 @@
 $NetBSD: patch-aa,v 1.3 2004/12/14 01:02:19 dbj Exp $
 
---- bswap.h.orig       Sun Nov 14 15:51:33 2004
+--- bswap.h.orig       2007-02-05 23:01:54 +0000
 +++ bswap.h
 @@ -5,6 +5,12 @@
  
@@ -15,12 +15,12 @@ $NetBSD: patch-aa,v 1.3 2004/12/14 01:02
  #ifdef HAVE_BYTESWAP_H
  #include <byteswap.h>
  #else
-@@ -57,6 +63,8 @@ static inline uint64_t bswap64(uint64_t 
- {
+@@ -58,6 +64,8 @@ static inline uint64_t bswap64(uint64_t 
      return bswap_64(x);
  }
-+
-+#endif /* ! HAVE_MACHINE_BSWAP_H */
  
++#endif /* ! HAVE_MACHINE_BSWAP_H */
++
  static inline void bswap16s(uint16_t *s)
  {
+     *s = bswap16(*s);
Index: patches/patch-ac
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/patches/patch-ac,v
retrieving revision 1.9
diff -u -p -d -r1.9 patch-ac
--- patches/patch-ac    18 Dec 2007 00:16:56 -0000      1.9
+++ patches/patch-ac    25 Dec 2007 21:12:41 -0000
@@ -1,7 +1,7 @@
 $NetBSD: patch-ac,v 1.9 2007/12/18 00:16:56 joerg Exp $
 
---- vl.c.orig  2007-05-02 01:56:26.000000000 +0200
-+++ vl.c       2007-05-02 01:57:42.000000000 +0200
+--- vl.c.orig  2007-02-05 23:01:54 +0000
++++ vl.c
 @@ -44,7 +44,7 @@
  #include <netdb.h>
  #ifdef _BSD
@@ -11,7 +11,7 @@ $NetBSD: patch-ac,v 1.9 2007/12/18 00:16
  #include <libutil.h>
  #endif
  #else
-@@ -1801,6 +1801,9 @@
+@@ -1801,6 +1801,9 @@ static CharDriverState *qemu_chr_open_tt
  
  static int pp_ioctl(CharDriverState *chr, int cmd, void *arg)
  {
@@ -21,7 +21,7 @@ $NetBSD: patch-ac,v 1.9 2007/12/18 00:16
      int fd = (int)chr->opaque;
      uint8_t b;
  
-@@ -1838,6 +1841,9 @@
+@@ -1838,6 +1841,9 @@ static int pp_ioctl(CharDriverState *chr
  
  static CharDriverState *qemu_chr_open_pp(const char *filename)
  {
Index: patches/patch-ag
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/patches/patch-ag,v
retrieving revision 1.8
diff -u -p -d -r1.8 patch-ag
--- patches/patch-ag    6 Jan 2007 21:21:35 -0000       1.8
+++ patches/patch-ag    25 Dec 2007 21:12:41 -0000
@@ -1,8 +1,8 @@
 $NetBSD: patch-ag,v 1.8 2007/01/06 21:21:35 xtraeme Exp $
 
---- configure.orig     2006-12-07 16:59:57.000000000 +0100
-+++ configure  2006-12-07 17:02:12.000000000 +0100
-@@ -27,7 +27,7 @@
+--- configure.orig     2007-02-05 23:01:54 +0000
++++ configure
+@@ -29,7 +29,7 @@ ar="ar"
  make="make"
  install="install"
  strip="strip"
@@ -11,7 +11,7 @@ $NetBSD: patch-ag,v 1.8 2007/01/06 21:21
  target_list=""
  case "$cpu" in
    i386|i486|i586|i686|i86pc|BePC)
-@@ -42,7 +42,7 @@
+@@ -44,7 +44,7 @@ case "$cpu" in
    alpha)
      cpu="alpha"
    ;;
@@ -20,7 +20,7 @@ $NetBSD: patch-ag,v 1.8 2007/01/06 21:21
      cpu="powerpc"
    ;;
    mips)
-@@ -115,6 +115,12 @@
+@@ -116,6 +116,12 @@ if [ "$cpu" = "i386" -o "$cpu" = "x86_64
      kqemu="yes"
  fi
  ;;
@@ -33,7 +33,24 @@ $NetBSD: patch-ag,v 1.8 2007/01/06 21:21
  NetBSD)
  bsd="yes"
  oss="yes"
-@@ -509,7 +515,7 @@
+@@ -371,6 +377,16 @@ EOF
+     fi
+ fi
+ 
++# Check for stack protector
++cat > $TMPC <<EOF
++extern int foo;
++EOF
++if "$cc" -o $TMPE $TMPC -fno-stack-protector 2> /dev/null ; then
++  stack_protector_present="no"
++else
++  stack_protector_present="yes"
++fi
++
+ #
+ # Solaris specific configure tool chain decisions
+ #
+@@ -573,7 +589,7 @@ else
  if test -z "$prefix" ; then
      prefix="/usr/local"
  fi
@@ -42,7 +59,7 @@ $NetBSD: patch-ag,v 1.8 2007/01/06 21:21
  datadir="$prefix/share/qemu"
  docdir="$prefix/share/doc/qemu"
  bindir="$prefix/bin"
-@@ -646,6 +652,11 @@
+@@ -711,6 +727,11 @@ if test "$mingw32" = "yes" ; then
    echo "#define CONFIG_WIN32 1" >> $config_h
  elif test -f "/usr/include/byteswap.h" ; then
    echo "#define HAVE_BYTESWAP_H 1" >> $config_h
@@ -54,3 +71,14 @@ $NetBSD: patch-ag,v 1.8 2007/01/06 21:21
  fi
  if test "$darwin" = "yes" ; then
    echo "CONFIG_DARWIN=yes" >> $config_mak
+@@ -785,6 +806,10 @@ if [ "$bsd" = "yes" ] ; then
+   echo "#define _BSD 1" >> $config_h
+ fi
+ 
++if [ "$stack_protector_present" = "yes" ] ; then
++  echo "STACK_PROTECTOR_PRESENT=yes" >> $config_mak
++fi
++
+ echo "#define CONFIG_UNAME_RELEASE \"$uname_release\"" >> $config_h
+ 
+ for target in $target_list; do
Index: patches/patch-ak
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/patches/patch-ak,v
retrieving revision 1.11
diff -u -p -d -r1.11 patch-ak
--- patches/patch-ak    18 Dec 2007 00:16:56 -0000      1.11
+++ patches/patch-ak    25 Dec 2007 21:12:41 -0000
@@ -1,8 +1,21 @@
 $NetBSD: patch-ak,v 1.11 2007/12/18 00:16:56 joerg Exp $
 
---- Makefile.orig      2007-02-06 00:01:54.000000000 +0100
+--- Makefile.orig      2007-02-05 23:01:54 +0000
 +++ Makefile
-@@ -66,21 +66,21 @@ ar      de     en-us  fi  fr-be  hr     
+@@ -27,10 +27,12 @@ endif
+ ifndef CONFIG_DARWIN
+ ifndef CONFIG_WIN32
+ ifndef CONFIG_SOLARIS
++ifndef CONFIG_DRAGONFLY
+ LIBS+=-lrt
+ endif
+ endif
+ endif
++endif
+ 
+ all: $(TOOLS) $(DOCS) recurse-all
+ 
+@@ -66,21 +68,21 @@ ar      de     en-us  fi  fr-be  hr     
  common  de-ch  es     fo  fr-ca  hu     ja  mk  nl-be      pt  sl     tr
  
  install-doc: $(DOCS)
Index: patches/patch-am
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/patches/patch-am,v
retrieving revision 1.2
diff -u -p -d -r1.2 patch-am
--- patches/patch-am    1 Jan 2006 13:48:45 -0000       1.2
+++ patches/patch-am    25 Dec 2007 21:12:41 -0000
@@ -1,8 +1,8 @@
 $NetBSD: patch-am,v 1.2 2006/01/01 13:48:45 xtraeme Exp $
 
---- audio/ossaudio.c.orig      2005-12-19 17:51:53.000000000 -0500
+--- audio/ossaudio.c.orig      2007-02-05 23:01:54 +0000
 +++ audio/ossaudio.c
-@@ -229,7 +229,7 @@ static int oss_open (int in, struct oss_
+@@ -231,7 +231,7 @@ static int oss_open (int in, struct oss_
          goto err;
      }
  
Index: patches/patch-ao
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/patches/patch-ao,v
retrieving revision 1.2
diff -u -p -d -r1.2 patch-ao
--- patches/patch-ao    1 Jan 2006 13:48:45 -0000       1.2
+++ patches/patch-ao    25 Dec 2007 21:12:41 -0000
@@ -1,6 +1,6 @@
 $NetBSD: patch-ao,v 1.2 2006/01/01 13:48:45 xtraeme Exp $
 
---- audio/mixeng.c.orig        2005-12-19 17:51:53.000000000 -0500
+--- audio/mixeng.c.orig        2007-02-05 23:01:54 +0000
 +++ audio/mixeng.c
 @@ -101,48 +101,56 @@
  #undef IN_T
Index: patches/patch-au
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/patches/patch-au,v
retrieving revision 1.4
diff -u -p -d -r1.4 patch-au
--- patches/patch-au    18 Dec 2007 00:16:56 -0000      1.4
+++ patches/patch-au    25 Dec 2007 21:12:41 -0000
@@ -1,7 +1,7 @@
 $NetBSD: patch-au,v 1.4 2007/12/18 00:16:56 joerg Exp $
 
---- fpu/softfloat-native.h.orig        2007-02-06 00:01:54.000000000 +0100
-+++ fpu/softfloat-native.h     2007-05-02 01:54:50.000000000 +0200
+--- fpu/softfloat-native.h.orig        2007-02-05 23:01:54 +0000
++++ fpu/softfloat-native.h
 @@ -33,6 +33,24 @@
  #define isunordered(x,y)        unordered(x, y)
  #endif
Index: patches/patch-av
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/patches/patch-av,v
retrieving revision 1.3
diff -u -p -d -r1.3 patch-av
--- patches/patch-av    7 Oct 2007 21:21:00 -0000       1.3
+++ patches/patch-av    25 Dec 2007 21:12:41 -0000
@@ -2,7 +2,7 @@ $NetBSD: patch-av,v 1.3 2007/10/07 21:21
 
   Provide trunc() implementation for NetBSD 3 and Dragonfly
 
---- fpu/softfloat-native.c.orig        2007-02-06 00:01:54.000000000 +0100
+--- fpu/softfloat-native.c.orig        2007-02-05 23:01:54 +0000
 +++ fpu/softfloat-native.c
 @@ -3,6 +3,20 @@
  #include "softfloat.h"
Index: patches/patch-aw
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/patches/patch-aw,v
retrieving revision 1.2
diff -u -p -d -r1.2 patch-aw
--- patches/patch-aw    6 Jan 2007 21:21:35 -0000       1.2
+++ patches/patch-aw    25 Dec 2007 21:12:41 -0000
@@ -7,9 +7,9 @@ Index: dyngen.c
 RCS file: /cvsroot/qemu/qemu/dyngen.c,v
 retrieving revision 1.40
 diff -u -r1.40 dyngen.c
---- dyngen.c.orig      2007-01-05 20:32:17.000000000 +0000
-+++ dyngen.c   2007-01-05 20:36:45.000000000 +0000
-@@ -1624,6 +1624,7 @@
+--- dyngen.c.orig      2007-02-05 23:01:54 +0000
++++ dyngen.c
+@@ -1703,6 +1703,7 @@ void gen_code(const char *name, host_ulo
                  if(!sym_name)
                      continue;
                  if (*sym_name && 
@@ -17,7 +17,7 @@ diff -u -r1.40 dyngen.c
                      !strstart(sym_name, "__op_param", NULL) &&
                      !strstart(sym_name, "__op_jmp", NULL) &&
                      !strstart(sym_name, "__op_gen_label", NULL)) {
-@@ -1647,6 +1648,9 @@
+@@ -1726,6 +1727,9 @@ void gen_code(const char *name, host_ulo
                                 */
                                fprintf(outfile, "    extern char %s;\n",
                                        sym_name);
Index: patches/patch-ax
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/patches/patch-ax,v
retrieving revision 1.3
diff -u -p -d -r1.3 patch-ax
--- patches/patch-ax    6 Jan 2006 09:17:03 -0000       1.3
+++ patches/patch-ax    25 Dec 2007 21:12:41 -0000
@@ -1,8 +1,8 @@
 $NetBSD: patch-ax,v 1.3 2006/01/06 09:17:03 xtraeme Exp $
 
---- target-i386/op.c.orig      2006-01-06 05:10:30.000000000 +0100
+--- target-i386/op.c.orig      2007-02-05 23:01:54 +0000
 +++ target-i386/op.c
-@@ -2099,14 +2099,17 @@ void OPPROTO op_fdivr_STN_ST0(void)
+@@ -2162,14 +2162,17 @@ void OPPROTO op_fdivr_STN_ST0(void)
  }
  
  /* misc FPU operations */
Index: patches/patch-ay
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/patches/patch-ay,v
retrieving revision 1.7
diff -u -p -d -r1.7 patch-ay
--- patches/patch-ay    21 May 2007 20:24:48 -0000      1.7
+++ patches/patch-ay    25 Dec 2007 21:12:41 -0000
@@ -1,6 +1,6 @@
 $NetBSD: patch-ay,v 1.7 2007/05/21 20:24:48 xtraeme Exp $
 
---- block-raw.c.orig   2007-02-06 00:01:54.000000000 +0100
+--- block-raw.c.orig   2007-02-05 23:01:54 +0000
 +++ block-raw.c
 @@ -25,7 +25,9 @@
  #include "block_int.h"
Index: patches/patch-ba
===================================================================
RCS file: /cvsroot/pkgsrc/emulators/qemu/patches/patch-ba,v
retrieving revision 1.1
diff -u -p -d -r1.1 patch-ba
--- patches/patch-ba    24 Dec 2007 10:18:22 -0000      1.1
+++ patches/patch-ba    25 Dec 2007 21:12:41 -0000
@@ -1,6 +1,6 @@
 $NetBSD: patch-ba,v 1.1 2007/12/24 10:18:22 apb Exp $
 
---- hw/pcspk.c.orig    2007-02-06 01:01:54.000000000 +0200
+--- hw/pcspk.c.orig    2007-02-05 23:01:54 +0000
 +++ hw/pcspk.c
 @@ -38,7 +38,6 @@ typedef struct {
      unsigned int samples;



Home | Main Index | Thread Index | Old Index