build: Added windows/libtasn14win.mk rules to produce Windows binaries.
authorSimon Josefsson <simon@josefsson.org>
Wed, 26 Oct 2011 09:00:33 +0000 (11:00 +0200)
committerSimon Josefsson <simon@josefsson.org>
Wed, 26 Oct 2011 09:00:50 +0000 (11:00 +0200)
Makefile.am
NEWS
windows/libtasn14win.mk [new file with mode: 0644]

index 9f583e0..b478089 100644 (file)
 
 DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc
 
-EXTRA_DIST = windows/asn1-parser/asn1-parser.vcproj            \
-       windows/asn1-parser/config.h windows/libtasn1.ncb       \
-       windows/libtasn1.sln windows/libtasn1.suo               \
-       windows/gnulib/getopt.h windows/gnulib/gnulib.vcproj    \
-       windows/libtasn1/libtasn1.vcproj                        \
-       windows/test-parser/test-parser.vcproj                  \
-       windows/test-tree/test-tree.vcproj
+EXTRA_DIST = windows/asn1-parser/asn1-parser.vcproj                    \
+       windows/asn1-parser/config.h windows/libtasn1.ncb               \
+       windows/libtasn1.sln windows/libtasn1.suo                       \
+       windows/gnulib/getopt.h windows/gnulib/gnulib.vcproj            \
+       windows/libtasn1/libtasn1.vcproj                                \
+       windows/test-parser/test-parser.vcproj                          \
+       windows/test-tree/test-tree.vcproj windows/libtasn14win.mk
 
 SUBDIRS = gl lib src examples tests doc
 
diff --git a/NEWS b/NEWS
index 5d448c9..1be6353 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,7 @@
 GNU Libtasn1 NEWS                                     -*- outline -*-
 
 * Noteworthy changes in release 2.11 (????-??-??) [stable]
+- build: Added windows/libtasn14win.mk rules to produce Windows binaries.
 
 * Noteworthy changes in release 2.10 (2011-10-25) [stable]
 - lib: Small optimization, possibly working around gcc/valgrind issue.
diff --git a/windows/libtasn14win.mk b/windows/libtasn14win.mk
new file mode 100644 (file)
index 0000000..e82fcde
--- /dev/null
@@ -0,0 +1,51 @@
+# Copyright (C) 2011 Free Software Foundation, Inc.
+#
+# This file is part of LIBTASN1.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Written by Simon Josefsson October 2011.
+
+PACKAGE = libtasn1
+distdir = $(PACKAGE)-$(VERSION)
+TGZ = $(distdir).tar.gz
+URL = ftp://ftp.gnu.org/gnu/$(PACKAGE)/$(TGZ)
+
+all:
+       @echo 'Usage examples:'
+       @echo '  make -f libtasn14win.mk libtasn14win VERSION=2.10'
+       @echo '  make -f libtasn14win.mk libtasn14win32 VERSION=2.10 CHECK=check'
+
+libtasn14win: libtasn14win32 libtasn14win64
+
+libtasn14win32:
+       $(MAKE) -f libtasn14win.mk doit ARCH=32 HOST=i686-w64-mingw32 CHECK=check
+
+libtasn14win64:
+       $(MAKE) -f libtasn14win.mk doit ARCH=64 HOST=x86_64-w64-mingw32
+
+doit:
+       rm -rf tmp && mkdir tmp && cd tmp && \
+       cp ../../$(TGZ) . || wget $(URL) && \
+       tar xfa $(TGZ) && \
+       cd $(distdir) && \
+       ./configure --host=$(HOST) --build=x86_64-unknown-linux-gnu --prefix=$(PWD)/tmp/root && \
+       make $(CHECK) install && \
+       cd .. && \
+       cd root && \
+       zip -r ../../$(distdir)-win$(ARCH).zip *
+
+upload:
+       gnupload --to ftp.gnu.org:$(PACKAGE) $(distdir)-win32.zip $(distdir)-win64.zip
+       cp $(distdir)-win32.zip $(distdir)-win32.zip.sig $(distdir)-win64.zip $(distdir)-win64.zip.sig ../../releases/$(PACKAGE)/