LEVEL = ../../..

include $(LEVEL)/Makefile.config

PROG = 7zip-benchmark
RUN_OPTIONS = b

CFLAGS += -DBREAK_HANDLER -DUNICODE -D_UNICODE -I$(PROJ_SRC_DIR)/C \
	        -I$(PROJ_SRC_DIR)/CPP/myWindows -I$(PROJ_SRC_DIR)/CPP/include_windows \
          -I$(PROJ_SRC_DIR)/CPP -I. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE \
					-DNDEBUG -D_REENTRANT -DENV_UNIX -D_7ZIP_LARGE_PAGES -pthread

CXXFLAGS += -std=gnu++98 -DBREAK_HANDLER -DUNICODE -D_UNICODE -I$(PROJ_SRC_DIR)/C \
	        -I$(PROJ_SRC_DIR)/CPP/myWindows -I$(PROJ_SRC_DIR)/CPP/include_windows \
          -I$(PROJ_SRC_DIR)/CPP -I. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE \
					-DNDEBUG -D_REENTRANT -DENV_UNIX -D_7ZIP_LARGE_PAGES -pthread

LDFLAGS = -lstdc++ -pthread

Source = \
CPP/myWindows/myGetTickCount.cpp \
CPP/myWindows/wine_date_and_time.cpp \
CPP/myWindows/myAddExeFlag.cpp  \
CPP/myWindows/mySplitCommandLine.cpp \
CPP/7zip/UI/Console/BenchCon.cpp \
CPP/7zip/UI/Console/ConsoleClose.cpp \
CPP/7zip/UI/Console/ExtractCallbackConsole.cpp \
CPP/7zip/UI/Console/List.cpp \
CPP/7zip/UI/Console/Main.cpp \
CPP/7zip/UI/Console/MainAr.cpp \
CPP/7zip/UI/Console/OpenCallbackConsole.cpp \
CPP/7zip/UI/Console/PercentPrinter.cpp \
CPP/7zip/UI/Console/UpdateCallbackConsole.cpp \
CPP/7zip/UI/Console/UserInputUtils.cpp \
CPP/Common/CommandLineParser.cpp \
CPP/Common/CRC.cpp \
CPP/Common/IntToString.cpp \
CPP/Common/ListFileUtils.cpp \
CPP/Common/StdInStream.cpp \
CPP/Common/StdOutStream.cpp \
CPP/Common/MyString.cpp \
CPP/Common/StringConvert.cpp \
CPP/Common/StringToInt.cpp \
CPP/Common/UTFConvert.cpp \
CPP/Common/MyWindows.cpp \
CPP/Common/MyVector.cpp \
CPP/Common/Wildcard.cpp \
CPP/Windows/Error.cpp \
CPP/Windows/FileDir.cpp \
CPP/Windows/FileFind.cpp \
CPP/Windows/FileIO.cpp \
CPP/Windows/FileName.cpp \
CPP/Windows/PropVariant.cpp \
CPP/Windows/PropVariantConversions.cpp \
CPP/Windows/Synchronization.cpp \
CPP/Windows/System.cpp \
CPP/Windows/Time.cpp \
CPP/7zip/Common/CreateCoder.cpp \
CPP/7zip/Common/CWrappers.cpp \
CPP/7zip/Common/FilePathAutoRename.cpp \
CPP/7zip/Common/FileStreams.cpp \
CPP/7zip/Common/FilterCoder.cpp \
CPP/7zip/Common/InBuffer.cpp \
CPP/7zip/Common/InOutTempBuffer.cpp \
CPP/7zip/Common/LimitedStreams.cpp \
CPP/7zip/Common/LockedStream.cpp \
CPP/7zip/Common/MemBlocks.cpp \
CPP/7zip/Common/MethodId.cpp \
CPP/7zip/Common/MethodProps.cpp \
CPP/7zip/Common/OffsetStream.cpp \
CPP/7zip/Common/OutBuffer.cpp \
CPP/7zip/Common/OutMemStream.cpp \
CPP/7zip/Common/ProgressMt.cpp \
CPP/7zip/Common/ProgressUtils.cpp \
CPP/7zip/Common/StreamBinder.cpp \
CPP/7zip/Common/StreamObjects.cpp \
CPP/7zip/Common/StreamUtils.cpp \
CPP/7zip/Common/VirtThread.cpp \
CPP/7zip/UI/Common/ArchiveCommandLine.cpp \
CPP/7zip/UI/Common/ArchiveExtractCallback.cpp \
CPP/7zip/UI/Common/ArchiveOpenCallback.cpp \
CPP/7zip/UI/Common/Bench.cpp \
CPP/7zip/UI/Common/DefaultName.cpp \
CPP/7zip/UI/Common/EnumDirItems.cpp \
CPP/7zip/UI/Common/Extract.cpp \
CPP/7zip/UI/Common/ExtractingFilePath.cpp \
CPP/7zip/UI/Common/LoadCodecs.cpp \
CPP/7zip/UI/Common/OpenArchive.cpp \
CPP/7zip/UI/Common/PropIDUtils.cpp \
CPP/7zip/UI/Common/SetProperties.cpp \
CPP/7zip/UI/Common/SortUtils.cpp \
CPP/7zip/UI/Common/TempFiles.cpp \
CPP/7zip/UI/Common/Update.cpp \
CPP/7zip/UI/Common/UpdateAction.cpp \
CPP/7zip/UI/Common/UpdateCallback.cpp \
CPP/7zip/UI/Common/UpdatePair.cpp \
CPP/7zip/UI/Common/UpdateProduce.cpp \
CPP/7zip/Archive/Bz2Handler.cpp \
CPP/7zip/Archive/DeflateProps.cpp \
CPP/7zip/Archive/GzHandler.cpp \
CPP/7zip/Archive/LzmaHandler.cpp \
CPP/7zip/Archive/PpmdHandler.cpp \
CPP/7zip/Archive/SplitHandler.cpp \
CPP/7zip/Archive/XzHandler.cpp \
CPP/7zip/Archive/ZHandler.cpp \
CPP/7zip/Archive/Common/CoderMixer2.cpp \
CPP/7zip/Archive/Common/CoderMixer2MT.cpp \
CPP/7zip/Archive/Common/CrossThreadProgress.cpp \
CPP/7zip/Archive/Common/DummyOutStream.cpp \
CPP/7zip/Archive/Common/FindSignature.cpp \
CPP/7zip/Archive/Common/HandlerOut.cpp \
CPP/7zip/Archive/Common/InStreamWithCRC.cpp \
CPP/7zip/Archive/Common/ItemNameUtils.cpp \
CPP/7zip/Archive/Common/MultiStream.cpp \
CPP/7zip/Archive/Common/OutStreamWithCRC.cpp \
CPP/7zip/Archive/Common/ParseProperties.cpp \
CPP/7zip/Archive/7z/7zCompressionMode.cpp \
CPP/7zip/Archive/7z/7zDecode.cpp \
CPP/7zip/Archive/7z/7zEncode.cpp \
CPP/7zip/Archive/7z/7zExtract.cpp \
CPP/7zip/Archive/7z/7zFolderInStream.cpp \
CPP/7zip/Archive/7z/7zFolderOutStream.cpp \
CPP/7zip/Archive/7z/7zHandler.cpp \
CPP/7zip/Archive/7z/7zHandlerOut.cpp \
CPP/7zip/Archive/7z/7zHeader.cpp \
CPP/7zip/Archive/7z/7zIn.cpp \
CPP/7zip/Archive/7z/7zOut.cpp \
CPP/7zip/Archive/7z/7zProperties.cpp \
CPP/7zip/Archive/7z/7zSpecStream.cpp \
CPP/7zip/Archive/7z/7zUpdate.cpp \
CPP/7zip/Archive/7z/7zRegister.cpp \
CPP/7zip/Archive/Cab/CabBlockInStream.cpp \
CPP/7zip/Archive/Cab/CabHandler.cpp \
CPP/7zip/Archive/Cab/CabHeader.cpp \
CPP/7zip/Archive/Cab/CabIn.cpp \
CPP/7zip/Archive/Cab/CabRegister.cpp \
CPP/7zip/Archive/Tar/TarHandler.cpp \
CPP/7zip/Archive/Tar/TarHandlerOut.cpp \
CPP/7zip/Archive/Tar/TarHeader.cpp \
CPP/7zip/Archive/Tar/TarIn.cpp \
CPP/7zip/Archive/Tar/TarOut.cpp \
CPP/7zip/Archive/Tar/TarUpdate.cpp \
CPP/7zip/Archive/Tar/TarRegister.cpp \
CPP/7zip/Archive/Zip/ZipAddCommon.cpp \
CPP/7zip/Archive/Zip/ZipHandler.cpp \
CPP/7zip/Archive/Zip/ZipHandlerOut.cpp \
CPP/7zip/Archive/Zip/ZipHeader.cpp \
CPP/7zip/Archive/Zip/ZipIn.cpp \
CPP/7zip/Archive/Zip/ZipItem.cpp \
CPP/7zip/Archive/Zip/ZipOut.cpp \
CPP/7zip/Archive/Zip/ZipUpdate.cpp \
CPP/7zip/Archive/Zip/ZipRegister.cpp \
CPP/7zip/Compress/Bcj2Coder.cpp \
CPP/7zip/Compress/Bcj2Register.cpp \
CPP/7zip/Compress/BcjCoder.cpp \
CPP/7zip/Compress/BcjRegister.cpp \
CPP/7zip/Compress/BitlDecoder.cpp \
CPP/7zip/Compress/BranchCoder.cpp \
CPP/7zip/Compress/BranchMisc.cpp \
CPP/7zip/Compress/BranchRegister.cpp \
CPP/7zip/Compress/ByteSwap.cpp \
CPP/7zip/Compress/BZip2Crc.cpp \
CPP/7zip/Compress/BZip2Decoder.cpp \
CPP/7zip/Compress/BZip2Encoder.cpp \
CPP/7zip/Compress/BZip2Register.cpp \
CPP/7zip/Compress/CopyCoder.cpp \
CPP/7zip/Compress/CopyRegister.cpp \
CPP/7zip/Compress/Deflate64Register.cpp \
CPP/7zip/Compress/DeflateDecoder.cpp \
CPP/7zip/Compress/DeflateEncoder.cpp \
CPP/7zip/Compress/DeflateRegister.cpp \
CPP/7zip/Compress/DeltaFilter.cpp \
CPP/7zip/Compress/ImplodeDecoder.cpp \
CPP/7zip/Compress/ImplodeHuffmanDecoder.cpp \
CPP/7zip/Compress/Lzma2Decoder.cpp \
CPP/7zip/Compress/Lzma2Encoder.cpp \
CPP/7zip/Compress/Lzma2Register.cpp \
CPP/7zip/Compress/LzmaDecoder.cpp \
CPP/7zip/Compress/LzmaEncoder.cpp \
CPP/7zip/Compress/LzmaRegister.cpp \
CPP/7zip/Compress/LzOutWindow.cpp \
CPP/7zip/Compress/Lzx86Converter.cpp \
CPP/7zip/Compress/LzxDecoder.cpp \
CPP/7zip/Compress/PpmdDecoder.cpp \
CPP/7zip/Compress/PpmdEncoder.cpp \
CPP/7zip/Compress/PpmdRegister.cpp \
CPP/7zip/Compress/PpmdZip.cpp \
CPP/7zip/Compress/QuantumDecoder.cpp \
CPP/7zip/Compress/ShrinkDecoder.cpp \
CPP/7zip/Compress/ZDecoder.cpp \
CPP/7zip/Crypto/7zAes.cpp \
CPP/7zip/Crypto/7zAesRegister.cpp \
CPP/7zip/Crypto/HmacSha1.cpp \
CPP/7zip/Crypto/MyAes.cpp \
CPP/7zip/Crypto/Pbkdf2HmacSha1.cpp \
CPP/7zip/Crypto/RandGen.cpp \
CPP/7zip/Crypto/Sha1.cpp \
CPP/7zip/Crypto/WzAes.cpp \
CPP/7zip/Crypto/ZipCrypto.cpp \
CPP/7zip/Crypto/ZipStrong.cpp \
C/7zStream.c \
C/Aes.c \
C/Alloc.c \
C/Bra.c \
C/Bra86.c \
C/BraIA64.c \
C/BwtSort.c \
C/Delta.c \
C/HuffEnc.c \
C/LzFind.c \
C/LzFindMt.c \
C/Lzma2Dec.c \
C/Lzma2Enc.c \
C/LzmaDec.c \
C/LzmaEnc.c \
C/MtCoder.c \
C/Ppmd7.c \
C/Ppmd7Dec.c \
C/Ppmd7Enc.c \
C/Ppmd8.c \
C/Ppmd8Dec.c \
C/Ppmd8Enc.c \
C/Sha256.c \
C/Sort.c \
C/Threads.c \
C/Xz.c \
C/XzCrc64.c \
C/XzDec.c \
C/XzEnc.c \
C/XzIn.c \
C/7zCrc.c \
C/7zCrcOpt.c

