updated windows build
This commit is contained in:
@@ -1,48 +1,72 @@
|
||||
EXTRA_DIST = build_fix_zlib.patch build_npa.patch
|
||||
MINGW ?= i686-w64-mingw32
|
||||
WIN32_DIR ?= $(abs_top_builddir)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION)_win32
|
||||
|
||||
OPENPACE=$(abs_builddir)/openpace
|
||||
OPENPACE_CONFIGURE_AC=$(OPENPACE)/configure.ac
|
||||
OPENPACE_CONFIGURE=$(OPENPACE)/configure
|
||||
OPENPACE_MAKEFILE=$(OPENPACE)/Makefile
|
||||
LIBEAC=$(WIN32_DIR)/bin/libeac-0.dll
|
||||
|
||||
OPENSC=$(abs_builddir)/opensc
|
||||
OPENSC_CONFIGURE_AC=$(OPENSC)/configure.ac
|
||||
OPENSC_CONFIGURE=$(OPENSC)/configure
|
||||
LIBOPENSC=$(WIN32_DIR)/bin/libopensc-3.dll
|
||||
|
||||
NPA_TOOL=$(WIN32_DIR)/bin/npa-tool.exe
|
||||
|
||||
|
||||
|
||||
$(OPENPACE_CONFIGURE_AC):
|
||||
git clone git://openpace.git.sourceforge.net/gitroot/openpace/openpace $(OPENPACE)
|
||||
|
||||
$(OPENPACE_CONFIGURE): $(OPENPACE_CONFIGURE_AC)
|
||||
cd $(OPENPACE) && autoreconf --verbose --install --symlink
|
||||
|
||||
$(OPENPACE_MAKEFILE): $(OPENPACE_CONFIGURE)
|
||||
cd $(OPENPACE) && ./configure
|
||||
|
||||
$(LIBEAC): $(OPENPACE_MAKEFILE)
|
||||
make -C $(OPENPACE) win MINGW=$(MINGW) WIN32_DIR=$(WIN32_DIR)
|
||||
|
||||
|
||||
|
||||
$(OPENSC_CONFIGURE_AC):
|
||||
git clone git://github.com/OpenSC/OpenSC.git $(OPENSC)
|
||||
|
||||
$(OPENSC_CONFIGURE): $(OPENSC_CONFIGURE_AC)
|
||||
cd $(OPENSC) && autoreconf --verbose --install --symlink
|
||||
|
||||
$(LIBOPENSC): $(OPENSC_CONFIGURE) $(LIBEAC)
|
||||
cd $(OPENSC) && ./configure \
|
||||
--prefix=/ \
|
||||
--target=$(MINGW) \
|
||||
PKG_CONFIG_SYSROOT_DIR=$(WIN32_DIR) \
|
||||
PKG_CONFIG_LIBDIR=$(WIN32_DIR)/lib/pkgconfig \
|
||||
CFLAGS=-I$(MINGW_DIR)/include \
|
||||
LDFLAGS=-L$(MINGW_DIR)/lib
|
||||
$(MAKE) -C $(OPENSC) install DESTDIR=$(WIN32_DIR)
|
||||
|
||||
|
||||
|
||||
$(NPA_TOOL): $(LIBEAC) $(LIBOPENSC)
|
||||
cd $(abs_top_builddir) \
|
||||
&& export ac_cv_func_malloc_0_nonnull=yes ac_cv_func_realloc_0_nonnull=yes \
|
||||
&& ./configure \
|
||||
--prefix=/ \
|
||||
--host=$(MINGW) --target=$(MINGW) \
|
||||
PKG_CONFIG_SYSROOT_DIR=$(WIN32_DIR) \
|
||||
PKG_CONFIG_LIBDIR=$(WIN32_DIR)/lib/pkgconfig \
|
||||
CFLAGS=-I$(MINGW_DIR)/include \
|
||||
LDFLAGS="-L$(MINGW_DIR)/lib " \
|
||||
OPENSC_LIBS="-L$(WIN32_DIR)/lib -lopensc"
|
||||
$(MAKE) -C $(abs_top_builddir) install DESTDIR=$(WIN32_DIR)
|
||||
|
||||
|
||||
|
||||
all-local:
|
||||
echo "Use \`make win\` to cross compile for Windows"
|
||||
@echo Use \`$(MAKE) win\` to cross compile for Windows
|
||||
|
||||
|
||||
OPENSC ?= $(abs_builddir)/opensc
|
||||
$(OPENSC)/configure.ac:
|
||||
git clone git://github.com/frankmorgner/OpenSC.git $(OPENSC)
|
||||
true cp Makefile.am.opensc.libopensc $(OPENSC)/src/libopensc/Makefile.am
|
||||
|
||||
OPENSC_TAR_GZ=$(OPENSC)/opensc-0.12.3-pre1.tar.gz
|
||||
$(OPENSC_TAR_GZ): $(OPENSC)/configure.ac
|
||||
cd $(OPENSC) && ./bootstrap && ./configure --disable-doc
|
||||
make -C $(OPENSC) dist
|
||||
|
||||
NPA_TAR_GZ=$(abs_top_builddir)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION).tar.gz
|
||||
$(NPA_TAR_GZ):
|
||||
make -C $(abs_top_builddir) dist
|
||||
|
||||
BUILD=$(abs_builddir)/build
|
||||
$(BUILD)/build: $(OPENSC_TAR_GZ) $(NPA_TAR_GZ)
|
||||
svn co -r123 http://www.opensc-project.org/svn/build/trunk $(BUILD)
|
||||
patch -p1 -d $(BUILD) < build_fix_zlib.patch
|
||||
patch -p1 -d $(BUILD) < build_npa.patch
|
||||
mkdir -p $(BUILD)/sources
|
||||
cp $(OPENSC_TAR_GZ) $(BUILD)/sources
|
||||
cp $(NPA_TAR_GZ) $(BUILD)/sources
|
||||
|
||||
|
||||
MINGW ?= i586-mingw32msvc
|
||||
IMAGE=$(BUILD)/image/opensc
|
||||
NPA_TOOL_EXE=$(IMAGE)/bin/npa-tool.exe
|
||||
$(NPA_TOOL_EXE): $(BUILD)/build
|
||||
cd $(BUILD) && \
|
||||
export ac_cv_func_malloc_0_nonnull=yes ac_cv_func_realloc_0_nonnull=yes; \
|
||||
CHOST=$(MINGW) CBUILD=`gcc -dumpmachine` \
|
||||
ZLIB_VERSION="1.2.6" \
|
||||
./build
|
||||
|
||||
|
||||
WIN32_DIR=$(abs_top_builddir)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION)_win32
|
||||
win: $(NPA_TOOL_EXE)
|
||||
mv $(IMAGE) $(WIN32_DIR)
|
||||
win: $(NPA_TOOL)
|
||||
$(INSTALL) -d $(WIN32_DIR)/include/libopensc
|
||||
$(INSTALL_DATA) -t $(WIN32_DIR)/include/libopensc \
|
||||
$(OPENSC)/src/libopensc/*.h
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
Index: build/build
|
||||
===================================================================
|
||||
--- build.orig/build 2012-04-15 20:42:56.183646915 +0200
|
||||
+++ build/build 2012-04-15 20:43:06.951700312 +0200
|
||||
@@ -419,7 +419,7 @@
|
||||
OPENSC_COMPONENTS="pcsc"
|
||||
export PKG_CONFIG="true"
|
||||
export MAN2HTML="true"
|
||||
- export ZLIB_LIBS="-L${OPENSC_ROOT}/lib -lzdll"
|
||||
+ #export ZLIB_LIBS="-L${OPENSC_ROOT}/lib -lzdll"
|
||||
export ICONV_CFLAGS="-I${OPENSC_ROOT}/include"
|
||||
export ICONV_LIBS="-L${OPENSC_ROOT}/lib -liconv"
|
||||
fi
|
||||
@@ -1,107 +0,0 @@
|
||||
Index: build/build
|
||||
===================================================================
|
||||
--- build.orig/build 2012-04-15 21:55:56.517367834 +0200
|
||||
+++ build/build 2012-04-15 22:08:45.505181046 +0200
|
||||
@@ -92,12 +92,13 @@
|
||||
for url in \
|
||||
${ZLIB_URL} ${LZO_URL} ${LIBTOOL_URL} ${ICONV_URL} \
|
||||
${OPENSSL_URL} ${OPENCT_URL} ${OPENSC_URL} ${LIBP11_URL} \
|
||||
- ${ENGINE_PKCS11_URL} ${PKCS11_HELPER_URL} ${OPENVPN_URL}; \
|
||||
+ ${ENGINE_PKCS11_URL} ${PKCS11_HELPER_URL} ${OPENVPN_URL} \
|
||||
+ ${NPA_URL}; \
|
||||
do
|
||||
download1 "${url}"
|
||||
done
|
||||
|
||||
- if [ "$(ls "${SOURCESROOT}" | wc -l | sed 's/[ \t]//g')" != 11 ]; then
|
||||
+ if [ "$(ls "${SOURCESROOT}" | wc -l | sed 's/[ \t]//g')" != 12 ]; then
|
||||
die "sources is unclean."
|
||||
fi
|
||||
}
|
||||
@@ -201,6 +202,7 @@
|
||||
zlib-dynamic ${ZLIB_CFLAGS} \
|
||||
no-capieng \
|
||||
--openssldir=/etc/ssl \
|
||||
+ experimental-pace \
|
||||
${EXTRA_OPENSSL_CONFIG} \
|
||||
|| die "Configure openssl"
|
||||
[ -n "${BUILD_FOR_WINDOWS}" ] && perl util/mkdef.pl crypto ssl NT update
|
||||
@@ -244,7 +246,24 @@
|
||||
CFLAGS="${CFLAGS} --include=cardmod-mingw-compat.h -I${SCRIPTROOT}/include" \
|
||||
--enable-openssl --enable-zlib ${extra_opensc} --enable-doc \
|
||||
|| die "Configure opensc"
|
||||
- ${MAKE} ${MAKEOPTS} ${MAKE_AUTOCONF_INSTALL_TARGET} DESTDIR="${OPENSC_ROOT}" || die "make opensc"
|
||||
+ ${MAKE} ${MAKEOPTS} ${MAKE_AUTOCONF_INSTALL_TARGET} DESTDIR="${OPENSC_ROOT}" \
|
||||
+ || test -x ${OPENSC_ROOT}/bin/libopensc-3.dll || die "make opensc"
|
||||
+
|
||||
+ fixup_la
|
||||
+
|
||||
+ cd "${SCRIPTROOT}"
|
||||
+ restore_la
|
||||
+}
|
||||
+
|
||||
+build_npa() {
|
||||
+ fixup_la
|
||||
+
|
||||
+ echo "Build npa"
|
||||
+ cd "${BUILDROOT}/npa"* || die "cd npa"
|
||||
+ ./configure ${CONFIGOPTS} ${EXTRA_NPA_CONFIG} \
|
||||
+ CFLAGS="${CFLAGS} -I${SCRIPTROOT}/include" LIBS="${LIBS} -lws2_32" \
|
||||
+ || die "Configure npa"
|
||||
+ ${MAKE} ${MAKEOPTS} ${MAKE_AUTOCONF_INSTALL_TARGET} DESTDIR="${OPENSC_ROOT}" || die "make npa"
|
||||
|
||||
fixup_la
|
||||
|
||||
@@ -410,6 +429,8 @@
|
||||
export LZO_LIBS="-L${OPENVPN_ROOT}/lib -llzo2"
|
||||
export PKCS11_HELPER_CFLAGS="-I${OPENVPN_ROOT}/include"
|
||||
export PKCS11_HELPER_LIBS="-L${OPENVPN_ROOT}/lib -lpkcs11-helper"
|
||||
+export OPENSC_CFLAGS="-I${OPENSC_ROOT}/include"
|
||||
+export OPENSC_LIBS="-L${OPENSC_ROOT}/lib -lopensc"
|
||||
|
||||
if [ -n "${BUILD_FOR_WINDOWS}" ]; then
|
||||
CONFIGOPTS=" \
|
||||
@@ -430,6 +451,7 @@
|
||||
fixup_win64_libtool
|
||||
build_dep
|
||||
build_opensc
|
||||
+build_npa
|
||||
build_engine_pkcs11
|
||||
build_openvpn
|
||||
copy_docs
|
||||
Index: build/build.vars
|
||||
===================================================================
|
||||
--- build.orig/build.vars 2012-04-15 21:55:32.361248035 +0200
|
||||
+++ build/build.vars 2012-04-15 21:56:04.533407557 +0200
|
||||
@@ -4,7 +4,7 @@
|
||||
ZLIB_VERSION="${ZLIB_VERSION:-1.2.5}"
|
||||
LIBTOOL_VERSION="${LIBTOOL_VERSION:-2.4}"
|
||||
ICONV_VERSION="${ICONV_VERSION:-1.14}"
|
||||
-OPENSSL_VERSION="${OPENSSL_VERSION:-1.0.0e}"
|
||||
+OPENSSL_VERSION="${OPENSSL_VERSION:-1.0.1_with_openpace-0.7}"
|
||||
OPENCT_VERSION="${OPENCT_VERSION:-0.6.20}"
|
||||
OPENSC_VERSION="${OPENSC_VERSION:-0.12.2}"
|
||||
LIBP11_VERSION="${LIBP11_VERSION:-0.2.8}"
|
||||
@@ -12,12 +12,13 @@
|
||||
PKCS11_HELPER_VERSION="${PKCS11_HELPER_VERSION:-1.09}"
|
||||
LZO_VERSION="${LZO_VERSION:-2.05}"
|
||||
OPENVPN_VERSION="${OPENVPN_VERSION:-2.2.1}"
|
||||
+NPA_VERSION="${NPA_VERSION:-0.4}"
|
||||
OPENSC_COMPONENTS="openct"
|
||||
|
||||
ZLIB_URL="${ZLIB_URL:-http://www.zlib.net/zlib-${ZLIB_VERSION}.tar.gz}"
|
||||
LIBTOOL_URL="${LIBTOOL_URL:-http://ftp.gnu.org/gnu/libtool/libtool-${LIBTOOL_VERSION}.tar.gz}"
|
||||
ICONV_URL="${ICONV_URL:-http://ftp.gnu.org/pub/gnu/libiconv/libiconv-${ICONV_VERSION}.tar.gz}"
|
||||
-OPENSSL_URL="${OPENSSL_URL:-http://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz}"
|
||||
+OPENSSL_URL="${OPENSSL_URL:-http://www2.informatik.hu-berlin.de/~morgner/openssl-${OPENSSL_VERSION}.tar.gz}"
|
||||
OPENCT_URL="${OPENCT_URL:-http://www.opensc-project.org/files/openct/openct-${OPENCT_VERSION}.tar.gz}"
|
||||
OPENSC_URL="${OPENSC_URL:-http://www.opensc-project.org/files/opensc/opensc-${OPENSC_VERSION}.tar.gz}"
|
||||
LIBP11_URL="${LIBP11_URL:-http://www.opensc-project.org/files/libp11/libp11-${LIBP11_VERSION}.tar.gz}"
|
||||
@@ -25,6 +26,7 @@
|
||||
PKCS11_HELPER_URL="${PKCS11_HELPER_URL:-http://www.opensc-project.org/files/pkcs11-helper/pkcs11-helper-${PKCS11_HELPER_VERSION}.tar.bz2}"
|
||||
LZO_URL="${LZO_URL:-http://www.oberhumer.com/opensource/lzo/download/lzo-${LZO_VERSION}.tar.gz}"
|
||||
OPENVPN_URL="${OPENVPN_URL:-http://swupdate.openvpn.net/community/releases/openvpn-${OPENVPN_VERSION}.tar.gz}"
|
||||
+NPA_URL="${NPA_URL:-http://downloads.sourceforge.net/project/vsmartcard/npa/npa-${NPA_VERSION}.tar.gz}"
|
||||
|
||||
#CHOST
|
||||
#CTARGET
|
||||
Reference in New Issue
Block a user