[pkg-opensc-commit] [libp11] 18/67: Add compilation support for Appveyor
Eric Dorland
eric at moszumanska.debian.org
Sat Jan 30 05:34:13 UTC 2016
This is an automated email from the git hooks/post-receive script.
eric pushed a commit to branch master
in repository libp11.
commit 3b88fd85481c02ed33cdf02846f5bf9e8d769fa6
Author: LE TOUX Vincent <HG2025 at sdmn01.sirius.infra.com>
Date: Thu Dec 24 11:00:28 2015 +0100
Add compilation support for Appveyor
---
appveyor.yml | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ltrc.inc | 13 +++++++++++
make.rules.mak | 34 +++++++++++++++++++++++++++++
src/Makefile.am | 4 +++-
src/Makefile.mak | 8 +++----
src/libpkcs11.c | 2 +-
6 files changed, 121 insertions(+), 6 deletions(-)
diff --git a/appveyor.yml b/appveyor.yml
new file mode 100644
index 0000000..a125f1b
--- /dev/null
+++ b/appveyor.yml
@@ -0,0 +1,66 @@
+version: 0.3.0.{build}
+
+platform:
+ - x86
+ - x64
+
+configuration:
+ - Release
+ - Debug
+
+
+environment:
+ matrix:
+ - VSVER: 12
+# - VSVER: 10
+
+install:
+ - ps: if ($env:APPVEYOR_PULL_REQUEST_NUMBER -and $env:APPVEYOR_BUILD_NUMBER -ne ((Invoke-RestMethod `
+ https://ci.appveyor.com/api/projects/$env:APPVEYOR_ACCOUNT_NAME/$env:APPVEYOR_PROJECT_SLUG/history?recordsNumber=50).builds | `
+ Where-Object pullRequestId -eq $env:APPVEYOR_PULL_REQUEST_NUMBER)[0].buildNumber) { `
+ throw "There are newer queued builds for this pull request, failing early." }
+ - date /T & time /T
+ - set PATH=C:\cygwin\bin;%PATH%
+ - set OPENSSL_VER=1_0_2e
+ - ps: >-
+ If ($env:Platform -Match "x86") {
+ $env:VCVARS_PLATFORM="x86"
+ $env:ENV_PLATFORM="x86"
+ $env:NMAKE_ARCH=""
+ $env:OPENSSL_PF="Win32"
+ } Else {
+ $env:VCVARS_PLATFORM="amd64"
+ $env:ENV_PLATFORM="x64"
+ $env:NMAKE_ARCH="BUILD_ON=WIN64 BUILD_FOR=WIN64"
+ $env:OPENSSL_PF="Win64"
+ }
+ - ps: >-
+ If (!(Test-Path -Path "C:\OpenSSL-${env:OPENSSL_PF}" )) {
+ Start-FileDownload https://slproweb.com/download/${env:OPENSSL_PF}OpenSSL-${env:OPENSSL_VER}.exe -FileName C:\WinOpenSSL.exe
+ C:\WinOpenSSL.exe /SILENT /VERYSILENT /SP- /SUPPRESSMSGBOXES /NORESTART
+ }
+ - ps: >-
+ If ($env:Configuration -Like "*Debug*") {
+ $env:NMAKE_EXTRA="DEBUG_DEF=/DDEBUG ${env:NMAKE_EXTRA}"
+ }
+ - ps: $env:VSCOMNTOOLS=(Get-Content ("env:VS" + "$env:VSVER" + "0COMNTOOLS"))
+ - echo "Using Visual Studio %VSVER%.0 at %VSCOMNTOOLS%"
+ - call "%VSCOMNTOOLS%\..\..\VC\vcvarsall.bat" %VCVARS_PLATFORM%
+ - uname -a
+
+build_script:
+ - bash -c "exec 0</dev/null && ./bootstrap"
+ # disable features to speed up the script
+ - bash -c "exec 0</dev/null && ./configure OPENSSL_CFLAGS=\"-IC:\OpenSSL-Win32\include -IC:\OpenSSL-Win64\include\" OPENSSL_LIBS=\"-LC:\OpenSSL-Win32 -LC:\OpenSSL-Win64 -leay\" || cat config.log"
+ - cp winconfig.h config.h
+ - nmake /f Makefile.mak %NMAKE_ARCH% %NMAKE_EXTRA%
+ - appveyor PushArtifact src\libp11.dll
+ - appveyor PushArtifact src\libp11.lib
+ - ps: >-
+ If ($env:Configuration -Like "*Debug*") {
+ Push-AppveyorArtifact src\libp11.pdb
+ }
+
+cache:
+ - C:\OpenSSL-Win32
+ - C:\OpenSSL-Win64
diff --git a/ltrc.inc b/ltrc.inc
new file mode 100644
index 0000000..b6bad67
--- /dev/null
+++ b/ltrc.inc
@@ -0,0 +1,13 @@
+# Required to build Windows resource file
+
+RCCOMPILE = $(RC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS)
+LTRCCOMPILE = $(LIBTOOL) --mode=compile --tag=RC $(RCCOMPILE)
+
+.rc.lo:
+ $(LTRCCOMPILE) -i "$<" -o "$@"
+
+.rc.o:
+ $(RCCOMPILE) -i "$<" -o "$@"
+
+
diff --git a/make.rules.mak b/make.rules.mak
new file mode 100644
index 0000000..bd584ef
--- /dev/null
+++ b/make.rules.mak
@@ -0,0 +1,34 @@
+!IF "$(BUILD_FOR)" == "WIN64"
+OPENSSL_DIR = C:\OpenSSL-Win64
+!ELSE
+OPENSSL_DIR = C:\OpenSSL-Win32
+!ENDIF
+OPENSSL_INC = /I$(OPENSSL_DIR)\include
+
+#define OPENSSL_STATIC if you have visual studio compatible with OpenSSL's static binaries
+#OPENSSL_STATIC_DIR = static
+
+!IF "$(DEBUG_DEF)" == "/DDEBUG"
+OPENSSL_LIB = $(OPENSSL_DIR)\lib\VC\$(OPENSSL_STATIC_DIR)\libeay32MTd.lib user32.lib advapi32.lib crypt32.lib gdi32.lib
+!ELSE
+OPENSSL_LIB = $(OPENSSL_DIR)\lib\VC\$(OPENSSL_STATIC_DIR)\libeay32MT.lib user32.lib advapi32.lib crypt32.lib gdi32.lib
+!ENDIF
+
+ALL_INCLUDES= $(OPENSSL_INC)
+
+!IF "$(DEBUG_DEF)" == "/DDEBUG"
+LINKDEBUGFLAGS = /NODEFAULTLIB:LIBCMT /DEBUG
+CODE_OPTIMIZATION =
+COPTS = /GS /W3 /D_CRT_SECURE_NO_DEPRECATE /MTd /nologo $(ALL_INCLUDES) /I..\ /I. /D_WIN32_WINNT=0x0502 /DWIN32_LEAN_AND_MEAN /DDEBUG /Zi /Od
+!ELSE
+LINKDEBUGFLAGS = /NODEFAULTLIB:LIBCMTD
+COPTS = /GS /W3 /D_CRT_SECURE_NO_DEPRECATE /MT /nologo $(ALL_INCLUDES) /I..\ /I. /D_WIN32_WINNT=0x0502 /DWIN32_LEAN_AND_MEAN
+!ENDIF
+
+!IF "$(BUILD_FOR)" == "WIN64"
+LINKFLAGS = /NOLOGO /INCREMENTAL:NO /MACHINE:X64 /MANIFEST:NO /NODEFAULTLIB:MSVCRTD /NODEFAULTLIB:MSVCRT /NXCOMPAT /DYNAMICBASE $(LINKDEBUGFLAGS)
+LIBFLAGS = /nologo /machine:x64
+!ELSE
+LINKFLAGS = /NOLOGO /INCREMENTAL:NO /MACHINE:X86 /MANIFEST:NO /NODEFAULTLIB:MSVCRTD /NODEFAULTLIB:MSVCRT /NXCOMPAT /DYNAMICBASE $(LINKDEBUGFLAGS)
+LIBFLAGS = /nologo /machine:x86
+!ENDIF
diff --git a/src/Makefile.am b/src/Makefile.am
index ecc9cf4..ace93c2 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,7 +1,9 @@
+include $(top_srcdir)/ltrc.inc
+
MAINTAINERCLEANFILES = \
$(srcdir)/Makefile.in $(srcdir)/versioninfo.rc
CLEANFILES = libp11.pc
-EXTRA_DIST = Makefile.mak
+EXTRA_DIST = Makefile.mak versioninfo.rc.in
noinst_HEADERS= libp11-int.h pkcs11.h
include_HEADERS= libp11.h
diff --git a/src/Makefile.mak b/src/Makefile.mak
index 5025fbc..f6d3d93 100644
--- a/src/Makefile.mak
+++ b/src/Makefile.mak
@@ -1,8 +1,6 @@
-OPENSSL_INC = /IC:\openssl\include
-OPENSSL_LIB = C:\openssl\out32dll\libeay32.lib
+TOPDIR = ..
-COPTS = /Zi /MD /nologo /I..\ /I. $(OPENSSL_INC) /D_WIN32_WINNT=0x0400 /DWIN32 /DWIN32_LEAN_AND_MEAN
-LINKFLAGS = /DEBUG /NOLOGO /INCREMENTAL:NO /MACHINE:IX86
+!INCLUDE $(TOPDIR)\Make.rules.mak
TARGET = libp11.dll
@@ -16,6 +14,8 @@ RSC_PROJ=/l 0x809 /r /fo"versioninfo.res"
versioninfo.res: versioninfo.rc
rc $(RSC_PROJ) versioninfo.rc
+versioninfo.rc: versioninfo.rc.in
+ @copy /y versioninfo.rc.in versioninfo.rc
.c.obj::
cl $(COPTS) /c $<
diff --git a/src/libpkcs11.c b/src/libpkcs11.c
index b02b31d..92bc689 100644
--- a/src/libpkcs11.c
+++ b/src/libpkcs11.c
@@ -27,7 +27,7 @@
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
-#ifdef WIN32
+#ifdef _WIN32
#include <windows.h>
#else
#include <dlfcn.h>
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-opensc/libp11.git
More information about the pkg-opensc-commit
mailing list