📄 makefile
字号:
#########################
# Part 1: LOCAL DEFINITIONS
TOP = ..
EXTRA =
WARNINGS =
INCLUDES = -I$(INCLUDE_DIR) -I. $(INCLUDE_FLAGS)
LIB = libeic.a
DEP_LIBS = $(LIB_DIR)/$(LIB) $(LIB_LIST)
LIBS = -lm
#########################
# Part 2: COMMON MAKE PARAMETERS
include $(TOP)/make.proj
# Standard bourne shell doesn't update PWD on directory change.
# SHELL = /bin/ksh
#ifneq ($(PLATFORM),_SUNOS)
#ifneq ($(PLATFORM),_NETBSD)
# SHELL = /usr/bin/ksh
#else
# SHELL = /bin/ksh
#endif
#endif
#########################
# Part 3: LOCAL SOURCES
libSRCS = eicmod.c symbol.c lexer.c preproc.c parser.c starteic.c\
typemod.c typesets.c cdecl.c interpre.c emitter.c ymem.c error.c \
preexpr.c readline.c optomizer.c func.c stab.c \
callback.c reset.c
libOBJS = $(LIB)(eicmod.o) \
$(LIB)(symbol.o)\
$(LIB)(lexer.o)\
$(LIB)(error.o)\
$(LIB)(preproc.o)\
$(LIB)(parser.o)\
$(LIB)(starteic.o)\
$(LIB)(typemod.o)\
$(LIB)(typesets.o)\
$(LIB)(cdecl.o)\
$(LIB)(interpre.o)\
$(LIB)(emitter.o)\
$(LIB)(ymem.o)\
$(LIB)(preexpr.o)\
$(LIB)(readline.o) \
$(LIB)(optomizer.o)\
$(LIB)(func.o) \
$(LIB)(stab.o) \
$(LIB)(callback.o)\
$(LIB)(reset.o)\
SRCS = $(libSRCS)
#########################
# Part 4: LOCAL TARGETS
#### LIBEIC.A
$(LIB): $(libOBJS)
$(RUNLIBCMD)
lib::$(LIB)
all::$(LIB)
install::
@if [ -f $(LIB) ]; then \
echo PATH1;\
$(MAKE) lib ;\
echo $(INSTALL) $(LIB) $(LIB_DIR) ;\
$(INSTALL) $(LIB) $(LIB_DIR);\
else \
echo PATH2;\
$(MAKE) $(LIB_DIR)/$(LIB) ;\
fi
$(LIB_DIR)/$(LIB): $(addprefix $(LIB_DIR)/,$(libOBJS))
echo $(MAKE) $(LIB_DIR)/$(LIB)
$(RUNLIBCMD)
clobber::
$(RM) $(LIB_DIR)/$(LIB) $(LIB)
clean::
####
### STARTUP.H
all::
install:: $(INCLUDE_DIR)/starteic.h
$(INCLUDE_DIR)/starteic.h:starteic.src
$(COPY) starteic.src $(INCLUDE_DIR)/starteic.h
clobber::
$(RM) $(INCLUDE_DIR)/starteic.h
clean::
####
####### HEADERS
HEADERS = eic.h xalloc.h eicval.h
instH: $(HEADERS)
echo $(INCLUDE_DIR)
$(COPY) $? $(INCLUDE_DIR)
$(DUMMY_TARGET)
headers:: instH
install:: instH
clobber::
@for i in $(HEADERS) ;\
do \
echo $(RM) $(INCLUDE_DIR)/$$i;\
$(RM) $(INCLUDE_DIR)/$$i;\
done
$(RM) instH
clean::
####
### EiC
eic::install
eic::
cd ../main ; $(MAKE) install
#########################
# Part 5: COMMON RULES and
# and default Targets
include $(CONFIG_DIR)/make.rules
#########################
# Part 6: DEPENDENCIES
$(LIB_DIR)/$(LIB)(eicmod.o): eicmod.c typemod.h global.h datastruct.h stab.h \
$(TOP)/include/eicval.h lexer.h func.h \
$(TOP)/include/xalloc.h typesets.h preproc.h cdecl.h \
error.h emitter.h symbol.h
$(LIB_DIR)/$(LIB)(symbol.o): symbol.c typemod.h MachSet.h global.h datastruct.h stab.h \
$(TOP)/include/eicval.h lexer.h \
$(TOP)/include/xalloc.h preproc.h symbol.h
$(LIB_DIR)/$(LIB)(lexer.o): lexer.c global.h typemod.h datastruct.h stab.h \
$(TOP)/include/eicval.h \
$(TOP)/include/xalloc.h error.h symbol.h lexer.h
$(LIB_DIR)/$(LIB)(preproc.o): preproc.c stab.h global.h typemod.h datastruct.h \
$(TOP)/include/eicval.h \
$(TOP)/include/xalloc.h preproc.h symbol.h
$(LIB_DIR)/$(LIB)(parser.o): parser.c MachSet.h global.h typemod.h datastruct.h stab.h \
$(TOP)/include/eicval.h lexer.h func.h \
$(TOP)/include/xalloc.h typesets.h cdecl.h error.h \
symbol.h
$(LIB_DIR)/$(LIB)(starteic.o): starteic.c MachSet.h global.h typemod.h datastruct.h \
stab.h $(TOP)/include/eicval.h lexer.h func.h \
$(TOP)/include/xalloc.h preproc.h emitter.h parser.h \
symbol.h
$(LIB_DIR)/$(LIB)(typemod.o): typemod.c global.h typemod.h datastruct.h stab.h \
$(TOP)/include/eicval.h func.h \
$(TOP)/include/xalloc.h metric.h
$(LIB_DIR)/$(LIB)(typesets.o): typesets.c MachSet.h global.h typemod.h datastruct.h \
stab.h $(TOP)/include/eicval.h lexer.h \
$(TOP)/include/xalloc.h typesets.h symbol.h error.h
$(LIB_DIR)/$(LIB)(cdecl.o): cdecl.c MachSet.h global.h typemod.h datastruct.h stab.h \
$(TOP)/include/eicval.h lexer.h func.h \
$(TOP)/include/xalloc.h cdecl.h preproc.h error.h \
typesets.h parser.h symbol.h
$(LIB_DIR)/$(LIB)(interpre.o): interpre.c MachSet.h global.h typemod.h datastruct.h \
stab.h $(TOP)/include/eicval.h \
$(TOP)/include/xalloc.h symbol.h
$(LIB_DIR)/$(LIB)(emitter.o): emitter.c MachSet.h global.h typemod.h datastruct.h stab.h \
$(TOP)/include/eicval.h
$(LIB_DIR)/$(LIB)(ymem.o): ymem.c $(TOP)/include/xalloc.h assertp.h \
global.h typemod.h datastruct.h stab.h \
$(TOP)/include/eicval.h
$(LIB_DIR)/$(LIB)(error.o): error.c global.h typemod.h datastruct.h stab.h \
$(TOP)/include/eicval.h lexer.h \
$(TOP)/include/xalloc.h preproc.h error.h
$(LIB_DIR)/$(LIB)(preexpr.o): preexpr.c $(TOP)/include/xalloc.h \
preproc.h
$(LIB_DIR)/$(LIB)(readline.o): readline.c
$(LIB_DIR)/$(LIB)(optomizer.o): optomizer.c MachSet.h global.h typemod.h datastruct.h \
stab.h $(TOP)/include/eicval.h typesets.h error.h
$(LIB_DIR)/$(LIB)(func.o): func.c global.h typemod.h datastruct.h stab.h \
$(TOP)/include/eicval.h func.h \
$(TOP)/include/xalloc.h error.h symbol.h
$(LIB_DIR)/$(LIB)(stab.o): stab.c $(TOP)/include/xalloc.h stab.h
$(LIB_DIR)/$(LIB)(callback.o): callback.c MachSet.h global.h typemod.h datastruct.h \
stab.h $(TOP)/include/eicval.h func.h \
$(TOP)/include/xalloc.h typesets.h error.h symbol.h \
preproc.h $(TOP)/include/eic.h
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -