########################################################################### # # Norway standard makefile for: admin # Copyright (c) 1995 - Wang Labratories # ########################################################################### NAME = oiadm400 TARGET = $(NAME).dll ########################################################################### # # Include wang.mak to get common code. # ########################################################################### !INCLUDE ..\include\wang.mak ########################################################################### # # Set up standard targets. The default target builds the target for this # module (a .dll, .ocx, etc). The other targets are used by the system # build procedures. # ########################################################################### all: mktmpdirs $(OBJDIRSL)$(NAME).DLL lib: mktmpdirs $(OBJDIRSL)$(NAME).lib bin: mktmpdirs $(OBJDIRSL)$(NAME).dll installlib: lib copy $(OBJDIRSL)$(NAME).lib $(INSTALLLIB) copy $(OBJDIRSL)$(NAME).exp $(INSTALLLIB) installbin: bin copy $(OBJDIRSL)$(NAME).dll $(INSTALLLIB) !IF "$(RELBLD)" == "" copy $(OBJDIRSL)$(NAME).pdb $(INSTALLLIB) !ENDIF cleanall: -del $(OBJDIRSL)*.obj -del $(OBJDIRSL)*.lib -del $(OBJDIRSL)*.dll -del $(OBJDIRSL)*.pch -del $(OBJDIRSL)*.exp -del $(OBJDIRSL)*.res -del $(OBJDIRSL)*.ilk -del $(OBJDIRSL)*.pdb -del $(OBJDIRSL)*.map mktmpdirs: !IF "$(MS_BUILD)" != "" -mkdir $(OBJDIR) -mkdir $(INSTALLLIB) !ENDIF ########################################################################### # # File Definitions: All relevant files are listed here. # ########################################################################### OBJ_NO_PCH = $(OBJDIRSL)admnmain.obj OBJ_MAKE_PCH = $(OBJDIRSL)cepfrmat.obj OBJ_USE_PCH = $(OBJDIRSL)initload.obj \ $(OBJDIRSL)noui.obj \ $(OBJDIRSL)scntmplt.obj OBJ_FILES = $(OBJ_NO_PCH) $(OBJ_MAKE_PCH) $(OBJ_USE_PCH) RES_FILES = $(OBJDIRSL)$(NAME).res PCH_BASE = pvadm.h PCH_FILE = pvadm.pch HDRS = $(PCH_BASE) \ $(I)\engdisp.h \ $(I)\oiadm.h \ $(I)\oidisp.h \ $(I)\oierror.h \ $(I)\oifile.h \ $(I)\oiprt.h \ $(I)\stringid.h \ $(I)\dllnames.h \ $(I)\engadm.h SYSTEM_LIBS = $(SYSTEM_LIBS_DOR) \ user32.lib \ gdi32.lib \ kernel32.lib \ advapi32.lib OUR_LIBS_DEP = $(L)\oidis400.lib \ $(L)\oiprt400.lib OUR_LIBS = oidis400.lib \ oiprt400.lib LIBS = $(SYSTEM_LIBS) $(OUR_LIBS) ########################################################################### # # Flags which differ for debugging vs. release builds. In all cases, # we use the standard macro name, suffixed by _DOR (Debug Or Release). # ########################################################################### !IF "$(RELBLD)" == "" !MESSAGE Debugging Build CFLAGS_DOR = /Zi /Od CDEFINES_DOR = /D"_DEBUG" SYSTEM_LIBS_DOR = LFLAGS_DOR = /DEBUG /DEBUGTYPE:cv LIBFLAGS_DOR = /DEBUGTYPE:cv RC_FLAGS_DOR = /d_DEBUG MTL_FLAGS_DOR = /Zi MAPFILE_DOR = /map:$(OBJDIRSL)$(NAME).map !ELSE !MESSAGE Release Build CFLAGS_DOR = /O2 CDEFINES_DOR = /D"NDEBUG" SYSTEM_LIBS_DOR = LFLAGS_DOR = LIBFLAGS_DOR = RC_FLAGS_DOR = /dNDEBUG MTL_FLAGS_DOR = MAPFILE_DOR = !ENDIF ########################################################################### # # Flags for compilation, resource file processing, and linking # ########################################################################### CFLAGS = /c /W3 /WX /MD /nologo $(CFLAGS_DOR) $(CpuOptFlags) CDEFINES = /D"STRICT" /D"_WINDOWS" /D"WIN32" /D"_MBCS" $(CDEFINES_DOR) CFILESPEC = $(OBJOUTPUT) /Fp$(OBJDIRSL)$(PCH_FILE) /Fd$(OBJDIRSL)$(NAME).pdb LFLAGS = /DLL /NOLOGO /SUBSYSTEM:windows,4.0 $(LFLAGS_DOR) LIBFLAGS = /NOLOGO $(LIBFLAGS_DOR) RC_FLAGS = /r /d, /dWIN32 $(RC_FLAGS_DOR) /Fo $(RES_FILES) MTL_FLAGS = /DIS_32 /c /W3 /nologo $(MTL_FLAGS_DOR) MAPFILE = $(MAPFILE_DOR) !ifndef VERMAINT # This must be numeric! VERMAINT=88 !endif !ifndef VERDEV # This must be numeric! VERDEV=888 !endif ########################################################################### # # Transformation Rules # ########################################################################### # DON'T use precompiled header for $(OBJ_NO_PCH)! # $(OBJ_NO_PCH) alters the functionality of the header files. $(OBJ_NO_PCH): $(*B).c $(HDRS) cl $(CFLAGS) $(CDEFINES) $(CFILESPEC) $(*B).c $(OBJ_MAKE_PCH): $(*B).c $(HDRS) $(OBJ_NO_PCH) cl $(CFLAGS) $(CDEFINES) -Yc$(PCH_BASE) $(CFILESPEC) $(*B).c $(OBJ_USE_PCH): $(OBJ_MAKE_PCH) $(*B).c cl $(CFLAGS) $(CDEFINES) -Yu$(PCH_BASE) $(CFILESPEC) $(*B).c $(RES_FILES): $(*B).rc $(HDRS) rc $(RC_FLAGS) $(NAME).rc $(OBJDIRSL)$(NAME).dll: $(RES_FILES) $(NAME).def $(OUR_LIBS_DEP) \ $(OBJ_FILES) $(OBJDIRSL)$(NAME).lib link @<< $(LFLAGS) /out:$(OBJDIRSL)$(NAME).dll $(OBJDIRSL)$(NAME).exp $(OBJ_FILES) $(MAPFILE) $(RES_FILES) $(LIBS) << $(OBJDIRSL)$(NAME).lib: $(OBJDIRSL)$(NAME).res $(NAME).def $(OBJ_FILES) makefile lib @<< /def:$(NAME).def $(LIBFLAGS) /out:$(OBJDIRSL)$(NAME).lib $(OBJ_FILES) << $(PROJ).bsc: $(SBRS) bscmake /o$(NAME).bsc $(SBRS)