SUBDIRS = \
C \
CPP/7zip/Archive \
CPP/7zip/Archive/7z \
CPP/7zip/Archive/Cab \
CPP/7zip/Archive/Common \
CPP/7zip/Archive/Tar \
CPP/7zip/Archive/Zip \
CPP/7zip/Common \
CPP/7zip/Compress \
CPP/7zip/Crypto \
CPP/7zip/UI/Common \
CPP/7zip/UI/Console \
CPP/Common \
CPP/Windows \
CPP/myWindows

# We need to define some special rules to compile 7zip since moving
# all of the different source files into one main directory breaks the
# build due to the way 7zip's includes are structured.
define SUBDIR_template
Output/%.o: $(1)/%.c Output/.dir
	-$$(CC) $$(CPPFLAGS) $$(CFLAGS) $$(OPTFLAGS) $$(TARGET_FLAGS) -c $$< -o $$@
Output/%.o: $(1)/%.cpp Output/.dir
	-$$(CXX) $$(CPPFLAGS) $$(CXXFLAGS) $$(OPTFLAGS) $$(TARGET_FLAGS) -c $$< -o $$@
Output/%.llvm.o: $(1)/%.c Output/.dir
	$$(RUNSAFELYLOCAL) /dev/null $$@.compile \
	  $$(LCC) $$(CPPFLAGS) $$(CFLAGS) $$(OPTFLAGS) $$(TARGET_FLAGS) -c $$< -o $$@
Output/%.llvm.o: $(1)/%.cpp Output/.dir
	$$(RUNSAFELYLOCAL) /dev/null $$@.compile \
	  $$(LCXX) $$(CPPFLAGS) $$(CXXFLAGS) $$(OPTFLAGS) $$(TARGET_FLAGS) -c $$< -o $$@
Output/%.ll: $(1)/%.c Output/.dir
	$$(RUNSAFELYLOCAL) /dev/null $$@.compile \
	  $$(LCC) $$(CPPFLAGS) $$(CFLAGS) $$(OPTFLAGS) $$(TARGET_FLAGS) -S $$< -o $$@ $$(LLVMCC_EMITIR_FLAG)
Output/%.ll: $(1)/%.cpp Output/.dir
	$$(RUNSAFELYLOCAL) /dev/null $$@.compile \
	  $$(LCXX) $$(CPPFLAGS) $$(CXXFLAGS) $$(OPTFLAGS) $$(TARGET_FLAGS) -S $$< -o $$@ $$(LLVMCC_EMITIR_FLAG)
endef

$(foreach dir,$(SUBDIRS),$(eval $(call SUBDIR_template,$(PROJ_SRC_DIR)/$(dir))))

# Since this test just runs the benchmark provided in 7zip, the output
# will be different everytime since the output includes timing information.
PROGRAM_IS_NONDETERMINISTIC=1

include $(LEVEL)/MultiSource/Makefile.multisrc

