From 010f21e1067a9bd9eb09d48b2dec34588693bc13 Mon Sep 17 00:00:00 2001 From: Tom Yu Date: Tue, 19 Dec 2006 00:12:32 +0000 Subject: [PATCH] pull up r18930 from trunk r18930@cathode-dark-space: jaltman | 2006-12-07 16:56:20 -0500 ticket: 3642 tags: pullup Modifications to support the generation and embedding of library manifests into generated EXEs and DLLs. Manifests are required for Windows XP and above when applications are built with Microsoft Visual Studio 2005 (aka VS8) or above. ticket: 3642 version_fixed: 1.6 git-svn-id: svn://anonsvn.mit.edu/krb5/branches/krb5-1-6@18967 dc483132-0cff-0310-8789-dd5450dbe970 --- src/Makefile.in | 1 + src/appl/gss-sample/Makefile.in | 2 + src/appl/gssftp/ftp/Makefile.in | 1 + src/clients/kcpytkt/Makefile.in | 1 + src/clients/kdeltkt/Makefile.in | 1 + src/clients/kdestroy/Makefile.in | 1 + src/clients/kinit/Makefile.in | 1 + src/clients/klist/Makefile.in | 1 + src/clients/kvno/Makefile.in | 1 + src/config/win-post.in | 1 + src/config/win-pre.in | 7 +++ src/include/krb5/krb5.hin | 7 ++- src/krb524/Makefile.in | 2 + src/lib/Makefile.in | 6 ++ src/lib/krb5/krb/gic_opt.c | 12 +++- src/util/windows/Makefile.in | 4 +- src/windows/cns/Makefile.in | 1 + src/windows/gina/Makefile.in | 1 + src/windows/identity/config/Makefile.w32 | 3 +- src/windows/kfwlogon/Makefile.in | 76 ++++++++++++------------ src/windows/ms2mit/Makefile.in | 2 + src/windows/wintel/Makefile.in | 1 + 22 files changed, 91 insertions(+), 42 deletions(-) diff --git a/src/Makefile.in b/src/Makefile.in index 94829d061..5e88fb94d 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -159,6 +159,7 @@ config-windows:: Makefile-windows # ##DOS##$(WCONFIG_EXE): outpre-dir wconfig.c ##DOS## $(CC) -Fe$@ -Fo$*.obj wconfig.c $(CCLINKOPTION) +##DOS## $(_VC_MANIFEST_EMBED_EXE) ##DOS##MKFDEP=$(WCONFIG_EXE) config\win-pre.in config\win-post.in diff --git a/src/appl/gss-sample/Makefile.in b/src/appl/gss-sample/Makefile.in index 92cecb501..f43bdc9d6 100644 --- a/src/appl/gss-sample/Makefile.in +++ b/src/appl/gss-sample/Makefile.in @@ -21,9 +21,11 @@ gss-client: gss-client.o gss-misc.o $(GSS_DEPLIBS) $(KRB5_BASE_DEPLIBS) $(OUTPRE)gss-server.exe: $(OUTPRE)gss-server.obj $(OUTPRE)gss-misc.obj $(GLIB) $(KLIB) link $(EXE_LINKOPTS) -out:$@ $** ws2_32.lib $(SCLIB) + $(_VC_MANIFEST_EMBED_EXE) $(OUTPRE)gss-client.exe: $(OUTPRE)gss-client.obj $(OUTPRE)gss-misc.obj $(GLIB) $(KLIB) link $(EXE_LINKOPTS) -out:$@ $** ws2_32.lib $(SCLIB) + $(_VC_MANIFEST_EMBED_EXE) clean-unix:: $(RM) gss-server gss-client diff --git a/src/appl/gssftp/ftp/Makefile.in b/src/appl/gssftp/ftp/Makefile.in index ded4c95da..490b5dc3b 100644 --- a/src/appl/gssftp/ftp/Makefile.in +++ b/src/appl/gssftp/ftp/Makefile.in @@ -38,6 +38,7 @@ ftp: $(OBJS) $(GSS_DEPLIBS) $(KRB5_BASE_DEPLIBS) $(OUTPRE)ftp.exe: $(OBJS) $(GLIB) $(KLIB) link $(EXE_LINKOPTS) -out:$@ $** ws2_32.lib advapi32.lib $(SCLIB) + $(_VC_MANIFEST_EMBED_EXE) clean-unix:: $(RM) ftp diff --git a/src/clients/kcpytkt/Makefile.in b/src/clients/kcpytkt/Makefile.in index d7089841c..a989b5006 100644 --- a/src/clients/kcpytkt/Makefile.in +++ b/src/clients/kcpytkt/Makefile.in @@ -15,6 +15,7 @@ kcpytkt: kcpytkt.o $(KRB4COMPAT_DEPLIBS) $(OUTPRE)kcpytkt.exe: $(OUTPRE)kcpytkt.obj $(BUILDTOP)\util\windows\$(OUTPRE)getopt.obj $(KLIB) $(CLIB) link $(EXE_LINKOPTS) /out:$@ $** + $(_VC_MANIFEST_EMBED_EXE) clean-unix:: $(RM) kcpytkt.o kcpytkt diff --git a/src/clients/kdeltkt/Makefile.in b/src/clients/kdeltkt/Makefile.in index d7d371a79..f5f746f28 100644 --- a/src/clients/kdeltkt/Makefile.in +++ b/src/clients/kdeltkt/Makefile.in @@ -15,6 +15,7 @@ kdeltkt: kdeltkt.o $(KRB4COMPAT_DEPLIBS) $(OUTPRE)kdeltkt.exe: $(OUTPRE)kdeltkt.obj $(BUILDTOP)\util\windows\$(OUTPRE)getopt.obj $(KLIB) $(CLIB) link $(EXE_LINKOPTS) /out:$@ $** + $(_VC_MANIFEST_EMBED_EXE) clean-unix:: $(RM) kdeltkt.o kdeltkt diff --git a/src/clients/kdestroy/Makefile.in b/src/clients/kdestroy/Makefile.in index 6c24f7190..ce273af9b 100644 --- a/src/clients/kdestroy/Makefile.in +++ b/src/clients/kdestroy/Makefile.in @@ -17,6 +17,7 @@ kdestroy: kdestroy.o $(KRB4COMPAT_DEPLIBS) $(OUTPRE)kdestroy.exe: $(OUTPRE)kdestroy.obj $(BUILDTOP)\util\windows\$(OUTPRE)getopt.obj $(KLIB) $(CLIB) link $(EXE_LINKOPTS) -out:$@ $** + $(_VC_MANIFEST_EMBED_EXE) clean-unix:: $(RM) kdestroy.o kdestroy diff --git a/src/clients/kinit/Makefile.in b/src/clients/kinit/Makefile.in index 17c6e5a92..ec023b757 100644 --- a/src/clients/kinit/Makefile.in +++ b/src/clients/kinit/Makefile.in @@ -20,6 +20,7 @@ kinit: kinit.o $(KRB4COMPAT_DEPLIBS) $(OUTPRE)kinit.exe: $(OUTPRE)kinit.obj $(BUILDTOP)\util\windows\$(OUTPRE)getopt.lib $(KLIB) $(CLIB) link $(EXE_LINKOPTS) -out:$@ $** advapi32.lib + $(_VC_MANIFEST_EMBED_EXE) clean-unix:: $(RM) kinit.o kinit diff --git a/src/clients/klist/Makefile.in b/src/clients/klist/Makefile.in index 669c11e86..7a834045c 100644 --- a/src/clients/klist/Makefile.in +++ b/src/clients/klist/Makefile.in @@ -17,6 +17,7 @@ klist: klist.o $(KRB4COMPAT_DEPLIBS) $(OUTPRE)klist.exe: $(OUTPRE)klist.obj $(BUILDTOP)\util\windows\$(OUTPRE)getopt.lib $(SLIB) $(KLIB) $(CLIB) link $(EXE_LINKOPTS) -out:$@ $** ws2_32.lib $(SCLIB) + $(_VC_MANIFEST_EMBED_EXE) clean-unix:: $(RM) klist.o klist diff --git a/src/clients/kvno/Makefile.in b/src/clients/kvno/Makefile.in index f8a3eeb3a..70729311e 100644 --- a/src/clients/kvno/Makefile.in +++ b/src/clients/kvno/Makefile.in @@ -17,6 +17,7 @@ kvno: kvno.o $(KRB4COMPAT_DEPLIBS) $(OUTPRE)kvno.exe: $(OUTPRE)kvno.obj $(BUILDTOP)\util\windows\$(OUTPRE)getopt.obj $(KLIB) $(CLIB) link $(EXE_LINKOPTS) /out:$@ $** + $(_VC_MANIFEST_EMBED_EXE) clean-unix:: $(RM) kvno.o kvno diff --git a/src/config/win-post.in b/src/config/win-post.in index a568bf9a9..fd874aebe 100644 --- a/src/config/win-post.in +++ b/src/config/win-post.in @@ -107,4 +107,5 @@ clean-windows-files:: $(RM) .\$(OUTPRE)*.lib .\$(OUTPRE)*.pdb $(RM) .\$(OUTPRE)*.exp .\$(OUTPRE)*.map $(RM) .\$(OUTPRE)*.idb .\$(OUTPRE)*.ilk + $(RM) .\$(OUTPRE)*.manifest !endif diff --git a/src/config/win-pre.in b/src/config/win-pre.in index 2f8b0dad2..7cadbe903 100644 --- a/src/config/win-pre.in +++ b/src/config/win-pre.in @@ -144,6 +144,13 @@ SCLIB= DEBUGOPT=/ZI !endif +#if the compiler is vstudio 8, generate manifest +!if exists("$(VCINSTALLDIR)\..\..\MICROSOFT VISUAL STUDIO 8") +CCLINKOPTION = $(CCLINKOPTION) /MANIFEST +_VC_MANIFEST_EMBED_EXE = if exist $*.exe.manifest mt.exe -manifest $*.exe.manifest -outputresource:$*.exe;1 +_VC_MANIFEST_EMBED_DLL = if exist $*.dll.manifest mt.exe -manifest $*.dll.manifest -outputresource:$*.dll;2 +!endif + # /ZI gives better debug info in each object file (MSVC 6.0 or higher). # /Zi gives debug info in each object file. # /Gs Avoid stack probes (they don't seem to work anyway) diff --git a/src/include/krb5/krb5.hin b/src/include/krb5/krb5.hin index 9d9920efd..9c6fd2311 100644 --- a/src/include/krb5/krb5.hin +++ b/src/include/krb5/krb5.hin @@ -2429,7 +2429,7 @@ typedef struct _krb5_get_init_creds_opt { #define KRB5_GET_INIT_CREDS_OPT_ADDRESS_LIST 0x0020 #define KRB5_GET_INIT_CREDS_OPT_PREAUTH_LIST 0x0040 #define KRB5_GET_INIT_CREDS_OPT_SALT 0x0080 - +#define KRB5_GET_INIT_CREDS_OPT_CHG_PWD_PRMPT 0x0100 void KRB5_CALLCONV krb5_get_init_creds_opt_init @@ -2477,7 +2477,10 @@ krb5_get_init_creds_opt_set_salt (krb5_get_init_creds_opt *opt, krb5_data *salt); - +void KRB5_CALLCONV +krb5_get_init_creds_opt_set_change_password_prompt +(krb5_get_init_creds_opt *opt, + int prompt); krb5_error_code KRB5_CALLCONV krb5_get_init_creds_password diff --git a/src/krb524/Makefile.in b/src/krb524/Makefile.in index f244e5271..2501c92f3 100644 --- a/src/krb524/Makefile.in +++ b/src/krb524/Makefile.in @@ -88,9 +88,11 @@ k524init: $(CLIENT_OBJS) $(KRB5_DEPLIB) $(KRB4COMPAT_DEPLIBS) $(K524LIB): $(OUTPRE)krb524.$(OBJEXT) $(OUTPRE)libinit.$(OBJEXT) $(KLIB) $(CLIB) link $(DLL_LINKOPTS) -def:$(K524DEF) -out:$*.dll $** $(WINLIBS) + $(_VC_MANIFEST_EMBED_DLL) $(OUTPRE)k524init.exe: $(OUTPRE)k524init.$(OBJEXT) $(KLIB) $(K4LIB) $(CLIB) $(BUILDTOP)\util\windows\$(OUTPRE)getopt.lib link $(EXE_LINKOPTS) -out:$@ $** $(WINLIBS) $(SCLIB) + $(_VC_MANIFEST_EMBED_EXE) install-unix:: $(INSTALL_PROGRAM) krb524d $(DESTDIR)$(SERVER_BINDIR)/krb524d diff --git a/src/lib/Makefile.in b/src/lib/Makefile.in index 736f9a515..b1590df71 100644 --- a/src/lib/Makefile.in +++ b/src/lib/Makefile.in @@ -101,6 +101,7 @@ clean-windows:: ##WIN32##$(SLIB): $(SDEF) $(SLIBS) $(SGLUE) $(SRES) ##WIN32## link $(WINDLLFLAGS) -def:$(SDEF) -out:$*.dll \ ##WIN32## $(SLIBS) $(SGLUE) $(SRES) $(WINLIBS) $(SCLIB) +##WIN32## $(_VC_MANIFEST_EMBED_DLL) ##WIN32##$(SDEF): ..\util\support\libkrb5support.exports ##WIN32## echo EXPORTS > $(SDEF).new ##WIN32## type ..\util\support\libkrb5support.exports >> $(SDEF).new @@ -110,22 +111,27 @@ clean-windows:: ##WIN32##$(CLIB): $(CDEF) $(CLIBS) $(CGLUE) $(CRES) $(SLIB) ##WIN32## link $(WINDLLFLAGS) -def:$(CDEF) -out:$*.dll \ ##WIN32## $(CLIBS) $(CGLUE) $(CRES) $(SLIB) $(WINLIBS) $(SCLIB) +##WIN32## $(_VC_MANIFEST_EMBED_DLL) ##WIN32##$(PLIB): $(PDEF) $(PLIBS) $(PGLUE) $(PRES) $(CLIB) $(SLIB) ##WIN32## link $(WINDLLFLAGS) -def:$(PDEF) -out:$*.dll \ ##WIN32## $(PLIBS) $(PGLUE) $(PRES) $(CLIB) $(SLIB) $(WINLIBS) +##WIN32## $(_VC_MANIFEST_EMBED_DLL) ##WIN32##$(KLIB): $(KDEF) $(KLIBS) $(KGLUE) $(KRES) $(CLIB) $(SLIB) $(MITLIBS) $(DNSLIBS) ##WIN32## link $(WINDLLFLAGS) -def:$(KDEF) -out:$*.dll \ ##WIN32## $(KLIBS) $(KGLUE) $(KRES) $(CLIB) $(SLIB) $(MITLIBS) $(DNSLIBS) $(WINLIBS) $(SCLIB) +##WIN32## $(_VC_MANIFEST_EMBED_DLL) ##WIN32##$(GLIB): $(GDEF) $(GLIBS) $(GGLUE) $(GRES) $(KLIB) $(CLIB) $(SLIB) ##WIN32## link $(WINDLLFLAGS) -def:$(GDEF) -out:$*.dll \ ##WIN32## $(GLIBS) $(GGLUE) $(GRES) $(KLIB) $(CLIB) $(SLIB) $(WINLIBS) $(SCLIB) +##WIN32## $(_VC_MANIFEST_EMBED_DLL) ##WIN32##$(K4LIB): $(K4DEF) $(K4LIBS) $(K4GLUE) $(K4RES) $(KLIB) $(CLIB) $(PLIB) ##WIN32## link $(WINDLLFLAGS) -def:$(K4DEF) -out:$*.dll \ ##WIN32## $(K4LIBS) $(K4GLUE) $(K4RES) $(KLIB) $(CLIB) $(PLIB) $(WINLIBS) $(SCLIB) +##WIN32## $(_VC_MANIFEST_EMBED_DLL) ##WIN32##$(K5_GLUE): win_glue.c ##WIN32## $(CC) $(ALL_CFLAGS) $(MITFLAGS) /c /DKRB5=1 /Fo$@ $** diff --git a/src/lib/krb5/krb/gic_opt.c b/src/lib/krb5/krb/gic_opt.c index 58d07b03d..963bbc278 100644 --- a/src/lib/krb5/krb/gic_opt.c +++ b/src/lib/krb5/krb/gic_opt.c @@ -3,7 +3,7 @@ void KRB5_CALLCONV krb5_get_init_creds_opt_init(krb5_get_init_creds_opt *opt) { - opt->flags = 0; + opt->flags = KRB5_GET_INIT_CREDS_OPT_CHG_PWD_PRMPT; } void KRB5_CALLCONV @@ -63,3 +63,13 @@ krb5_get_init_creds_opt_set_salt(krb5_get_init_creds_opt *opt, krb5_data *salt) opt->flags |= KRB5_GET_INIT_CREDS_OPT_SALT; opt->salt = salt; } + +void KRB5_CALLCONV +krb5_get_init_creds_opt_set_salt(krb5_get_init_creds_opt *opt, int prompt) +{ + if (prompt) + opt->flags |= KRB5_GET_INIT_CREDS_OPT_CHG_PWD_PRMPT; + else + opt->flags &= ~KRB5_GET_INIT_CREDS_OPT_CHG_PWD_PRMPT; +} + diff --git a/src/util/windows/Makefile.in b/src/util/windows/Makefile.in index 102ae741c..f857c4667 100644 --- a/src/util/windows/Makefile.in +++ b/src/util/windows/Makefile.in @@ -4,6 +4,8 @@ all-windows:: $(OUTPRE)libecho.exe $(OUTPRE)getopt.lib $(OUTPRE)libecho.exe: $(OUTPRE)libecho.obj link -out:$@ $** $(SCLIB) + $(_VC_MANIFEST_EMBED_EXE) + $(OUTPRE)getopt.lib: $(OUTPRE)getopt.obj $(OUTPRE)getopt_long.obj lib -out:$@ $** @@ -11,4 +13,4 @@ $(OUTPRE)getopt.lib: $(OUTPRE)getopt.obj $(OUTPRE)getopt_long.obj install-windows:: clean-windows:: - $(RM) $(OUTPRE)*.res $(OUTPRE)*.map $(OUTPRE)*.obj $(OUTPRE)*.exe + $(RM) $(OUTPRE)*.res $(OUTPRE)*.map $(OUTPRE)*.obj $(OUTPRE)*.exe $(OUTPRE)*.manifest diff --git a/src/windows/cns/Makefile.in b/src/windows/cns/Makefile.in index 1e9e50ed6..bc884a3fb 100644 --- a/src/windows/cns/Makefile.in +++ b/src/windows/cns/Makefile.in @@ -55,6 +55,7 @@ all:: Makefile $(OUTPRE)$(NAME).exe $(OUTPRE)$(NAME).exe: $(NAME).def $(OBJS) $(XOBJS) $(LIBS) $(LINK) $(LFLAGS) /map:$*.map /out:$@ $(OBJS) $(XOBJS) \ $(LIBS) $(SYSLIBS) $(SCLIB) + $(_VC_MANIFEST_EMBED_EXE) install:: $(CP) $(OUTPRE)$(NAME).exe $(DESTDIR) diff --git a/src/windows/gina/Makefile.in b/src/windows/gina/Makefile.in index 2aec54469..c2f7ada19 100644 --- a/src/windows/gina/Makefile.in +++ b/src/windows/gina/Makefile.in @@ -28,6 +28,7 @@ clean-windows:: $(OUTPRE)kgina.dll: $(OBJS) $(KLIB) $(CLIB) link $(WINDLLFLAGS) -def:gina.def -out:$*.dll \ $** $(WINLIBS) $(SCLIB) + $(_VC_MANIFEST_EMBED_DLL) $(OUTPRE)ginastub.obj: ginastub.h diff --git a/src/windows/identity/config/Makefile.w32 b/src/windows/identity/config/Makefile.w32 index c66042689..8ede1dbae 100644 --- a/src/windows/identity/config/Makefile.w32 +++ b/src/windows/identity/config/Makefile.w32 @@ -324,7 +324,8 @@ MT=mt.exe -nologo _VC_MANIFEST_EMBED_EXE= \ if exist $@.manifest $(MT) -outputresource:$@;1 -manifest $@.manifest -_VC_MANIFEST_EMBED_DLL=$(_VC_MANIFEST_EMBED_EXE) +_VC_MANIFEST_EMBED_DLL= \ +if exist $@.manifest $(MT) -outputresource:$@;2 -manifest $@.manifest # Note that if you are merging manifests, then the VS generated # manifest should be cleaned up after calling _VC_MANIFEST_EMBED_???. diff --git a/src/windows/kfwlogon/Makefile.in b/src/windows/kfwlogon/Makefile.in index 03fc6e7e4..96562ec36 100644 --- a/src/windows/kfwlogon/Makefile.in +++ b/src/windows/kfwlogon/Makefile.in @@ -1,37 +1,39 @@ -# Makefile for the KFW Network Provider -# - -thisconfigdir=./.. -myfulldir=windows/nplogon -mydir=. -BUILDTOP=$(REL)..$(S).. -DEFINES = -LOCALINCLUDES = -I$(BUILDTOP) -I$(PISMERE)\athena\util\loadfuncs \ - -I$(PISMERE)\athena\auth\krb5\src\include\kerberosIV \ - -I$(PISMERE)\athena\auth\krb4\include \ - -I$(PISMERE)\athena\auth\leash\include -PROG_LIBPATH=-L$(TOPLIBD) -L$(KRB5_LIBDIR) - -SYSLIBS = kernel32.lib user32.lib advapi32.lib wsock32.lib secur32.lib userenv.lib -RFLAGS = $(LOCALINCLUDES) -RCFLAGS = $(RFLAGS) -D_WIN32 - -all-windows:: $(OUTPRE)kfwlogon.dll $(OUTPRE)kfwcpcc.exe - -$(OUTPRE)kfwlogon.res: kfwlogon.rc ..\version.rc - -$(OUTPRE)kfwcpcc.res: kfwcpcc.rc ..\version.rc - -$(OUTPRE)kfwlogon.dll: $(OUTPRE)kfwlogon.obj $(OUTPRE)kfwcommon.obj $(OUTPRE)kfwlogon.res - link $(DLL_LINKOPTS) -out:$@ $(OUTPRE)kfwlogon.obj $(OUTPRE)kfwcommon.obj -entry:DllEntryPoint -def:kfwlogon.def $(SYSLIBS) $(KLIB) $(CLIB) - -$(OUTPRE)kfwcpcc.exe: $(OUTPRE)kfwcpcc.obj $(OUTPRE)kfwcommon.obj $(OUTPRE)kfwcpcc.res - link $(EXE_LINKOPTS) -out:$@ $(OUTPRE)kfwcpcc.obj $(OUTPRE)kfwcommon.obj $(SYSLIBS) $(KLIB) $(CLIB) - -install:: - copy $(OUTPRE)kfwlogon.dll $(DESTDIR) - copy $(OUTPRE)kfwcpcc.exe $(DESTDIR) - -clean:: - $(RM) $(OUTPRE)*.exe $(OUTPRE)*.dll $(OUTPRE)*.res - +# Makefile for the KFW Network Provider +# + +thisconfigdir=./.. +myfulldir=windows/nplogon +mydir=. +BUILDTOP=$(REL)..$(S).. +DEFINES = +LOCALINCLUDES = -I$(BUILDTOP) -I$(PISMERE)\athena\util\loadfuncs \ + -I$(PISMERE)\athena\auth\krb5\src\include\kerberosIV \ + -I$(PISMERE)\athena\auth\krb4\include \ + -I$(PISMERE)\athena\auth\leash\include +PROG_LIBPATH=-L$(TOPLIBD) -L$(KRB5_LIBDIR) + +SYSLIBS = kernel32.lib user32.lib advapi32.lib wsock32.lib secur32.lib userenv.lib +RFLAGS = $(LOCALINCLUDES) +RCFLAGS = $(RFLAGS) -D_WIN32 + +all-windows:: $(OUTPRE)kfwlogon.dll $(OUTPRE)kfwcpcc.exe + +$(OUTPRE)kfwlogon.res: kfwlogon.rc ..\version.rc + +$(OUTPRE)kfwcpcc.res: kfwcpcc.rc ..\version.rc + +$(OUTPRE)kfwlogon.dll: $(OUTPRE)kfwlogon.obj $(OUTPRE)kfwcommon.obj $(OUTPRE)kfwlogon.res + link $(DLL_LINKOPTS) -out:$@ $(OUTPRE)kfwlogon.obj $(OUTPRE)kfwcommon.obj -entry:DllEntryPoint -def:kfwlogon.def $(SYSLIBS) $(KLIB) $(CLIB) + $(_VC_MANIFEST_EMBED_DLL) + +$(OUTPRE)kfwcpcc.exe: $(OUTPRE)kfwcpcc.obj $(OUTPRE)kfwcommon.obj $(OUTPRE)kfwcpcc.res + link $(EXE_LINKOPTS) -out:$@ $(OUTPRE)kfwcpcc.obj $(OUTPRE)kfwcommon.obj $(SYSLIBS) $(KLIB) $(CLIB) + $(_VC_MANIFEST_EMBED_EXE) + +install:: + copy $(OUTPRE)kfwlogon.dll $(DESTDIR) + copy $(OUTPRE)kfwcpcc.exe $(DESTDIR) + +clean:: + $(RM) $(OUTPRE)*.exe $(OUTPRE)*.dll $(OUTPRE)*.res + diff --git a/src/windows/ms2mit/Makefile.in b/src/windows/ms2mit/Makefile.in index b1275bbb4..6162eb08e 100644 --- a/src/windows/ms2mit/Makefile.in +++ b/src/windows/ms2mit/Makefile.in @@ -13,9 +13,11 @@ all-windows:: $(OUTPRE)ms2mit.exe $(OUTPRE)mit2ms.exe $(OUTPRE)ms2mit.exe: $(OUTPRE)ms2mit.obj link $(EXE_LINKOPTS) -out:$@ $(OUTPRE)ms2mit.obj $(BUILDTOP)\util\windows\$(OUTPRE)getopt.obj user32.lib advapi32.lib $(KLIB) $(CLIB) + $(_VC_MANIFEST_EMBED_EXE) $(OUTPRE)mit2ms.exe: $(OUTPRE)mit2ms.obj link $(EXE_LINKOPTS) -out:$@ $(OUTPRE)mit2ms.obj $(BUILDTOP)\util\windows\$(OUTPRE)getopt.obj user32.lib advapi32.lib $(KLIB) $(CLIB) + $(_VC_MANIFEST_EMBED_EXE) install:: copy $(OUTPRE)ms2mit.exe $(DESTDIR) diff --git a/src/windows/wintel/Makefile.in b/src/windows/wintel/Makefile.in index 0603cc4ba..1ff8f599b 100644 --- a/src/windows/wintel/Makefile.in +++ b/src/windows/wintel/Makefile.in @@ -35,6 +35,7 @@ all:: Makefile $(OUTPRE)telnet.exe $(OUTPRE)telnet.exe: telnet.def $(OBJS) $(XOBJS) $(LIBS) $(LINK) $(LFLAGS) /map:$*.map /out:$@ $(OBJS) $(XOBJS) \ $(LIBS) $(SYSLIBS) $(SCLIB) + $(_VC_MANIFEST_EMBED_EXE) install:: copy $(OUTPRE)telnet.exe $(DESTDIR) -- 2.26.2