From 59f825eee05589940ec34a645c905bb148448442 Mon Sep 17 00:00:00 2001 From: Boris Nagaev Date: Thu, 7 Jan 2016 16:39:17 +0300 Subject: libieee1284: consolidate patches --- src/libieee1284-1-fixes.patch | 265 +++++++++++++++++++++++++++++++++ src/libieee1284-1-ssize_t.patch | 80 ---------- src/libieee1284-2-dll.patch | 25 ---- src/libieee1284-3-windows-header.patch | 91 ----------- src/libieee1284-4-getversion.patch | 42 ------ src/libieee1284-5-pkg-config.patch | 57 ------- 6 files changed, 265 insertions(+), 295 deletions(-) create mode 100644 src/libieee1284-1-fixes.patch delete mode 100644 src/libieee1284-1-ssize_t.patch delete mode 100644 src/libieee1284-2-dll.patch delete mode 100644 src/libieee1284-3-windows-header.patch delete mode 100644 src/libieee1284-4-getversion.patch delete mode 100644 src/libieee1284-5-pkg-config.patch diff --git a/src/libieee1284-1-fixes.patch b/src/libieee1284-1-fixes.patch new file mode 100644 index 0000000..fa0625b --- /dev/null +++ b/src/libieee1284-1-fixes.patch @@ -0,0 +1,265 @@ +This file is part of MXE. +See index.html for further information. + +Contains ad hoc patches for cross building. + +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Daniel=20Gl=C3=B6ckner?= +Date: Sun, 3 Jan 2016 05:48:59 +0100 +Subject: [PATCH] make configure determine if basetsd.h is needed for ssize_t + +The result is hardcoded in ieee1284.h. +Duplicate logic in detect.h is replaced by including that file. + +diff --git a/configure.in b/configure.in +index 1111111..2222222 100644 +--- a/configure.in ++++ b/configure.in +@@ -72,7 +72,17 @@ if test $ac_cv_use_python = yes; then + AM_PATH_PYTHON + fi + ++AC_CHECK_TYPE([ssize_t],,,[#include ]) ++if test $ac_cv_type_ssize_t != yes; then ++ AC_CHECK_TYPE([SSIZE_T], ++ AC_SUBST([SSIZE_T_IN_BASETSD_H], 1), ++ AC_MSG_ERROR([No definition of ssize_t found.]), ++ [#include ]) ++else ++ AC_SUBST([SSIZE_T_IN_BASETSD_H], 0) ++fi ++ + dnl Checks for library functions. + +-AC_CONFIG_FILES(Makefile libieee1284.spec) ++AC_CONFIG_FILES([Makefile libieee1284.spec include/ieee1284.h]) + AC_OUTPUT +diff --git a/include/ieee1284.h b/include/ieee1284.h.in +similarity index 99% +rename from include/ieee1284.h +rename to include/ieee1284.h.in +index 1111111..2222222 100644 +--- a/include/ieee1284.h ++++ b/include/ieee1284.h.in +@@ -27,7 +27,7 @@ + #include /* for struct timeval */ + #endif + +-#if (defined __MINGW32__ || defined _MSC_VER) && !defined OWN_SSIZE_T ++#if @SSIZE_T_IN_BASETSD_H@ && !defined OWN_SSIZE_T + #include /* for SSIZE_T */ + #define OWN_SSIZE_T + typedef SSIZE_T ssize_t; +diff --git a/src/detect.h b/src/detect.h +index 1111111..2222222 100644 +--- a/src/detect.h ++++ b/src/detect.h +@@ -24,18 +24,7 @@ + #ifndef _DETECT_H_ + #define _DETECT_H_ + +-#include +-#ifndef _MSC_VER +-#include +-#else +-#include +-#endif +- +-#if (defined __MINGW32__ || defined _MSC_VER) && !defined OWN_SSIZE_T +-#include /* for SSIZE_T */ +-#define OWN_SSIZE_T +-typedef SSIZE_T ssize_t; +-#endif ++#include "ieee1284.h" + + struct parport; + struct parport_internal; + +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Daniel=20Gl=C3=B6ckner?= +Date: Sun, 20 Sep 2015 19:14:18 +0200 +Subject: [PATCH] persuade libtool build a DLL on windows + + +diff --git a/Makefile.am b/Makefile.am +index 1111111..2222222 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -8,7 +8,7 @@ libieee1284_la_SOURCES = src/detect.c src/detect.h src/ports.c src/deviceid.c \ + src/par_nt.h src/io.h src/conf.h src/conf.c libieee1284.sym + # When rolling a release, remember to adjust the version info. + # It's current:release:age. +-libieee1284_la_LDFLAGS = -version-info 5:2:2 \ ++libieee1284_la_LDFLAGS = -version-info 5:2:2 -no-undefined \ + -export-symbols $(top_srcdir)/libieee1284.sym + include_HEADERS = include/ieee1284.h + INCLUDES = -I$(top_srcdir)/include + +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Daniel=20Gl=C3=B6ckner?= +Date: Sun, 20 Sep 2015 19:15:15 +0200 +Subject: [PATCH] search for windows.h + +instead of relying on the __CYGWIN__ macro + +diff --git a/configure.in b/configure.in +index 1111111..2222222 100644 +--- a/configure.in ++++ b/configure.in +@@ -37,21 +37,16 @@ case "{$host}" in + AC_DEFINE(HAVE_SOLARIS,1,enable solaris iop access) + solaris_io=true + ;; +-*-*-cygwin*) +- dnl Strip version number from uname and make sure we're on NT not 9x +- case `uname -s | sed 's/-.*$//'` in +- CYGWIN_NT*) +- AC_CHECK_HEADER(w32api/windows.h, [ +- AC_DEFINE(HAVE_CYGWIN_NT,1,enable w32api access) +- ], AC_MSG_ERROR(You need the cygwin w32api files on NT)) +- ;; +- *) +- AC_DEFINE(HAVE_CYGWIN_9X,1,enable win95 access) +- ;; +- esac +-;; +-*-*-mingw*) +-dnl AC_DEFINE(HAVE_CYGWIN_9X,1,enable win95 access) ++*-*-cygwin* | *-*-mingw*) ++ windows_h_found=false ++ AC_CHECK_HEADERS([windows.h] [w32api/windows.h], [ ++ windows_h_found=true ++ break ++ ]) ++ AS_VAR_IF(windows_h_found, [false], [ ++ AC_MSG_ERROR(windows.h not found) ++ ]) ++ AC_DEFINE(HAVE_CYGWIN_9X,1,enable win95 access) + AC_DEFINE(HAVE_CYGWIN_NT,1,enable w32api access) + ;; + *) +diff --git a/src/access_lpt.c b/src/access_lpt.c +index 1111111..2222222 100644 +--- a/src/access_lpt.c ++++ b/src/access_lpt.c +@@ -51,7 +51,7 @@ + + #ifdef HAVE_CYGWIN_NT + +-#ifdef __CYGWIN__ ++#ifdef HAVE_W32API_WINDOWS_H + #include + #else + #include +diff --git a/src/detect.c b/src/detect.c +index 1111111..2222222 100644 +--- a/src/detect.c ++++ b/src/detect.c +@@ -50,7 +50,7 @@ + #include + #include + #elif defined(HAVE_CYGWIN_NT) +-#ifdef __CYGWIN__ ++#ifdef HAVE_W32API_WINDOWS_H + #include + #else + #include +diff --git a/src/ports.c b/src/ports.c +index 1111111..2222222 100644 +--- a/src/ports.c ++++ b/src/ports.c +@@ -36,7 +36,7 @@ + #include "detect.h" + + #ifdef HAVE_CYGWIN_NT +-#ifdef __CYGWIN__ ++#ifdef HAVE_W32API_WINDOWS_H + #include + #else /* Not cygwin really */ + /* Don't include windows.h if it isn't necessary. That's why this is here and + +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Daniel=20Gl=C3=B6ckner?= +Date: Sat, 19 Sep 2015 01:39:15 +0200 +Subject: [PATCH] check Windows version before allowing IO access + + +diff --git a/src/detect.c b/src/detect.c +index 1111111..2222222 100644 +--- a/src/detect.c ++++ b/src/detect.c +@@ -49,7 +49,7 @@ + #elif defined(HAVE_SOLARIS) + #include + #include +-#elif defined(HAVE_CYGWIN_NT) ++#elif defined(HAVE_CYGWIN_NT) || defined(HAVE_CYGWIN_9X) + #ifdef HAVE_W32API_WINDOWS_H + #include + #else +@@ -191,10 +191,12 @@ check_io (void) + } + debugprintf ("We can't use IOP, nothing will work\n"); + #elif defined(HAVE_CYGWIN_9X) +- /* note: 95 allows apps direct IO access */ +- debugprintf ("Taking a guess on port availability (win9x)\n"); +- capabilities |= IO_CAPABLE; +- return 1; ++ /* note: Win32s/95/98/ME allows apps direct IO access */ ++ if (GetVersion() & (1 << 31)) { ++ debugprintf ("Taking a guess on port availability (win9x)\n"); ++ capabilities |= IO_CAPABLE; ++ return 1; ++ } + #endif + + return 0; + +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Daniel=20Gl=C3=B6ckner?= +Date: Mon, 4 Jan 2016 00:49:41 +0100 +Subject: [PATCH] add pkg-config metadata file + + +diff --git a/Makefile.am b/Makefile.am +index 1111111..2222222 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -30,6 +30,9 @@ bin_PROGRAMS = libieee1284_test + libieee1284_test_SOURCES = tests/test.c + libieee1284_test_LDADD = libieee1284.la + ++pkgconfigdir = $(libdir)/pkgconfig ++pkgconfig_DATA = libieee1284.pc ++ + # Python bindings + src_ieee1284module_la_SOURCES = src/ieee1284module.c + if PYTHON +diff --git a/configure.in b/configure.in +index 1111111..2222222 100644 +--- a/configure.in ++++ b/configure.in +@@ -79,5 +79,5 @@ fi + + dnl Checks for library functions. + +-AC_CONFIG_FILES([Makefile libieee1284.spec include/ieee1284.h]) ++AC_CONFIG_FILES([Makefile libieee1284.spec libieee1284.pc include/ieee1284.h]) + AC_OUTPUT +diff --git a/libieee1284.pc.in b/libieee1284.pc.in +new file mode 100644 +index 1111111..2222222 +--- /dev/null ++++ b/libieee1284.pc.in +@@ -0,0 +1,11 @@ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++ ++Name: @PACKAGE@ ++Version: @VERSION@ ++Description: IEEE1284 parallel port library ++URL: http://cyberelk.net/tim/software/libieee1284/ ++Libs: -L${libdir} -lieee1284 ++Cflags: -I${includedir} diff --git a/src/libieee1284-1-ssize_t.patch b/src/libieee1284-1-ssize_t.patch deleted file mode 100644 index ce23384..0000000 --- a/src/libieee1284-1-ssize_t.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 55a02d19ec885b2cc1d9c39813aa706bf68c122b Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Daniel=20Gl=C3=B6ckner?= -Date: Sun, 3 Jan 2016 05:48:59 +0100 -Subject: [PATCH] make configure determine if basetsd.h is needed for ssize_t - -The result is hardcoded in ieee1284.h. -Duplicate logic in detect.h is replaced by including that file. ---- - configure.in | 12 +++++++++++- - include/{ieee1284.h => ieee1284.h.in} | 2 +- - src/detect.h | 13 +------------ - 3 files changed, 13 insertions(+), 14 deletions(-) - rename include/{ieee1284.h => ieee1284.h.in} (99%) - -diff --git a/configure.in b/configure.in -index a22fe97..7cd9561 100644 ---- a/configure.in -+++ b/configure.in -@@ -72,7 +72,17 @@ if test $ac_cv_use_python = yes; then - AM_PATH_PYTHON - fi - -+AC_CHECK_TYPE([ssize_t],,,[#include ]) -+if test $ac_cv_type_ssize_t != yes; then -+ AC_CHECK_TYPE([SSIZE_T], -+ AC_SUBST([SSIZE_T_IN_BASETSD_H], 1), -+ AC_MSG_ERROR([No definition of ssize_t found.]), -+ [#include ]) -+else -+ AC_SUBST([SSIZE_T_IN_BASETSD_H], 0) -+fi -+ - dnl Checks for library functions. - --AC_CONFIG_FILES(Makefile libieee1284.spec) -+AC_CONFIG_FILES([Makefile libieee1284.spec include/ieee1284.h]) - AC_OUTPUT -diff --git a/include/ieee1284.h b/include/ieee1284.h.in -similarity index 99% -rename from include/ieee1284.h -rename to include/ieee1284.h.in -index 03614cb..be02850 100644 ---- a/include/ieee1284.h -+++ b/include/ieee1284.h.in -@@ -27,7 +27,7 @@ - #include /* for struct timeval */ - #endif - --#if (defined __MINGW32__ || defined _MSC_VER) && !defined OWN_SSIZE_T -+#if @SSIZE_T_IN_BASETSD_H@ && !defined OWN_SSIZE_T - #include /* for SSIZE_T */ - #define OWN_SSIZE_T - typedef SSIZE_T ssize_t; -diff --git a/src/detect.h b/src/detect.h -index 71e7d60..ab35f82 100644 ---- a/src/detect.h -+++ b/src/detect.h -@@ -24,18 +24,7 @@ - #ifndef _DETECT_H_ - #define _DETECT_H_ - --#include --#ifndef _MSC_VER --#include --#else --#include --#endif -- --#if (defined __MINGW32__ || defined _MSC_VER) && !defined OWN_SSIZE_T --#include /* for SSIZE_T */ --#define OWN_SSIZE_T --typedef SSIZE_T ssize_t; --#endif -+#include "ieee1284.h" - - struct parport; - struct parport_internal; --- -2.1.4 - diff --git a/src/libieee1284-2-dll.patch b/src/libieee1284-2-dll.patch deleted file mode 100644 index 1c75b79..0000000 --- a/src/libieee1284-2-dll.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 9f599be4745f9e09741ba48a2af55d8d684b68db Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Daniel=20Gl=C3=B6ckner?= -Date: Sun, 20 Sep 2015 19:14:18 +0200 -Subject: [PATCH] persuade libtool build a DLL on windows - ---- - Makefile.am | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Makefile.am b/Makefile.am -index 9fdaff5..2abe635 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -8,7 +8,7 @@ libieee1284_la_SOURCES = src/detect.c src/detect.h src/ports.c src/deviceid.c \ - src/par_nt.h src/io.h src/conf.h src/conf.c libieee1284.sym - # When rolling a release, remember to adjust the version info. - # It's current:release:age. --libieee1284_la_LDFLAGS = -version-info 5:2:2 \ -+libieee1284_la_LDFLAGS = -version-info 5:2:2 -no-undefined \ - -export-symbols $(top_srcdir)/libieee1284.sym - include_HEADERS = include/ieee1284.h - INCLUDES = -I$(top_srcdir)/include --- -2.1.4 - diff --git a/src/libieee1284-3-windows-header.patch b/src/libieee1284-3-windows-header.patch deleted file mode 100644 index 0d02c49..0000000 --- a/src/libieee1284-3-windows-header.patch +++ /dev/null @@ -1,91 +0,0 @@ -From d8da09469573051c2fb85da1048bef5a4742cb2f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Daniel=20Gl=C3=B6ckner?= -Date: Sun, 20 Sep 2015 19:15:15 +0200 -Subject: [PATCH] search for windows.h - -instead of relying on the __CYGWIN__ macro ---- - configure.in | 25 ++++++++++--------------- - src/access_lpt.c | 2 +- - src/detect.c | 2 +- - src/ports.c | 2 +- - 4 files changed, 13 insertions(+), 18 deletions(-) - -diff --git a/configure.in b/configure.in -index 7cd9561..9b6b82a 100644 ---- a/configure.in -+++ b/configure.in -@@ -37,21 +37,16 @@ case "{$host}" in - AC_DEFINE(HAVE_SOLARIS,1,enable solaris iop access) - solaris_io=true - ;; --*-*-cygwin*) -- dnl Strip version number from uname and make sure we're on NT not 9x -- case `uname -s | sed 's/-.*$//'` in -- CYGWIN_NT*) -- AC_CHECK_HEADER(w32api/windows.h, [ -- AC_DEFINE(HAVE_CYGWIN_NT,1,enable w32api access) -- ], AC_MSG_ERROR(You need the cygwin w32api files on NT)) -- ;; -- *) -- AC_DEFINE(HAVE_CYGWIN_9X,1,enable win95 access) -- ;; -- esac --;; --*-*-mingw*) --dnl AC_DEFINE(HAVE_CYGWIN_9X,1,enable win95 access) -+*-*-cygwin* | *-*-mingw*) -+ windows_h_found=false -+ AC_CHECK_HEADERS([windows.h] [w32api/windows.h], [ -+ windows_h_found=true -+ break -+ ]) -+ AS_VAR_IF(windows_h_found, [false], [ -+ AC_MSG_ERROR(windows.h not found) -+ ]) -+ AC_DEFINE(HAVE_CYGWIN_9X,1,enable win95 access) - AC_DEFINE(HAVE_CYGWIN_NT,1,enable w32api access) - ;; - *) -diff --git a/src/access_lpt.c b/src/access_lpt.c -index ad210f4..8cda6cb 100644 ---- a/src/access_lpt.c -+++ b/src/access_lpt.c -@@ -51,7 +51,7 @@ - - #ifdef HAVE_CYGWIN_NT - --#ifdef __CYGWIN__ -+#ifdef HAVE_W32API_WINDOWS_H - #include - #else - #include -diff --git a/src/detect.c b/src/detect.c -index a53ef19..ca7f85b 100644 ---- a/src/detect.c -+++ b/src/detect.c -@@ -50,7 +50,7 @@ - #include - #include - #elif defined(HAVE_CYGWIN_NT) --#ifdef __CYGWIN__ -+#ifdef HAVE_W32API_WINDOWS_H - #include - #else - #include -diff --git a/src/ports.c b/src/ports.c -index f3c38f1..ebd5110 100644 ---- a/src/ports.c -+++ b/src/ports.c -@@ -36,7 +36,7 @@ - #include "detect.h" - - #ifdef HAVE_CYGWIN_NT --#ifdef __CYGWIN__ -+#ifdef HAVE_W32API_WINDOWS_H - #include - #else /* Not cygwin really */ - /* Don't include windows.h if it isn't necessary. That's why this is here and --- -2.1.4 - diff --git a/src/libieee1284-4-getversion.patch b/src/libieee1284-4-getversion.patch deleted file mode 100644 index 99a9a2c..0000000 --- a/src/libieee1284-4-getversion.patch +++ /dev/null @@ -1,42 +0,0 @@ -From c6962803f486e34cde370b34845741c8c380c460 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Daniel=20Gl=C3=B6ckner?= -Date: Sat, 19 Sep 2015 01:39:15 +0200 -Subject: [PATCH] check Windows version before allowing IO access - ---- - src/detect.c | 12 +++++++----- - 1 file changed, 7 insertions(+), 5 deletions(-) - -diff --git a/src/detect.c b/src/detect.c -index ca7f85b..d675584 100644 ---- a/src/detect.c -+++ b/src/detect.c -@@ -49,7 +49,7 @@ - #elif defined(HAVE_SOLARIS) - #include - #include --#elif defined(HAVE_CYGWIN_NT) -+#elif defined(HAVE_CYGWIN_NT) || defined(HAVE_CYGWIN_9X) - #ifdef HAVE_W32API_WINDOWS_H - #include - #else -@@ -191,10 +191,12 @@ check_io (void) - } - debugprintf ("We can't use IOP, nothing will work\n"); - #elif defined(HAVE_CYGWIN_9X) -- /* note: 95 allows apps direct IO access */ -- debugprintf ("Taking a guess on port availability (win9x)\n"); -- capabilities |= IO_CAPABLE; -- return 1; -+ /* note: Win32s/95/98/ME allows apps direct IO access */ -+ if (GetVersion() & (1 << 31)) { -+ debugprintf ("Taking a guess on port availability (win9x)\n"); -+ capabilities |= IO_CAPABLE; -+ return 1; -+ } - #endif - - return 0; --- -2.1.4 - diff --git a/src/libieee1284-5-pkg-config.patch b/src/libieee1284-5-pkg-config.patch deleted file mode 100644 index 11deea2..0000000 --- a/src/libieee1284-5-pkg-config.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 53f13bfb5afa9f8458a940116cc7692960ab9f0e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Daniel=20Gl=C3=B6ckner?= -Date: Mon, 4 Jan 2016 00:49:41 +0100 -Subject: [PATCH] add pkg-config metadata file - ---- - Makefile.am | 3 +++ - configure.in | 2 +- - libieee1284.pc.in | 11 +++++++++++ - 3 files changed, 15 insertions(+), 1 deletion(-) - create mode 100644 libieee1284.pc.in - -diff --git a/Makefile.am b/Makefile.am -index 2abe635..34f785a 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -30,6 +30,9 @@ bin_PROGRAMS = libieee1284_test - libieee1284_test_SOURCES = tests/test.c - libieee1284_test_LDADD = libieee1284.la - -+pkgconfigdir = $(libdir)/pkgconfig -+pkgconfig_DATA = libieee1284.pc -+ - # Python bindings - src_ieee1284module_la_SOURCES = src/ieee1284module.c - if PYTHON -diff --git a/configure.in b/configure.in -index 9b6b82a..197a8b6 100644 ---- a/configure.in -+++ b/configure.in -@@ -79,5 +79,5 @@ fi - - dnl Checks for library functions. - --AC_CONFIG_FILES([Makefile libieee1284.spec include/ieee1284.h]) -+AC_CONFIG_FILES([Makefile libieee1284.spec libieee1284.pc include/ieee1284.h]) - AC_OUTPUT -diff --git a/libieee1284.pc.in b/libieee1284.pc.in -new file mode 100644 -index 0000000..a9eacde ---- /dev/null -+++ b/libieee1284.pc.in -@@ -0,0 +1,11 @@ -+prefix=@prefix@ -+exec_prefix=@exec_prefix@ -+libdir=@libdir@ -+includedir=@includedir@ -+ -+Name: @PACKAGE@ -+Version: @VERSION@ -+Description: IEEE1284 parallel port library -+URL: http://cyberelk.net/tim/software/libieee1284/ -+Libs: -L${libdir} -lieee1284 -+Cflags: -I${includedir} --- -2.1.4 - -- cgit v0.12