Hello community, here is the log from the commit of package libEMF for openSUSE:Factory checked in at 2012-11-24 21:26:58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libEMF (Old) and /work/SRC/openSUSE:Factory/.libEMF.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libEMF", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/libEMF/libEMF.changes 2012-08-22 12:12:40.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.libEMF.new/libEMF.changes 2012-11-24 21:27:00.000000000 +0100 @@ -1,0 +2,6 @@ +Wed Nov 7 16:25:41 CET 2012 - [email protected] + +- Upgrade to version 1.0.7: + * Fixes and additions for various non-x86 architectures. + +------------------------------------------------------------------- Old: ---- fix-arm.patch libEMF-1.0.6.tar.gz New: ---- libEMF-1.0.7.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libEMF.spec ++++++ --- /var/tmp/diff_new_pack.bnfZ4W/_old 2012-11-24 21:27:01.000000000 +0100 +++ /var/tmp/diff_new_pack.bnfZ4W/_new 2012-11-24 21:27:01.000000000 +0100 @@ -18,17 +18,16 @@ Name: libEMF BuildRequires: gcc-c++ -Version: 1.0.6 +Version: 1.0.7 Release: 0 Source: %{name}-%{version}.tar.gz -Patch0: fix-arm.patch Url: http://libemf.sourceforge.net/ BuildRoot: %{_tmppath}/%{name}-%{version}-build Summary: Library for Manipulation with Enhanced MetaFile (EMF, ECMA-234) License: LGPL-2.1+ ; GPL-2.0+ Group: System/Libraries # taken from includes/wine/winnt.h -ExclusiveArch: %ix86 x86_64 ppc64 sparc %arm +ExclusiveArch: alpha %arm %ix86 mips ppc ppc64 sparc s390 s390x x86_64 %description LibEMF is a C/C++ library that provides a drawing toolkit based on @@ -91,7 +90,6 @@ %prep %setup -q -%patch0 -p1 %build %configure\ ++++++ libEMF-1.0.6.tar.gz -> libEMF-1.0.7.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libEMF-1.0.6/configure new/libEMF-1.0.7/configure --- old/libEMF-1.0.6/configure 2012-05-24 17:52:56.000000000 +0200 +++ new/libEMF-1.0.7/configure 2012-11-07 12:21:50.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for libEMF 1.0.6. +# Generated by GNU Autoconf 2.63 for libEMF 1.0.7. # # Report bugs to <[email protected]>. # @@ -745,8 +745,8 @@ # Identity of this package. PACKAGE_NAME='libEMF' PACKAGE_TARNAME='libemf' -PACKAGE_VERSION='1.0.6' -PACKAGE_STRING='libEMF 1.0.6' +PACKAGE_VERSION='1.0.7' +PACKAGE_STRING='libEMF 1.0.7' PACKAGE_BUGREPORT='[email protected]' ac_unique_file="include/libEMF/emf.h" @@ -1487,7 +1487,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libEMF 1.0.6 to adapt to many kinds of systems. +\`configure' configures libEMF 1.0.7 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1557,7 +1557,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libEMF 1.0.6:";; + short | recursive ) echo "Configuration of libEMF 1.0.7:";; esac cat <<\_ACEOF @@ -1662,7 +1662,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libEMF configure 1.0.6 +libEMF configure 1.0.7 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1676,7 +1676,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libEMF $as_me 1.0.6, which was +It was created by libEMF $as_me 1.0.7, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2525,7 +2525,7 @@ # Define the identity of the package. PACKAGE=libEMF - VERSION=1.0.6 + VERSION=1.0.7 cat >>confdefs.h <<_ACEOF @@ -17293,7 +17293,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libEMF $as_me 1.0.6, which was +This file was extended by libEMF $as_me 1.0.7, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -17356,7 +17356,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -libEMF config.status 1.0.6 +libEMF config.status 1.0.7 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libEMF-1.0.6/configure.ac new/libEMF-1.0.7/configure.ac --- old/libEMF-1.0.6/configure.ac 2012-05-24 17:52:56.000000000 +0200 +++ new/libEMF-1.0.7/configure.ac 2012-11-07 12:21:39.000000000 +0100 @@ -1,10 +1,10 @@ # Process this file with autoconf to produce a configure script. # Copyright (C) 2002, 2003 lignum Computing, Inc. <[email protected]> -# $Id: configure.ac 60 2012-05-24 15:51:23Z dallenbarnett $ +# $Id: configure.ac 66 2012-11-06 12:56:00Z dallenbarnett $ -AC_INIT(libEMF, 1.0.6, [email protected]) +AC_INIT(libEMF, 1.0.7, [email protected]) AC_CONFIG_AUX_DIR(config) -AM_INIT_AUTOMAKE(libEMF, 1.0.6) +AM_INIT_AUTOMAKE(libEMF, 1.0.7) AM_CONFIG_HEADER([config/config.h]) AC_CONFIG_SRCDIR([include/libEMF/emf.h]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libEMF-1.0.6/include/libEMF/wine/winnt.h new/libEMF-1.0.7/include/libEMF/wine/winnt.h --- old/libEMF-1.0.6/include/libEMF/wine/winnt.h 2012-05-24 17:52:51.000000000 +0200 +++ new/libEMF-1.0.7/include/libEMF/wine/winnt.h 2012-11-06 13:40:59.000000000 +0100 @@ -37,6 +37,14 @@ # undef WORDS_BIGENDIAN # undef BITFIELDS_BIGENDIAN # define ALLOW_UNALIGNED_ACCESS +#elif defined(__alpha__) +# undef WORDS_BIGENDIAN +# undef BITFIELDS_BIGENDIAN +# undef ALLOW_UNALIGNED_ACCESS +#elif defined(__arm__) +# undef WORDS_BIGENDIAN +# undef BITFIELDS_BIGENDIAN +# undef ALLOW_UNALIGNED_ACCESS #elif defined(__sparc__) # define WORDS_BIGENDIAN # define BITFIELDS_BIGENDIAN @@ -45,6 +53,10 @@ # define WORDS_BIGENDIAN # define BITFIELDS_BIGENDIAN # undef ALLOW_UNALIGNED_ACCESS +#elif defined(__s390__) +# define WORDS_BIGENDIAN +# define BITFIELDS_BIGENDIAN +# undef ALLOW_UNALIGNED_ACCESS #elif !defined(RC_INVOKED) # error Unknown CPU architecture! #endif @@ -238,7 +250,7 @@ typedef int INT, *PINT, *LPINT; typedef unsigned int UINT, *PUINT, *LPUINT; /* Not sure this is correct. Probably should depend on the compiler, too. */ -#if defined( __x86_64__) +#if defined( __LP64__) || defined(__alpha__) typedef unsigned int DWORD, *PDWORD, *LPDWORD; typedef unsigned int ULONG, *PULONG, *LPULONG; #else @@ -284,7 +296,7 @@ typedef BYTE BOOLEAN, *PBOOLEAN; typedef char CHAR, *PCHAR; typedef short SHORT, *PSHORT; -#if defined(__x86_64__) +#if defined(__LP64__) || defined(__alpha__) typedef int LONG, *PLONG, *LPLONG; #else typedef long LONG, *PLONG, *LPLONG; @@ -897,7 +909,7 @@ #endif /* __x86_64__ */ /* Alpha context definitions */ -#ifdef _ALPHA_ +#if defined(__alpha__) #define CONTEXT_ALPHA 0x00020000 @@ -1291,6 +1303,128 @@ #endif /* __sparc__ */ +#ifdef __s390__ + +/* + * FIXME: + * + * There is no official CONTEXT structure defined for the S390 + * architecture, so I just made one up. + * + * Note that this structure contains only the 'top-level' registers; + * the rest of the register window chain is not visible. + * + * The layout is based on the sparc one. + * + */ + +#define CONTEXT_S390C 0x20000000 + +#define CONTEXT_CONTROL (CONTEXT_S390 | 0x00000001) +#define CONTEXT_FLOATING_POINT (CONTEXT_S390 | 0x00000002) +#define CONTEXT_INTEGER (CONTEXT_S390 | 0x00000004) + +#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_FLOATING_POINT | CONTEXT_INTEGER) + +typedef struct _CONTEXT +{ + DWORD ContextFlags; + + /* These are selected by CONTEXT_INTEGER */ + DWORD r0; + DWORD r1; + DWORD r2; + DWORD r3; + DWORD r4; + DWORD r5; + DWORD r6; + DWORD r7; + DWORD r8; + DWORD r9; + DWORD r10; + DWORD r11; + DWORD r12; + DWORD r13; + DWORD r14; + DWORD r15; + + /* FIXME: this section is fictional (copied from sparc) */ + DWORD psr; + DWORD pc; + DWORD npc; + DWORD y; + DWORD wim; + DWORD tbr; + + /* FIXME: floating point registers missing */ + +} CONTEXT; + +#endif /* __s390__ */ + +#ifdef __arm__ + +/* These definitions are taken directly from wine + * http://source.winehq.org/git/wine.git/blob_plain/HEAD:/include/winnt.h */ + +/* The following flags control the contents of the CONTEXT structure. */ + +#define CONTEXT_ARM 0x0200000 +#define CONTEXT_CONTROL (CONTEXT_ARM | 0x00000001) +#define CONTEXT_INTEGER (CONTEXT_ARM | 0x00000002) +#define CONTEXT_FLOATING_POINT (CONTEXT_ARM | 0x00000004) +#define CONTEXT_DEBUG_REGISTERS (CONTEXT_ARM | 0x00000008) + +#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER) + +#define EXCEPTION_READ_FAULT 0 +#define EXCEPTION_WRITE_FAULT 1 +#define EXCEPTION_EXECUTE_FAULT 8 + +typedef struct _CONTEXT { +/* The flags values within this flag control the contents of + * a CONTEXT record. + * + * If the context record is used as an input parameter, then + * for each portion of the context record controlled by a flag + * whose value is set, it is assumed that that portion of the + * context record contains valid context. If the context record + * is being used to modify a thread's context, then only that + * portion of the threads context will be modified. + * + * If the context record is used as an IN OUT parameter to capture + * the context of a thread, then only those portions of the thread's + * context corresponding to set flags will be returned. + * + * The context record is never used as an OUT only parameter. */ + +ULONG ContextFlags; + +/* This section is specified/returned if the ContextFlags word contains + * the flag CONTEXT_INTEGER. */ +ULONG R0; +ULONG R1; +ULONG R2; +ULONG R3; +ULONG R4; +ULONG R5; +ULONG R6; +ULONG R7; +ULONG R8; +ULONG R9; +ULONG R10; +ULONG Fp; +ULONG Ip; + +/* These are selected by CONTEXT_CONTROL */ +ULONG Sp; +ULONG Lr; +ULONG Pc; +ULONG Cpsr; +} CONTEXT; + +#endif /* __arm__ */ + #if !defined(CONTEXT_FULL) && !defined(RC_INVOKED) #error You need to define a CONTEXT for your CPU #endif @@ -1409,6 +1543,33 @@ #endif /* __sparc__ */ +#ifdef __s390__ +/* FIXME: use getcontext() to retrieve full context */ +#define _GET_CONTEXT \ + CONTEXT context; \ + do { memset(&context, 0, sizeof(CONTEXT)); \ + context.ContextFlags = CONTEXT_CONTROL; \ + context.pc = (DWORD)__builtin_return_address(0); \ + } while (0) + +#define DEFINE_REGS_ENTRYPOINT_0( name, fn ) \ + void WINAPI name ( void ) \ + { _GET_CONTEXT; fn( &context ); } +#define DEFINE_REGS_ENTRYPOINT_1( name, fn, t1 ) \ + void WINAPI name ( t1 a1 ) \ + { _GET_CONTEXT; fn( a1, &context ); } +#define DEFINE_REGS_ENTRYPOINT_2( name, fn, t1, t2 ) \ + void WINAPI name ( t1 a1, t2 a2 ) \ + { _GET_CONTEXT; fn( a1, a2, &context ); } +#define DEFINE_REGS_ENTRYPOINT_3( name, fn, t1, t2, t3 ) \ + void WINAPI name ( t1 a1, t2 a2, t3 a3 ) \ + { _GET_CONTEXT; fn( a1, a2, a3, &context ); } +#define DEFINE_REGS_ENTRYPOINT_4( name, fn, t1, t2, t3, t4 ) \ + void WINAPI name ( t1 a1, t2 a2, t3 a3, t4 a4 ) \ + { _GET_CONTEXT; fn( a1, a2, a3, a4, &context ); } + +#endif /* __s390__ */ + #ifdef __PPC__ /* FIXME: use getcontext() to retrieve full context */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libEMF-1.0.6/libemf/libemf.h new/libEMF-1.0.7/libemf/libemf.h --- old/libEMF-1.0.6/libemf/libemf.h 2012-05-24 17:52:52.000000000 +0200 +++ new/libEMF-1.0.7/libemf/libemf.h 2012-11-06 13:16:56.000000000 +0100 @@ -1,7 +1,7 @@ /* -*- c++ -*- * EMF: A library for generating ECMA-234 Enhanced Metafiles * Copyright (C) 2002, 2003 lignum Computing, Inc. <[email protected]> - * $Id: libemf.h 60 2012-05-24 15:51:23Z dallenbarnett $ + * $Id: libemf.h 62 2012-11-06 12:16:29Z dallenbarnett $ * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -340,7 +340,7 @@ fread( &dword, sizeof(DWORD), 1, fp_ ); return *this; } -#if !defined( __x86_64__ ) +#if !defined( __LP64__ ) /*! * Output a long int to the stream (swabbed). * \param long long int to output. @@ -410,7 +410,7 @@ fread( &int_, sizeof(INT), 1, fp_ ); return *this; } -#if !defined(__x86_64__) +#if !defined(__LP64__) /*! * Output a (long) unsigned int to the stream (swabbed). * \param uint (long) unsigned int to output. @@ -985,7 +985,7 @@ /* Miscellaneous editing routines */ inline void edit_rectl ( const char* tag, const RECTL& rectl ) { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "\t%s\t: (%d, %d) - (%d, %d)\n"; #else const char* FMT = "\t%s\t: (%ld, %ld) - (%ld, %ld)\n"; @@ -1005,7 +1005,7 @@ inline void edit_color ( const char* tag, const COLORREF& color ) { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "\t%s\t: R(0x%02x) G(0x%02x) B(0x%02x)\n"; #else const char* FMT = "\t%s\t: R(0x%02lx) G(0x%02lx) B(0x%02lx)\n"; @@ -1016,7 +1016,7 @@ inline void edit_sizel ( const char* tag, const SIZEL& size ) { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "\t%s\t: (%d, %d)\n"; #else const char* FMT = "\t%s\t: (%ld, %ld)\n"; @@ -1026,7 +1026,7 @@ inline void edit_pointl ( const char* tag, const POINTL& point ) { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "\t%s\t: (%d, %d)\n"; #else const char* FMT = "\t%s\t: (%ld, %ld)\n"; @@ -1037,7 +1037,7 @@ inline void edit_pointlarray ( const char* tag, const DWORD cptl, const POINTL* points ) { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT0 = "\tcptl%s\t: %d\n"; const char* FMT1 = "%d, %d\n"; const char* FMT2 = "\t\t%s %d, %d\n"; @@ -1102,7 +1102,7 @@ inline void edit_brush_style ( const char* tag, DWORD style ) { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "unknown(%d)"; #else const char* FMT = "unknown(%ld)"; @@ -1126,7 +1126,7 @@ inline void edit_brush_hatch ( const char* tag, DWORD hatch ) { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "unknown(%d)"; #else const char* FMT = "unknown(%ld)"; @@ -1473,7 +1473,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT0 = "\tiType\t\t\t: %d\n"; const char* FMT1 = "\tnSize\t\t\t: %d\n"; const char* FMT2 = "\tnBytes\t\t\t: %d\n"; @@ -1855,7 +1855,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT0 = "\txNum\t: %d\n"; const char* FMT1 = "\txDenom\t: %d\n"; const char* FMT2 = "\tyNum\t: %d\n"; @@ -1993,7 +1993,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT0 = "\txNum\t: %d\n"; const char* FMT1 = "\txDenom\t: %d\n"; const char* FMT2 = "\tyNum\t: %d\n"; @@ -2069,7 +2069,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "unknown(%d)\n"; #else const char* FMT = "unknown(%ld)\n"; @@ -2196,7 +2196,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "| unknown bits(0x%x)"; #else const char* FMT = "| unknown bits(0x%lx)"; @@ -2394,7 +2394,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "unknown(%d)\n"; #else const char* FMT = "unknown(%ld)\n"; @@ -2460,7 +2460,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "unknown(%d)\n"; #else const char* FMT = "unknown(%ld)\n"; @@ -2527,7 +2527,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "unknown(%d)\n"; #else const char* FMT = "unknown(%ld)\n"; @@ -2596,7 +2596,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "\tihObject\t: 0x%x\n"; #else const char* FMT = "\tihObject\t: 0x%lx\n"; @@ -2654,7 +2654,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "\tihObject\t: 0x%x\n"; #else const char* FMT = "\tihObject\t: 0x%lx\n"; @@ -3580,7 +3580,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT0 = "\tnPolys\t\t: %d\n"; const char* FMT1 = "\tcptl\t\t: %d\n"; const char* FMT2 = "%d\n"; @@ -3770,7 +3770,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT0 = "\tnPolys\t\t: %d\n"; const char* FMT1 = "\tcptl\t\t: %d\n"; const char* FMT2 = "%d\n"; @@ -4575,7 +4575,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT0 = "unknown(%d)\n"; const char* FMT1 = "\tptlReference\t: (%d,%d)\n"; const char* FMT2 = "\tnChars\t\t: %d\n"; @@ -4759,7 +4759,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT0 = "\tihPen\t\t: 0x%x\n"; const char* FMT1 = "\tlopn.lopnWidth\t: %d, %d\n"; #else @@ -4817,7 +4817,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT0 = "\tihPen\t\t\t: 0x%x\n"; const char* FMT1 = "\toffBmi\t\t\t: %d\n"; const char* FMT2 = "\tcbBmi\t\t\t: %d\n"; @@ -4891,7 +4891,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "\tihBrush\t\t: 0x%x\n"; #else const char* FMT = "\tihBrush\t\t: 0x%lx\n"; @@ -4951,7 +4951,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT0 = "\tihFont\t\t\t: %d\n"; const char* FMT1 = "\tlfHeight\t\t: %d\n"; const char* FMT2 = "\tlfWidth\t\t\t: %d\n"; @@ -5520,7 +5520,7 @@ */ void edit ( void ) const { -#if defined(__x86_64__) +#if defined(__LP64__) const char* FMT = "\tiRelative: %d\n"; #else const char* FMT = "\tiRelative: %ld\n"; -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
