⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile

📁 这是整套横扫千军3D版游戏的源码
💻
字号:
######################################################
# You should not need to change anything in this file
# See the Makefile.common file
######################################################

include Makefile.common
include Makefile.libm_objects

ifdef MINGDIR
EXE_SUFFIX=.exe
else
EXE_SUFFIX=
endif

ifdef STREFLOP_SOFT
USE_SOFT_BINARY=SoftFloatWrapperSimple.o SoftFloatWrapperDouble.o SoftFloatWrapperExtended.o softfloat/softfloat.o
else
USE_SOFT_BINARY=
endif

TARGETS = libm/flt-target
LIBM_OBJECTS = $(flt-32-objects)

all: streflop.a

Random.o: Random.cpp Random.h Makefile FPUSettings.h SMath.h streflop.h
	$(CXX) -c $(CXXFLAGS) $(CPPFLAGS) Random.cpp -o Random.o

SMath.o: SMath.cpp SMath.h Makefile FPUSettings.h streflop.h
	$(CXX) -c $(CXXFLAGS) $(CPPFLAGS) SMath.cpp -o SMath.o

SoftFloatWrapperSimple.o: SoftFloatWrapper.cpp SoftFloatWrapper.h Makefile FPUSettings.h streflop.h
	$(CXX) -c $(CXXFLAGS) $(CPPFLAGS) -DN_SPECIALIZED=32 SoftFloatWrapper.cpp -o $@

SoftFloatWrapperDouble.o: SoftFloatWrapper.cpp SoftFloatWrapper.h Makefile FPUSettings.h streflop.h
	$(CXX) -c $(CXXFLAGS) $(CPPFLAGS) -DN_SPECIALIZED=64 SoftFloatWrapper.cpp -o $@

SoftFloatWrapperExtended.o: SoftFloatWrapper.cpp SoftFloatWrapper.h Makefile FPUSettings.h streflop.h
	$(CXX) -c $(CXXFLAGS) $(CPPFLAGS) -DN_SPECIALIZED=96 SoftFloatWrapper.cpp -o $@

streflop.a: SMath.o Random.o ${USE_SOFT_BINARY}
	$(MAKE) -C libm
	@rm -f streflop.a
# just link twice, there are too much issues in attempting a platform independent copy...
# (or rather, detecting the platform)
ifeq (i586-mingw32msvc-gcc,$(findstring i586-mingw32msvc-gcc,$(CC)))
	i586-mingw32msvc-ar rs streflop.a $(LIBM_OBJECTS) SMath.o Random.o ${USE_SOFT_BINARY}
	i586-mingw32msvc-ar rs libstreflop.a $(LIBM_OBJECTS) SMath.o Random.o ${USE_SOFT_BINARY}
else
	ar rs streflop.a $(LIBM_OBJECTS) SMath.o Random.o ${USE_SOFT_BINARY}
	ar rs libstreflop.a $(LIBM_OBJECTS) SMath.o Random.o ${USE_SOFT_BINARY}
endif

arithmeticTest$(EXE_SUFFIX): arithmeticTest.cpp streflop.a
	$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) arithmeticTest.cpp streflop.a -o $@

randomTest$(EXE_SUFFIX): randomTest.cpp streflop.a
	$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) randomTest.cpp streflop.a -o $@

.PHONY : clean package
clean:
	-rm -f *.o streflop.a libstreflop.a arithmeticTest$(EXE_SUFFIX) randomTest$(EXE_SUFFIX) ${USE_SOFT_BINARY}
	$(MAKE) -C libm clean


# Prepare source files, so it's possible to make a package even when the directory is cluttered

LIBM_STREFLOP = libm/import.pl libm/Makefile libm/streflop_libm_bridge.h libm/README.txt libm/e_expf.c libm/w_expf.c

SOFTFLOAT_STREFLOP = softfloat/milieu.h softfloat/softfloat.h softfloat/SoftFloat-README.txt softfloat/SoftFloat.txt softfloat/README.txt softfloat/SoftFloat-history.txt softfloat/SoftFloat-source.txt softfloat/softfloat.cpp softfloat/softfloat-macros softfloat/softfloat-specialize

BASE_STREFLOP = arithmeticTest.cpp randomTest.cpp FPUSettings.h IntegerTypes.h LGPL.txt Makefile Makefile.common Makefile.libm_objects SMath.cpp SMath.h Random.cpp Random.h README.txt SoftFloatWrapper.cpp SoftFloatWrapper.h streflop.h System.h X87DenormalSquasher.h

# Tar only once for both archive formats
package:
	@echo "preparing temporary subdir streflop-$(STREFLOP_VERSION)"
	@rm -rf streflop-$(STREFLOP_VERSION)
	@mkdir streflop-$(STREFLOP_VERSION)
	@echo "use tar to create subdirs"
	@tar cf - $(BASE_STREFLOP) $(SOFTFLOAT_STREFLOP) $(LIBM_STREFLOP) $(libm-src) | tar xf - -C streflop-$(STREFLOP_VERSION)
	@echo $(STREFLOP_VERSION) > streflop-$(STREFLOP_VERSION)/VERSION.txt
	@echo "use tar again to create package, with full directory name included"
	@tar cf streflop-$(STREFLOP_VERSION).tar streflop-$(STREFLOP_VERSION)
	@echo "remove temporary directory"
	@rm -rf streflop-$(STREFLOP_VERSION)
	@echo "make best gzip archive"
	@cat streflop-$(STREFLOP_VERSION).tar | gzip --best > streflop-$(STREFLOP_VERSION).tar.gz
	@echo "convert tar to bz2"
	@bzip2 -f streflop-$(STREFLOP_VERSION).tar


# debug rules

arithmeticTest_x870$(EXE_SUFFIX): arithmeticTest.cpp
	$(CXX) $(CXXFLAGS) -DSTREFLOP_X87=1 $(LDFLAGS) arithmeticTest.cpp streflop_x870.a -o $@

arithmeticTest_soft0$(EXE_SUFFIX): arithmeticTest.cpp
	$(CXX) $(CXXFLAGS) -DSTREFLOP_SOFT=1 $(LDFLAGS) arithmeticTest.cpp streflop_soft0.a -o $@

%.hex : %.bin
	hexdump -C $< > $@

⌨️ 快捷键说明

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