Compare commits
29 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
517050615c | ||
|
2e59dd3019 | ||
|
0533d95528 | ||
|
c268728f35 | ||
|
37555e5967 | ||
|
9eb86a0846 | ||
|
3fb5985852 | ||
|
6b630c51be | ||
|
7b5ca7d8ae | ||
|
2fd1c89d7c | ||
|
2a1c6e388f | ||
|
c11b23f9e0 | ||
|
c50103fdaa | ||
|
7f7ece4bcd | ||
|
4c1533be4f | ||
|
52832fcd1b | ||
|
494be8d46c | ||
|
46cf071149 | ||
|
f81210a0d9 | ||
|
3c4da48585 | ||
|
0e9bc0a922 | ||
|
cc212e40ff | ||
|
f383cc5e96 | ||
|
05813ceafe | ||
|
a21d9f5c6b | ||
|
66ed9e8eb8 | ||
|
686772e83a | ||
|
b1d23f2e1a | ||
|
248b8962c7 |
6
.gitignore
vendored
6
.gitignore
vendored
@ -1 +1,5 @@
|
||||
libEMF-1.0.3.tar.gz
|
||||
libEMF-1.0.4.tar.gz
|
||||
/libEMF-1.0.6.tar.gz
|
||||
/libEMF-1.0.7.tar.gz
|
||||
/libemf-1.0.8.tar.gz
|
||||
/libemf-1.0.9.tar.gz
|
||||
|
92
libEMF-aarch64.patch
Normal file
92
libEMF-aarch64.patch
Normal file
@ -0,0 +1,92 @@
|
||||
--- libEMF-1.0.7/include/libEMF/wine/winnt.h.orig 2014-05-11 09:42:07.438982485 +0100
|
||||
+++ libEMF-1.0.7/include/libEMF/wine/winnt.h 2014-05-11 09:42:42.104573014 +0100
|
||||
@@ -45,6 +45,10 @@
|
||||
# undef WORDS_BIGENDIAN
|
||||
# undef BITFIELDS_BIGENDIAN
|
||||
# undef ALLOW_UNALIGNED_ACCESS
|
||||
+#elif defined(__aarch64__)
|
||||
+# undef WORDS_BIGENDIAN
|
||||
+# undef BITFIELDS_BIGENDIAN
|
||||
+# undef ALLOW_UNALIGNED_ACCESS
|
||||
#elif defined(__sparc__)
|
||||
# define WORDS_BIGENDIAN
|
||||
# define BITFIELDS_BIGENDIAN
|
||||
@@ -1425,6 +1429,78 @@
|
||||
|
||||
#endif /* __arm__ */
|
||||
|
||||
+#ifdef __aarch64__
|
||||
+/*
|
||||
+ * FIXME:
|
||||
+ *
|
||||
+ * There is not yet an official CONTEXT structure defined for the AArch64
|
||||
+ * architecture, so I just made one up.
|
||||
+ *
|
||||
+ */
|
||||
+
|
||||
+/* These definitions are taken directly from wine
|
||||
+ * http://source.winehq.org/git/wine.git/blob_plain/HEAD:/include/winnt.h */
|
||||
+
|
||||
+#define CONTEXT_ARM64 0x2000000
|
||||
+#define CONTEXT_CONTROL (CONTEXT_ARM64 | 0x00000001)
|
||||
+#define CONTEXT_INTEGER (CONTEXT_ARM64 | 0x00000002)
|
||||
+#define CONTEXT_FLOATING_POINT (CONTEXT_ARM64 | 0x00000004)
|
||||
+#define CONTEXT_DEBUG_REGISTERS (CONTEXT_ARM64 | 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 {
|
||||
+ ULONG ContextFlags;
|
||||
+
|
||||
+ /* This section is specified/returned if the ContextFlags word contains
|
||||
+ the flag CONTEXT_INTEGER. */
|
||||
+ ULONGLONG X0;
|
||||
+ ULONGLONG X1;
|
||||
+ ULONGLONG X2;
|
||||
+ ULONGLONG X3;
|
||||
+ ULONGLONG X4;
|
||||
+ ULONGLONG X5;
|
||||
+ ULONGLONG X6;
|
||||
+ ULONGLONG X7;
|
||||
+ ULONGLONG X8;
|
||||
+ ULONGLONG X9;
|
||||
+ ULONGLONG X10;
|
||||
+ ULONGLONG X11;
|
||||
+ ULONGLONG X12;
|
||||
+ ULONGLONG X13;
|
||||
+ ULONGLONG X14;
|
||||
+ ULONGLONG X15;
|
||||
+ ULONGLONG X16;
|
||||
+ ULONGLONG X17;
|
||||
+ ULONGLONG X18;
|
||||
+ ULONGLONG X19;
|
||||
+ ULONGLONG X20;
|
||||
+ ULONGLONG X21;
|
||||
+ ULONGLONG X22;
|
||||
+ ULONGLONG X23;
|
||||
+ ULONGLONG X24;
|
||||
+ ULONGLONG X25;
|
||||
+ ULONGLONG X26;
|
||||
+ ULONGLONG X27;
|
||||
+ ULONGLONG X28;
|
||||
+ ULONGLONG X29;
|
||||
+ ULONGLONG X30;
|
||||
+
|
||||
+ /* These are selected by CONTEXT_CONTROL */
|
||||
+ ULONGLONG Sp;
|
||||
+ ULONGLONG Pc;
|
||||
+ ULONGLONG PState;
|
||||
+
|
||||
+ /* These are selected by CONTEXT_FLOATING_POINT */
|
||||
+ /* FIXME */
|
||||
+} CONTEXT;
|
||||
+
|
||||
+#endif /* __aarch64__ */
|
||||
+
|
||||
#if !defined(CONTEXT_FULL) && !defined(RC_INVOKED)
|
||||
#error You need to define a CONTEXT for your CPU
|
||||
#endif
|
@ -1,92 +0,0 @@
|
||||
--- libEMF-1.0.3/libemf/libemf.h.amd64 2004-11-11 23:33:43.000000000 +0100
|
||||
+++ libEMF-1.0.3/libemf/libemf.h 2006-11-19 00:54:37.000000000 +0100
|
||||
@@ -306,6 +306,7 @@
|
||||
fread( &word, sizeof(INT16), 1, fp_ );
|
||||
return *this;
|
||||
}
|
||||
+#if !(defined(_LP64) || defined(__alpha__))
|
||||
/*!
|
||||
* Output a double word (long) to the stream (swabbed).
|
||||
* \param word word (long) to output.
|
||||
@@ -374,6 +375,7 @@
|
||||
fread( &long_, sizeof(LONG), 1, fp_ );
|
||||
return *this;
|
||||
}
|
||||
+#endif
|
||||
/*!
|
||||
* Output a (long) int to the stream (swabbed).
|
||||
* \param int_ (long) int to output.
|
||||
--- libEMF-1.0.3/include/libEMF/wine/winbase.h.amd64 2004-07-29 08:20:38.000000000 +0200
|
||||
+++ libEMF-1.0.3/include/libEMF/wine/winbase.h 2006-11-19 00:55:17.000000000 +0100
|
||||
@@ -1802,6 +1802,7 @@
|
||||
VOID WINAPI SetLastError(DWORD);
|
||||
#endif /* __i386__ && __GNUC__ */
|
||||
|
||||
+#if 0
|
||||
/* FIXME: should handle platforms where sizeof(void*) != sizeof(long) */
|
||||
static inline PVOID WINAPI InterlockedCompareExchangePointer( PVOID *dest, PVOID xchg, PVOID compare )
|
||||
{
|
||||
@@ -1812,6 +1813,7 @@
|
||||
{
|
||||
return (PVOID)InterlockedExchange( (PLONG)dest, (LONG)val );
|
||||
}
|
||||
+#endif
|
||||
|
||||
#ifdef __WINE__
|
||||
#define GetCurrentProcess() ((HANDLE)0xffffffff)
|
||||
--- libEMF-1.0.3/include/libEMF/wine/winnt.h.amd64 2005-08-07 17:50:12.000000000 +0200
|
||||
+++ libEMF-1.0.3/include/libEMF/wine/winnt.h 2006-11-19 00:54:37.000000000 +0100
|
||||
@@ -29,10 +29,14 @@
|
||||
|
||||
/* Architecture dependent settings. */
|
||||
/* These are hardcoded to avoid dependencies on config.h in Winelib apps. */
|
||||
-#if defined(__i386__)
|
||||
+#if defined(__i386__) || defined(__x86_64__)
|
||||
# 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(__sparc__)
|
||||
# define WORDS_BIGENDIAN
|
||||
# define BITFIELDS_BIGENDIAN
|
||||
@@ -222,8 +226,13 @@
|
||||
typedef unsigned short WORD, *PWORD, *LPWORD;
|
||||
typedef int INT, *PINT, *LPINT;
|
||||
typedef unsigned int UINT, *PUINT, *LPUINT;
|
||||
+#if defined(_LP64) || defined(__alpha__)
|
||||
+typedef unsigned int DWORD, *PDWORD, *LPDWORD;
|
||||
+typedef unsigned int ULONG, *PULONG, *LPULONG;
|
||||
+#else
|
||||
typedef unsigned long DWORD, *PDWORD, *LPDWORD;
|
||||
typedef unsigned long ULONG, *PULONG, *LPULONG;
|
||||
+#endif
|
||||
typedef float FLOAT, *PFLOAT, *LPFLOAT;
|
||||
typedef double DOUBLE, *PDOUBLE, *LPDOUBLE;
|
||||
typedef double DATE;
|
||||
@@ -263,7 +272,11 @@
|
||||
typedef BYTE BOOLEAN, *PBOOLEAN;
|
||||
typedef char CHAR, *PCHAR;
|
||||
typedef short SHORT, *PSHORT;
|
||||
+#if defined(_LP64) || defined(__alpha__)
|
||||
+typedef int LONG, *PLONG, *LPLONG;
|
||||
+#else
|
||||
typedef long LONG, *PLONG, *LPLONG;
|
||||
+#endif
|
||||
|
||||
/* Some systems might have wchar_t, but we really need 16 bit characters */
|
||||
#ifndef WINE_WCHAR_DEFINED
|
||||
@@ -652,6 +665,11 @@
|
||||
|
||||
#endif /* __i386__ */
|
||||
|
||||
+#ifdef __x86_64__
|
||||
+#define CONTEXT_FULL 1
|
||||
+typedef struct _CONTEXT CONTEXT;
|
||||
+#endif
|
||||
+
|
||||
/* Alpha context definitions */
|
||||
#ifdef _ALPHA_
|
||||
|
@ -1,12 +0,0 @@
|
||||
diff -up libEMF-1.0.3/include/libEMF/wine/winnt.h.axp libEMF-1.0.3/include/libEMF/wine/winnt.h
|
||||
--- libEMF-1.0.3/include/libEMF/wine/winnt.h.axp 2007-12-03 22:35:49.000000000 +0100
|
||||
+++ libEMF-1.0.3/include/libEMF/wine/winnt.h 2007-12-03 22:37:10.000000000 +0100
|
||||
@@ -671,7 +671,7 @@ typedef struct _CONTEXT CONTEXT;
|
||||
#endif
|
||||
|
||||
/* Alpha context definitions */
|
||||
-#ifdef _ALPHA_
|
||||
+#if defined(__alpha__)
|
||||
|
||||
#define CONTEXT_ALPHA 0x00020000
|
||||
|
@ -1,12 +0,0 @@
|
||||
diff -up libEMF-1.0.3/libemf/libemf.cpp.gcc43 libEMF-1.0.3/libemf/libemf.cpp
|
||||
--- libEMF-1.0.3/libemf/libemf.cpp.gcc43 2003-01-27 20:36:25.000000000 +0100
|
||||
+++ libEMF-1.0.3/libemf/libemf.cpp 2008-01-06 14:52:50.000000000 +0100
|
||||
@@ -19,7 +19,7 @@
|
||||
*
|
||||
*/
|
||||
#include <iostream>
|
||||
-
|
||||
+#include <climits>
|
||||
#include "libemf.h"
|
||||
|
||||
namespace EMF {
|
142
libEMF.spec
142
libEMF.spec
@ -1,19 +1,13 @@
|
||||
Summary: A library for generating Enhanced Metafiles
|
||||
Summary(pl): Biblioteka do generowania plików w formacie Enhanced Metafile
|
||||
Name: libEMF
|
||||
Version: 1.0.3
|
||||
Release: 7%{?dist}
|
||||
Version: 1.0.9
|
||||
Release: 5%{?dist}
|
||||
License: LGPLv2+ and GPLv2+
|
||||
Group: System Environment/Libraries
|
||||
Source0: http://dl.sourceforge.net/pstoedit/%{name}-%{version}.tar.gz
|
||||
# Source0-md5: a4e91fd8077ce5f540f569e20e8ef7ff
|
||||
Patch0: %{name}-amd64.patch
|
||||
Patch1: %{name}-axp.patch
|
||||
Patch2: %{name}-gcc43.patch
|
||||
URL: http://libemf.sourceforge.net/
|
||||
BuildRequires: libstdc++-devel
|
||||
BuildRequires: libtool
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(id -u -n)
|
||||
Source0: https://downloads.sourceforge.net/project/libemf/libemf/%{version}/libemf-%{version}.tar.gz
|
||||
Patch0: libEMF-aarch64.patch
|
||||
BuildRequires: gcc-c++
|
||||
|
||||
%description
|
||||
libEMF is a library for generating Enhanced Metafiles on systems which
|
||||
@ -32,7 +26,6 @@ zaimplementowany bardzo ograniczony podzbiór GDI.
|
||||
%package devel
|
||||
Summary: libEMF header files
|
||||
Summary(pl): Pliki nagłówkowe libEMF
|
||||
Group: Development/Libraries
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires: libstdc++-devel
|
||||
|
||||
@ -43,55 +36,130 @@ libEMF header files.
|
||||
Pliki nagłówkowe libEMF.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1 -b .amd64
|
||||
%patch1 -p1 -b .axp
|
||||
%patch2 -p1 -b .gcc43
|
||||
chmod 0644 libemf/libemf.h
|
||||
%setup -q -n libemf-%{version}
|
||||
%patch0 -p1 -b .aarch64
|
||||
|
||||
%build
|
||||
# supplied libtool is broken (no C++ libraries support)
|
||||
%{__libtoolize} --force
|
||||
%{__aclocal}
|
||||
%{__autoconf}
|
||||
%{__automake}
|
||||
%configure \
|
||||
--disable-static \
|
||||
--enable-editing
|
||||
|
||||
%{__make} %{?_smp_mflags}
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
export CPPROG="cp -p"
|
||||
%{__make} install \
|
||||
make install \
|
||||
DESTDIR=$RPM_BUILD_ROOT
|
||||
|
||||
rm $RPM_BUILD_ROOT%{_libdir}/libEMF.la
|
||||
|
||||
%check
|
||||
%{__make} check
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
make check
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%defattr(644,root,root,755)
|
||||
%doc AUTHORS ChangeLog COPYING COPYING.LIB NEWS README
|
||||
%attr(755,root,root) %{_bindir}/*
|
||||
%attr(755,root,root) %{_libdir}/lib*.so.*
|
||||
%license COPYING COPYING.LIB
|
||||
%doc AUTHORS ChangeLog NEWS README
|
||||
%{_bindir}/printemf
|
||||
%{_libdir}/libEMF.so.1*
|
||||
|
||||
%files devel
|
||||
%defattr(644,root,root,755)
|
||||
%doc doc/html
|
||||
%attr(755,root,root) %{_libdir}/lib*.so
|
||||
%doc doc/html/*
|
||||
%{_libdir}/libEMF.so
|
||||
%{_includedir}/libEMF
|
||||
|
||||
%changelog
|
||||
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.9-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.9-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||
|
||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.9-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||
|
||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.9-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
||||
|
||||
* Sat Jan 07 2017 Dominik 'Rathann' Mierzejewski <rpm@greysector.net> 1.0.9-1
|
||||
- update to 1.0.9
|
||||
- use license macro
|
||||
- tighten file list wildcards
|
||||
- switch to https for source URL
|
||||
|
||||
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.8-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||||
|
||||
* Wed Dec 09 2015 Dominik 'Rathann' Mierzejewski <rpm@greysector.net> 1.0.8-1
|
||||
- update to 1.0.8
|
||||
- undo upstream's broken partial renaming to libemf
|
||||
|
||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.7-9
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||||
|
||||
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 1.0.7-8
|
||||
- Rebuilt for GCC 5 C++11 ABI change
|
||||
|
||||
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.7-7
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
||||
|
||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.7-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
||||
|
||||
* Sun May 11 2014 Peter Robinson <pbrobinson@fedoraproject.org> 1.0.7-7
|
||||
- Add initial patch for aarch64 support (likely needs more work)
|
||||
|
||||
* Thu Mar 06 2014 Dominik 'Rathann' Mierzejewski <rpm@greysector.net> 1.0.7-4
|
||||
- fix build on aarch64 (bug #925711)
|
||||
- drop some obsolete/redundant specfile parts
|
||||
|
||||
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.7-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
||||
|
||||
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.7-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
||||
|
||||
* Wed Nov 07 2012 Stanislav Ochotnicky <sochotnicky@redhat.com> - 1.0.7-1
|
||||
- Update to latest upstream
|
||||
- Drop all patches (upstreamed)
|
||||
- Small packaging cleanups
|
||||
|
||||
* Mon Nov 5 2012 Stanislav Ochotnicky <sochotnicky@redhat.com> - 1.0.6-2
|
||||
- Fixes for non-x86 64bit architectures
|
||||
|
||||
* Mon Sep 03 2012 Dominik 'Rathann' Mierzejewski <rpm@greysector.net> 1.0.6-1
|
||||
- updated to 1.0.6
|
||||
- updated source URL
|
||||
- dropped obsolete patch hunks and rebased patches
|
||||
|
||||
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.4-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
||||
|
||||
* Tue May 1 2012 Peter Robinson <pbrobinson@fedoraproject.org> - 1.0.4-4
|
||||
- Add support for ARM using definitions from WINE
|
||||
|
||||
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.4-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
||||
|
||||
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.4-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
||||
|
||||
* Tue Aug 25 2009 Dominik 'Rathann' Mierzejewski <rpm@greysector.net> 1.0.4-1
|
||||
- updated to 1.0.4
|
||||
- updated source URL
|
||||
- dropped obsolete patch
|
||||
|
||||
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.3-10
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
|
||||
|
||||
* Wed Jun 3 2009 Dan Horak <dan[at]danny.cz> - 1.0.3-9
|
||||
- add support for s390/s390x
|
||||
|
||||
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.3-8
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
|
||||
|
||||
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.0.3-7
|
||||
- Autorebuild for GCC 4.3
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user