# Copyright (c) 2013 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. # GNU Makefile based on shared rules provided by the Native Client SDK. # See README.Makefiles for more details. VALID_TOOLCHAINS := pnacl NACL_SDK_ROOT ?= $(abspath $(CURDIR)/../../..) include $(NACL_SDK_ROOT)/tools/common.mk TARGET = NaClAMBullet LIBS = BulletDynamics BulletCollision LinearMath ppapi pthread USR_INCLUDE=$(NACL_SDK_ROOT)/toolchain/$(OSNAME)_pnacl/le32-nacl/local/include BULLET_INCLUDE=$(USR_INCLUDE)/bullet CFLAGS = -I$(CURDIR) -I$(BULLET_INCLUDE) CFLAGS += -Wall -Wno-overloaded-virtual -Wno-unused-variable SOURCES = \ NaClAMBase/NaClAMBase.cpp \ NaClAMBase/NaClAMMessageCollector.cpp \ NaClAMBase/jsoncpp.cpp \ NaClAMBullet/NaClAMBullet.cpp # Build rules generated by macros from common.mk: $(foreach src,$(SOURCES),$(eval $(call COMPILE_RULE,$(src),$(CFLAGS)))) # The PNaCl workflow uses both an unstripped and finalized/stripped binary. # On NaCl, only produce a stripped binary for Release configs (not Debug). ifneq (,$(or $(findstring pnacl,$(TOOLCHAIN)),$(findstring Release,$(CONFIG)))) $(eval $(call LINK_RULE,$(TARGET)_unstripped,$(SOURCES),$(LIBS),$(DEPS))) $(eval $(call STRIP_RULE,$(TARGET),$(TARGET)_unstripped)) else $(eval $(call LINK_RULE,$(TARGET),$(SOURCES),$(LIBS),$(DEPS))) endif $(eval $(call NMF_RULE,$(TARGET),))