[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