makefile.gcc

来自「java 反射机制详解示例,实现类属性及方法修改」· GCC 代码 · 共 50 行

GCC
50
字号
CC=g++
CCFLAGS= -c -g
LD=$(CC)
LDFLAGS= -g
LDOUT=-o
AR=ar
ARFLAGS=-cru
AROUT=

OBJEXT=.o
EXEEXT=
LIBEXT=.a
LIBPREF=lib

RTTI_INCS = class.h field.h type.h method.h reflect.h

RTTI_TESTS = testrtti$(EXEEXT)

all: $(LIBPREF)reflect$(LIBEXT) $(RTTI_TESTS)


class$(OBJEXT): class.cpp $(RTTI_INCS) 
	$(CC) $(CCFLAGS) class.cpp

reflect$(OBJEXT): reflect.cpp $(RTTI_INCS) 
	$(CC) $(CCFLAGS) reflect.cpp

type$(OBJEXT): type.cpp $(RTTI_INCS) 
	$(CC) $(CCFLAGS) type.cpp

$(LIBPREF)reflect$(LIBEXT): class$(OBJEXT) reflect$(OBJEXT) type$(OBJEXT) 
	$(AR) $(ARFLAGS) $(AROUT)$(LIBPREF)reflect$(LIBEXT) class$(OBJEXT) reflect$(OBJEXT) type$(OBJEXT) 

testrtti$(OBJEXT): tests/testrtti.cpp $(RTTI_INCS) typedecl.h
	$(CC) $(CCFLAGS) -I. tests/testrtti.cpp


testrtti$(EXEEXT): testrtti$(OBJEXT) $(LIBPREF)reflect$(LIBEXT)
	$(LD) $(LDFLAGS) $(LDOUT)testrtti$(EXEEXT)  testrtti$(OBJEXT) $(LIBPREF)reflect$(LIBEXT)



clean:
	rm -f *$(OBJEXT) testrtti$(EXEEXT) $(LIBPREF)reflect$(LIBEXT) *~ core tests/*~
	cd bfd; make clean

tgz: clean
	cd ..; tar cvzf reflect.tgz cppreflection

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?