%{header_in} ### Aliases for Common Programs AR = %{ar_command} COPY = copy CD = @cd ECHO = @echo INSTALL = %{install_cmd_exec} INSTALL_CMD = %{install_cmd_exec} MKDIR = @md MKDIR_INSTALL = @md RM = @del /Q RM_R = $(RM) /S RMDIR = @rmdir ### File Lists APP = %{app_prefix}botan TEST = %{app_prefix}botan-test LIBOBJS = %{lib_objs} APPOBJS = %{app_objs} TESTOBJS = %{test_objs} LIBNAME = botan LIBRARIES = $(BOTAN_LIB) # This will be either a static lib or the DLL import lib BOTAN_LIB = $(LIBNAME).%{static_suffix} all: $(APP) $(TEST) # Build Commands %{lib_build_cmds} %{app_build_cmds} %{test_build_cmds} # Link Commands $(APP): $(LIBRARIES) $(APPOBJS) $(CXX) /Fe$@ $(APPOBJS) $(BOTAN_LIB) $(LINK_TO) $(TEST): $(LIBRARIES) $(TESTOBJS) $(CXX) /Fe$@ $(TESTOBJS) $(BOTAN_LIB) $(LINK_TO) $(BOTAN_LIB): $(LIBOBJS) !If "$(SO_OBJ_FLAGS)" == "" $(AR) /OUT:$(BOTAN_LIB) $(LIBOBJS) !Else $(LIB_LINK_CMD) /Fe$(LIBNAME) $(LIBOBJS) $(LINK_TO) !Endif %{python_in} # Fake Targets SPHINX_CONFIG = %{sphinx_config_dir} SPHINX_OPTS = -b html docs: %{build_doc_commands} clean: $(RM) %{build_dir}\lib\* %{build_dir}\tests\* $(RM) *.manifest *.exp *.dll $(RM) $(LIBRARIES) $(APP) $(TEST) distclean: clean $(RM_R) %{build_dir} $(RMDIR) %{build_dir}\include\botan\internal $(RMDIR) %{build_dir}\include\botan $(RMDIR) %{build_dir}\include $(RMDIR) %{build_dir}\lib %{build_dir}\tests $(RMDIR) %{build_dir} $(RM) Makefile $(LIBNAME).* $(APP).* install: $(LIBRARIES) docs -$(MKDIR) $(DESTDIR)\include\botan $(INSTALL_CMD) botan.* $(DESTDIR) $(INSTALL_CMD) build\include\botan\*.h $(DESTDIR)\include\botan