diff options
Diffstat (limited to 'native_client_sdk/src/examples/debugging/Makefile')
-rw-r--r-- | native_client_sdk/src/examples/debugging/Makefile | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/native_client_sdk/src/examples/debugging/Makefile b/native_client_sdk/src/examples/debugging/Makefile new file mode 100644 index 0000000..a506238 --- /dev/null +++ b/native_client_sdk/src/examples/debugging/Makefile @@ -0,0 +1,91 @@ +# Copyright (c) 2012 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 Make based build file. For details on GNU Make see: +# http://www.gnu.org/software/make/manual/make.html +# +# + + +# +# Default configuration +# +# By default we will build a Debug configuration using the GCC newlib toolcahin +# to override this, specify TOOLCHAIN=newlib|glibc or CONFIG=Debug|Release on +# the make command-line or in this file prior to including common.mk. The +# toolchain we use by default will be the first valid one listed +VALID_TOOLCHAINS:=newlib + + +# +# Set Chrome Arguments and Environment Variables to support development +# only feature. +# +CHROME_ARGS+=--no-sandbox +CHROME_ENV:=NACL_DANGEROUS_ENABLE_FILE_ACCESS=1 +CHROME_ENV+=NACL_SECURITY_DISABLE=1 +CHROME_ENV+=NACL_UNTRUSTED_EXCEPTION_HANDLING=1 + + +# +# Get pepper directory for toolchain and includes. +# +# If NACL_SDK_ROOT is not set, then assume it can be found relative to +# to this Makefile. +# +NACL_SDK_ROOT?=$(abspath $(CURDIR)/../..) +include $(NACL_SDK_ROOT)/tools/common.mk + + +# +# Target Name +# +# The base name of the final NEXE, also the name of the NMF file containing +# the mapping between architecture and actual NEXE. +# +TARGET=debugging + +# +# List of sources to compile +# +SOURCES=hello_world.c string_stream.c untrusted_crash_dump.c + + +# +# List of libraries to link against. Unlike some tools, the GCC and LLVM +# based tools require libraries to be specified in the correct order. The +# order should be symbol reference followed by symbol definition, with direct +# sources to the link (object files) are left most. In this case: +# hello_world -> ppapi_main -> ppapi_cpp -> ppapi -> pthread -> libc +# Notice that libc is implied and come last through standard compiler/link +# switches. +# +# We break this list down into two parts, the set we need to rebuild (DEPS) +# and the set we do not. This example does not havea any additional library +# dependencies. +# +DEPS= +LIBS=$(DEPS) ppapi_cpp ppapi pthread + + +# +# Use the library dependency macro for each dependency +# +$(foreach dep,$(DEPS),$(eval $(call DEPEND_RULE,$(dep)))) + +# +# Use the compile macro for each source. +# +$(foreach src,$(SOURCES),$(eval $(call COMPILE_RULE,$(src),-fno-omit-frame-pointer))) + +# +# Use the link macro for this target on the list of sources. +# +$(eval $(call LINK_RULE,$(TARGET),$(SOURCES),$(LIBS),$(DEPS))) + +# +# Specify the NMF to be created with no additional arugments. +# +$(eval $(call NMF_RULE,$(TARGET),)) |