WindowsInstaller: build for x64 with nmake -f Makefile.mak BUILD_TYPE=WIN64

git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@5286 c6295689-39f2-0310-b995-f0e70906c6a9
This commit is contained in:
martin 2011-04-01 08:06:25 +00:00
parent 5ab9919610
commit ea7eb699e5
4 changed files with 27 additions and 11 deletions

View File

@ -5,13 +5,13 @@ COMMON_OBJECTS = compat_getpass.obj compat_getopt.obj compat_strlcpy.obj compat_
all: common.lib libpkcs11.lib libscdl.lib
common.lib: $(COMMON_OBJECTS)
lib /nologo /machine:ix86 /out:common.lib $(COMMON_OBJECTS)
lib $(LIBFLAGS) /out:common.lib $(COMMON_OBJECTS)
libpkcs11.lib: libpkcs11.obj libscdl.obj
lib /nologo /machine:ix86 /out:libpkcs11.lib libpkcs11.obj libscdl.obj
lib $(LIBFLAGS) /out:libpkcs11.lib libpkcs11.obj libscdl.obj
libscdl.lib: libscdl.obj
lib /nologo /machine:ix86 /out:libscdl.lib libscdl.obj
lib $(LIBFLAGS) /out:libscdl.lib libscdl.obj
!INCLUDE $(TOPDIR)\win32\Make.rules.mak

View File

@ -13,7 +13,7 @@ OBJECTS = pkcs15-lib.obj profile.obj \
all: $(TARGET)
$(TARGET): $(OBJECTS)
lib /nologo /machine:ix86 /out:$(TARGET) $(OBJECTS)
lib $(LIBFLAGS) /out:$(TARGET) $(OBJECTS)
!INCLUDE $(TOPDIR)\win32\Make.rules.mak

View File

@ -8,6 +8,6 @@ OBJECTS = scconf.obj parse.obj write.obj sclex.obj
all: $(TARGET)
$(TARGET): $(OBJECTS)
lib /nologo /machine:ix86 /out:$(TARGET) $(OBJECTS)
lib $(LIBFLAGS) /out:$(TARGET) $(OBJECTS)
!INCLUDE $(TOPDIR)\win32\Make.rules.mak

View File

@ -4,8 +4,11 @@ OPENSC_FEATURES = pcsc
MINIDRIVER_DEF = /DENABLE_CARDMOD
#Build MSI with the Windows Installer XML (WIX) toolkit, requires WIX >= 3.6
!IF "$(BUILD_TYPE)" == "WIN64"
WIX_PATH = "C:\Program Files (x86)\Windows Installer XML v3.6"
!ELSE
WIX_PATH = "C:\Program Files\Windows Installer XML v3.6"
!ENDIF
# If you want support for OpenSSL (needed for pkcs15-init tool, software hashing in PKCS#11 library and verification):
# - download and build OpenSSL
@ -14,8 +17,13 @@ WIX_PATH = "C:\Program Files\Windows Installer XML v3.6"
# - set the OPENSSL_LIB below to your openssl lib file
OPENSSL_DEF = /DENABLE_OPENSSL
!IF "$(OPENSSL_DEF)" == "/DENABLE_OPENSSL"
OPENSSL_INCL_DIR = /IC:\OpenSSL-Win32\include
OPENSSL_LIB = C:\OpenSSL-Win32\lib\VC\static\libeay32MT.lib C:\OpenSSL-Win32\lib\VC\static\ssleay32MT.lib user32.lib advapi32.lib crypt32.lib
!IF "$(BUILD_TYPE)" == "WIN64"
OPENSSL_DIR = C:\OpenSSL-Win64
!ELSE
OPENSSL_DIR = C:\OpenSSL-Win32
!ENDIF
OPENSSL_INCL_DIR = /I$(OPENSSL_DIR)\include
OPENSSL_LIB = $(OPENSSL_DIR)\lib\VC\static\libeay32MT.lib $(OPENSSL_DIR)\lib\VC\static\ssleay32MT.lib user32.lib advapi32.lib crypt32.lib
PROGRAMS_OPENSSL = pkcs15-init.exe cryptoflex-tool.exe netkey-tool.exe piv-tool.exe westcos-tool.exe
OPENSC_FEATURES = $(OPENSC_FEATURES) openssl
@ -35,16 +43,24 @@ OPENSC_FEATURES = $(OPENSC_FEATURES) zlib
!ENDIF
# Used for MiniDriver
!IF "$(BUILD_TYPE)" == "WIN64"
CNGSDK_INCL_DIR = "/IC:\Program Files (x86)\Microsoft CNG Development Kit\Include"
!ELSE
CNGSDK_INCL_DIR = "/IC:\Program Files\Microsoft CNG Development Kit\Include"
!ENDIF
# Mandatory path to 'ISO C9x compliant stdint.h and inttypes.h for Microsoft Visual Studio'
# http://msinttypes.googlecode.com/files/msinttypes-r26.zip
# INTTYPES_INCL_DIR = /IC:\opensc\dependencies\msys\local
ALL_INCLUDES = /I$(TOPDIR)\win32 /I$(TOPDIR)\src $(OPENSSL_INCL_DIR) $(ZLIB_INCL_DIR) $(LIBLTDL_INCL) $(INTTYPES_INCL_DIR) $(CNGSDK_INCL_DIR)
COPTS = /D_CRT_SECURE_NO_DEPRECATE /MT /nologo /DHAVE_CONFIG_H $(ALL_INCLUDES) /D_WIN32_WINNT=0x0502 /DWIN32_LEAN_AND_MEAN $(OPENSSL_DEF) $(ZLIB_DEF) $(MINIDRIVER_DEF) /DOPENSC_FEATURES="\"$(OPENSC_FEATURES)\""
LINKFLAGS = /NOLOGO /INCREMENTAL:NO /MACHINE:IX86 /MANIFEST:NO /NODEFAULTLIB:MSVCRTD /NODEFAULTLIB:MSVCRT /NODEFAULTLIB:LIBCMTD
!IF "$(BUILD_TYPE)" == "WIN64"
LINKFLAGS = /NOLOGO /INCREMENTAL:NO /MACHINE:X64 /MANIFEST:NO /NODEFAULTLIB:MSVCRTD /NODEFAULTLIB:MSVCRT /NODEFAULTLIB:LIBCMTD
LIBFLAGS = /nologo /machine:x64
!ELSE
LINKFLAGS = /NOLOGO /INCREMENTAL:NO /MACHINE:X86 /MANIFEST:NO /NODEFAULTLIB:MSVCRTD /NODEFAULTLIB:MSVCRT /NODEFAULTLIB:LIBCMTD
LIBFLAGS = /nologo /machine:x86
!ENDIF
.c.obj::
cl $(COPTS) /c $<