| # 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),)) |