📄 makefile.development
字号:
## File: Makefile.development# Author: The SRI DECIPHER (TM) System# Date: Thu Dec 17 13:44:23 1992## Description:# This is the makefile for developing a new application# using the DECIPHER System.## To use this makefile:## 0). Make sure you have your SRILM environment variable# set correctly. ## 1). Make a development directory (e.g. "~user/dev/src") and# then move to it:## prompt% mkdir -p ~user/dev/src# prompt% cd ~user/dev/src## 2). Copy this file to your development directory:## prompt% cp $SRILM/common/Makefile.development Makefile## 3). Create the directories for object and binary files:## prompt% gnumake init## 4). Update the list of libraries to reflect those needed to link# your program. If it comes from a module directory, use the# module Makefile as a guide. Note that order is important in# this list.## 5). Build your application, using the released versions of the # SRILM libraries:## - Create your application "main()" file, e.g. "app-main.cc".# - Replace the line "PROGRAM_NAMES = none" with# "PROGRAM_NAMES = app-main" to "Makefile". (Note:# You can have multiple programs defined here, as long# as each one has a single file, named "<ProgramName>.cc"# which provides its "main()" function.)# - Build your application with "gnumake".## 6). To replace the released versions of files in the SRILM# libraries with your own modified versions, copy the# files to your development directory and then add each# new source file to the "REPLACEMENT_SOURCES" definition.# Do a "gnumake depend" on each type of machine, and then # remake your application with "gnumake".## 7). (Optional) After you have debugged your modifications, have# them merged into the main SRILM System in "$SRILM".## Copyright (c) 1995-2001 SRI International. All Rights Reserved.## $Header: /home/srilm/devel/common/RCS/Makefile.development,v 1.13 2006/01/09 22:47:37 stolcke Exp $##MACHINE_TYPE := $(shell $(DECIPHER)/bin/machine-type)# Include common SRILM variable definitions.include $(SRILM)/common/Makefile.common.variables# Define variables.# Application variables.PROGRAM_NAMES = fill-inPROGRAM_SOURCES = $(foreach prog,$(PROGRAM_NAMES),\ $(wildcard $(SRCDIR)/$(prog).c) \ $(wildcard $(SRCDIR)/$(prog).cc))PROGRAM_OBJECTS = $(PROGRAM_NAMES:%=$(OBJDIR)/%$(OBJ_SUFFIX))PROGRAMS = $(PROGRAM_NAMES:%=$(BINDIR)/%$(EXE_SUFFIX))# Replacement files currently under development.# XXX -- Files listed as REPLACEMENT_SOURCES must have $(SRCDIR) prepended!# i.e. They should look like:# REPLACEMENT_SOURCES = $(SRCDIR)/my_source.ccREPLACEMENT_SOURCES = $(SRCDIR)/fill-in.ccREPLACEMENT_OBJECTS = $(patsubst $(SRCDIR)/%.cc,$(OBJDIR)/%$(OBJ_SUFFIX),\ $(patsubst $(SRCDIR)/%.c,$(OBJDIR)/%$(OBJ_SUFFIX),$(REPLACEMENT_SOURCES)))# Standard SRILM libraries.LIBRARIES = \ $(SRILM_LIBDIR)/$(LIB_PREFIX)lm$(LIB_SUFFIX) \ $(SRILM_LIBDIR)/$(LIB_PREFIX)dstruct$(LIB_SUFFIX) \ $(SRILM_LIBDIR)/$(LIB_PREFIX)misc$(LIB_SUFFIX) \ $(ADDITIONAL_LIBRARIES)# All files variables.ALL_SOURCES = $(PROGRAM_SOURCES) \ $(REPLACEMENT_SOURCES)ALL_OBJECTS = $(PROGRAM_OBJECTS) \ $(REPLACEMENT_OBJECTS)ALL_PROGRAMS = $(PROGRAMS)ALL_PROGRAM_NAMES = $(PROGRAM_NAMES)# Define targets.all: $(PROGRAMS)$(PROGRAMS): $(REPLACEMENT_OBJECTS) $(LIBRARIES) $(LINK.cc) $(LD_OUTPUT_OPTION) $(@:$(BINDIR)/%=$(OBJDIR)/%$(OBJ_SUFFIX)) $(REPLACEMENT_OBJECTS) $(LIBRARIES) $(DEMANGLE_FILTER)# Include common SRILM target definitions.include $(SRILM)/common/Makefile.common.targets
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -