# Copyright (c) 2005-2020 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # GNU Makefile that builds and runs example. NAME=pover ARGS= LIGHT_ARGS= --polys 10 --size 5x5 # The C++ compiler ifneq (,$(shell which icc 2>/dev/null)) CXX=icc endif # icc include ../../common/gui/Makefile.gmake ifeq ($(UI),x) UI_CXXFLAGS += -DX_FULLSYNC endif # X override CXXFLAGS += $(UI_CXXFLAGS) SRCFILES = ../../common/gui/$(UI)video.cpp pover_video.cpp polymain.cpp polyover.cpp ifeq ($(shell uname), Linux) LIBS+= -lrt else ifeq ($(shell uname), Darwin) override CXXFLAGS += -Wl,-rpath,$(TBBROOT)/lib endif # autodetect C++11 support include ../../common/examples-common.inc all: release test resources: ifeq ($(UI),mac) mkdir -p $(APPRES)/en.lproj $(NAME).app/Contents/MacOS cp ../../common/gui/xcode/tbbExample/tbbExample-Info.plist $(NAME).app/Contents/Info.plist cp ../../common/gui/xcode/tbbExample/PkgInfo $(NAME).app/Contents cp ../../common/gui/xcode/tbbExample/en.lproj/* $(APPRES)/en.lproj endif # macOS* release: $(SRCFILES) resources ifeq ($(compiler),xl) # Avoiding "1586-346 (U) An error occurred during code generation. The code generation return code was 40." with -O3. $(CXX) -O2 -DNDEBUG $(CXXFLAGS) -o $(EXE) $(SRCFILES) -ltbb -ltbbmalloc $(LIBS) $(CXX0XFLAGS) else ifeq ($(UI),mac) $(CXX_UI) -O3 -DNDEBUG $(CXXFLAGS) -c $(MACUISOURCES) $(CXX0XFLAGS) endif # macOS $(CXX) -O3 -DNDEBUG $(CXXFLAGS) -o $(EXE) $(SRCFILES) $(MACUIOBJS) -ltbb -ltbbmalloc $(LIBS) $(CXX0XFLAGS) endif debug: $(SRCFILES) resources ifeq ($(UI),mac) $(CXX_UI) -g -O0 -DTBB_USE_DEBUG -D_DEBUG $(CXXFLAGS) -c $(MACUISOURCES) $(CXX0XFLAGS) endif # macOS $(CXX) -g -O0 -DTBB_USE_DEBUG -D_DEBUG $(CXXFLAGS) -o $(EXE) $(SRCFILES) $(MACUIOBJS) -ltbb_debug -ltbbmalloc_debug $(LIBS) $(CXX0XFLAGS) clean: $(RM) $(EXE) *.o *.d ifeq ($(UI),mac) rm -rf $(NAME).app endif test: ifeq ($(UI),mac) export DYLD_LIBRARY_PATH="$(DYLD_LIBRARY_PATH):$(TBBLIBSPATH)"; $(run_cmd) ./$(EXE) $(ARGS) else $(run_cmd) ./$(EXE) $(ARGS) endif light_test: ifeq ($(UI),mac) export DYLD_LIBRARY_PATH="$(DYLD_LIBRARY_PATH):$(TBBLIBSPATH)"; $(run_cmd) ./$(EXE) $(LIGHT_ARGS) else $(run_cmd) ./$(EXE) $(LIGHT_ARGS) endif