TARGETNAME=advapi32 TARGETPATH=obj TARGETTYPE=DYNLINK DLLENTRY=DllInitialize DLLDEF=$(O)\advapi32.def LINKLIBS= \ $(ADMIN_LIB_PATH)\idletskc.lib \ $(DS_LIB_PATH)\sys003.lib \ $(DS_LIB_PATH)\randlibn.lib \ $(DS_LIB_PATH)\lsaudll.lib \ $(DS_LIB_PATH)\appmgmt.lib \ $(DS_LIB_PATH)\winsafer.lib \ $(DS_LIB_PATH)\accsrc.lib \ $(BASE_LIB_PATH)\wmiclnt.lib \ $(BASE_LIB_PATH)\winreg.lib \ $(BASE_LIB_PATH)\svcctrl.lib \ $(SDK_LIB_PATH)\wintrust.lib \ $(BASE_LIB_PATH)\wow64reg.lib \ $(DS_LIB_PATH)\rsa32.lib \ $(SDK_LIB_PATH)\elfapi.lib TARGETLIBS= \ $(DS_LIB_PATH)\lsacomm.lib \ $(DS_LIB_PATH)\seclogon_c.lib \ $(BASE_LIB_PATH)\sclib.lib \ $(BASE_LIB_PATH)\localreg.lib \ $(BASE_LIB_PATH)\perflib.lib \ $(BASE_LIB_PATH)\regconn.lib \ $(BASE_LIB_PATH)\wrlib.lib \ $(SDK_LIB_PATH)\kernl32p.lib \ $(SDK_LIB_PATH)\rpcrt4.lib \ $(SDK_LIB_PATH)\rpcndr.lib \ $(SDK_LIB_PATH)\rpcutil.lib \ $(SDK_LIB_PATH)\secur32.lib \ $(SDK_LIB_PATH)\winspool.lib INCLUDES=\ $(DS_INC_PATH); \ $(WINDOWS_INC_PATH);\ $(BASE_INC_PATH);\ $(NET_INC_PATH);\ $(TERMSRV_INC_PATH); \ $(DS_INC_PATH)\crypto; !ifdef TEST_BUILD_EXPONENT ! if "$(TEST_BUILD_EXPONENT)" == "$(TEST_BUILD_EXPONENT:0x=)" ! error TEST_BUILD_EXPONENT value must start with 0x ! endif C_DEFINES=$(C_DEFINES) -DTEST_BUILD_EXPONENT=$(TEST_BUILD_EXPONENT) !endif # Turn this on before shipping. # !if "" == "$(OFFICIAL_BUILD_MACHINE)" # If this isn't an official build lab, allow unsigned CSPs. # C_DEFINES=$(C_DEFINES) -DPROMISCUOUS_ADVAPI # !endif # Don't allow both Enigma and Vaultsign to be enabled !if "1" == "$(ENIGMA)" ! if "1" == "$(VAULTSIGN)" ! error Both Enigma and VaultSign are defined in the build environment ! endif !endif !if "1" != "$(ENIGMA)" ! if "1" != "$(VAULTSIGN)" # No signing flag is set, so allows unsigned CSP's C_DEFINES=$(C_DEFINES) -DPROMISCUOUS_ADVAPI ! else # VAULTSIGN is set so binplace a marker to flag this case MISCFILES=advapi_vaultsign.txt ! endif !else # ENIGMA is set so binplace a marker to flag this case MISCFILES=advapi_enigma.txt !endif C_DEFINES=$(C_DEFINES) -D_ADVAPI32_ -DNTCRYPTO # Be sure to build with VaultSign for shipping binaries! !if "1" != "$(VAULTSIGN)" C_DEFINES=$(C_DEFINES) -DMS_INTERNAL_KEY !endif USE_NTDLL=1 PASS0_SOURCEDIR=$(O) PASS0_HEADERDIR=$(O) SOURCES= \ advapi32.rc \ win31evt.mc \ init.c \ eventapi.c \ pnpapi.c \ security.c \ username.c \ win31io.c \ group32.c \ group16.c \ isuni.c \ logon32.c \ cryptapi.c \ regdat16.c \ cseclogn.cxx \ efs.c \ sddl.c \ termutil.c \ mschapp.c UMTYPE=console OPTIONAL_UMTEST=tuser # # We need to build a private advapi32 library NTTARGETFILES=$(O)\advapip.lib PASS1_PUBLISH=\ {$(O)\advapi32.lib=$(SDK_LIB_PATH)\advapi32.lib} \ {$(O)\advapip.lib=$(SDK_LIB_PATH)\advapip.lib} DELAYLOAD=secur32.dll;wintrust.dll DLOAD_ERROR_HANDLER=kernel32