Merge pull request #1286 from darealshinji/djvulibre

add package djvulibre
This commit is contained in:
Boris Nagaev 2016-07-26 12:56:33 +04:00 committed by GitHub
commit 22db05376d
4 changed files with 105 additions and 0 deletions

View File

@ -1273,6 +1273,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre>
<td class="package">devil</td>
<td class="website"><a href="http://openil.sourceforge.net/">DevIL</a></td>
</tr>
<tr>
<td class="package">djvulibre</td>
<td class="website"><a href="http://djvu.sourceforge.net/">DjVuLibre</a></td>
</tr>
<tr>
<td class="package">dlfcn-win32</td>
<td class="website"><a href="https://code.google.com/p/dlfcn-win32/">POSIX dlfcn wrapper for Windows</a></td>

View File

@ -0,0 +1,51 @@
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: darealshinji <djcj@gmx.de>
Date: Sun, 24 Jul 2016 09:33:22 +0200
Subject: [PATCH] define XXX_EXPORT symbols
diff --git a/libdjvu/Makefile.am b/libdjvu/Makefile.am
index 1111111..2222222 100644
--- a/libdjvu/Makefile.am
+++ b/libdjvu/Makefile.am
@@ -33,6 +33,8 @@ libdjvulibre_la_LIBADD = $(JPEG_LIBS) $(PTHREAD_LIBS)
libdjvulibre_la_LDFLAGS = -no-undefined -version-info $(version_info)
if HAVE_OS_WIN32
+libdjvulibre_la_CPPFLAGS += -DDJVUAPI_EXPORT
+libdjvulibre_la_CPPFLAGS += -DDDJVUAPI_EXPORT -DMINILISPAPI_EXPORT
libdjvulibre_la_LDFLAGS += -Wl,--export-all-symbols
endif
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: darealshinji <djcj@gmx.de>
Date: Sun, 24 Jul 2016 09:36:49 +0200
Subject: [PATCH] disable unknown pragma warnings
diff --git a/libdjvu/miniexp.cpp b/libdjvu/miniexp.cpp
index 1111111..2222222 100644
--- a/libdjvu/miniexp.cpp
+++ b/libdjvu/miniexp.cpp
@@ -382,6 +382,7 @@ static void NTAPI gctls_cb(PVOID, DWORD dwReason, PVOID) {
{CSLOCK(r);TlsFree(tlsIndex);tlsIndex=TLS_OUT_OF_INDEXES;}
}
# endif
+#ifndef __GNUC__
// -- Very black magic to clean tls variables.
# ifdef _M_IX86
# pragma comment (linker, "/INCLUDE:_tlscb")
@@ -391,6 +392,7 @@ static void NTAPI gctls_cb(PVOID, DWORD dwReason, PVOID) {
# pragma const_seg(".CRT$XLB")
extern "C" PIMAGE_TLS_CALLBACK tlscb = gctls_cb;
# pragma const_seg()
+#endif /* !__GNUC__ */
#else
// No threads

17
src/djvulibre-test.c Normal file
View File

@ -0,0 +1,17 @@
/*
* This file is part of MXE.
* See index.html for further information.
*/
#include <libdjvu/ddjvuapi.h>
int main(int argc, char *argv[])
{
ddjvu_context_t *djvu_test;
(void)argc;
djvu_test = ddjvu_context_create(argv[0]);
ddjvu_context_release(djvu_test);
return 0;
}

33
src/djvulibre.mk Normal file
View File

@ -0,0 +1,33 @@
# This file is part of MXE.
# See index.html for further information.
PKG := djvulibre
$(PKG)_VERSION := 3.5.27
$(PKG)_CHECKSUM := e69668252565603875fb88500cde02bf93d12d48a3884e472696c896e81f505f
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/djvu/DjVuLibre/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc jpeg tiff zlib
define $(PKG)_UPDATE
$(WGET) -q -O- 'http://sourceforge.net/projects/djvu/files/DjVuLibre/' | \
$(SED) -n 's,.*/\([0-9][^A-Za-z"]*\)/".*,\1,p' | \
head -1
endef
# can't build a working static library for now
# https://sourceforge.net/p/djvu/bugs/274/
define $(PKG)_BUILD_SHARED
cd '$(SOURCE_DIR)' && autoreconf -fi
cd '$(BUILD_DIR)' && $(SOURCE_DIR)/configure \
$(MXE_CONFIGURE_OPTS) \
--disable-desktopfiles
$(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)'
$(MAKE) -C '$(BUILD_DIR)' -j 1 install-strip \
$(MXE_DISABLE_CRUFT) dist_bin_SCRIPTS=
'$(TARGET)-g++' \
-W -Wall -Werror -pedantic \
'$(TEST_FILE)' -o '$(PREFIX)/$(TARGET)/bin/test-$(PKG).exe' \
`'$(TARGET)-pkg-config' ddjvuapi --cflags --libs`
endef