Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1248)

Side by Side Diff: native_client_sdk/src/build_tools/template.mk

Issue 10539082: Add DSC files for the various examples. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 8 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 # Copyright (c) 2012 The Native Client Authors. All rights reserved. 1 # Copyright (c) 2012 The Native Client Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 # 5 #
6 # GNU Make based build file. For details on GNU Make see: 6 # GNU Make based build file. For details on GNU Make see:
7 # http://www.gnu.org/software/make/manual/make.html 7 # http://www.gnu.org/software/make/manual/make.html
8 # 8 #
9 9
10 # 10 #
11 # Get pepper directory for toolchain and includes.
12 #
13 # If NACL_SDK_ROOT is not set, then assume it can be found a two directories up,
14 # from the default example directory location.
15 #
16 THIS_MAKEFILE:=$(abspath $(lastword $(MAKEFILE_LIST)))
17 NACL_SDK_ROOT?=$(abspath $(dir $(THIS_MAKEFILE))../..)
18 CHROME_PATH?=Undefined
19
20 #
11 # Defaults 21 # Defaults
12 # 22 #
13 NACL_WARNINGS:=-Wno-long-long -Wall -Wswitch-enum -Werror -pedantic 23 NACL_WARNINGS:=-Wno-long-long -Wall -Wswitch-enum -Werror -pedantic
14 NACL_CCFLAGS:=-O0 -g -pthread $(NACL_WARNINGS) 24 NACL_CCFLAGS:=-O0 -g -pthread $(NACL_WARNINGS)
15 NACL_CXXFLAGS:= -O0 -g -pthread -std=gnu++98 $(NACL_WARNINGS) 25 NACL_CXXFLAGS:= -O0 -g -pthread -std=gnu++98 $(NACL_WARNINGS)
16 NACL_LDFLAGS:=-Wl,-as-needed -g -pthread -lppapi_cpp -lppapi 26 NACL_LDFLAGS:=-Wl,-as-needed -g -pthread -lppapi_cpp -lppapi
17 27
18
19 # 28 #
20 # Project Settings 29 # Project Settings
21 # 30 #
22 __PROJECT_SETTINGS__ 31 __PROJECT_SETTINGS__
23 32
24 # 33 #
25 # Project Targets 34 # Project Targets
26 # 35 #
27 __PROJECT_TARGETS__ 36 __PROJECT_TARGETS__
28 37
29 38
30 # 39 #
31 # Get pepper directory for toolchain and includes.
32 #
33 # If NACL_SDK_ROOT is not set, then assume it can be found a two directories up,
34 # from the default example directory location.
35 #
36 THIS_MAKEFILE:=$(abspath $(lastword $(MAKEFILE_LIST)))
37 NACL_SDK_ROOT?=$(abspath $(dir $(THIS_MAKEFILE))../..)
38 CHROME_PATH?=Undefined
39
40
41 #
42 # Alias for standard commands 40 # Alias for standard commands
43 # 41 #
44 CP:=python $(NACL_SDK_ROOT)/tools/oshelpers.py cp 42 CP:=python $(NACL_SDK_ROOT)/tools/oshelpers.py cp
45 MKDIR:=python $(NACL_SDK_ROOT)/tools/oshelpers.py mkdir 43 MKDIR:=python $(NACL_SDK_ROOT)/tools/oshelpers.py mkdir
46 MV:=python $(NACL_SDK_ROOT)/tools/oshelpers.py mv 44 MV:=python $(NACL_SDK_ROOT)/tools/oshelpers.py mv
47 45
48 46
49 # 47 #
50 # Verify we selected a valid toolchain for this example 48 # Verify we selected a valid toolchain for this example
51 # 49 #
52 ifeq (,$(findstring $(TOOLCHAIN),$(VALID_TOOLCHAINS))) 50 ifeq (,$(findstring $(TOOLCHAIN),$(VALID_TOOLCHAINS)))
53 $(warning Availbile choices are: $(VALID_TOOLCHAINS)) 51 $(warning Availbile choices are: $(VALID_TOOLCHAINS))
54 $(error Can not use TOOLCHAIN=$(TOOLCHAIN) on this example.) 52 $(error Can not use TOOLCHAIN=$(TOOLCHAIN) on this example.)
55 endif 53 endif
56 54
57 55
58 # 56 #
59 # Compute path to requested NaCl Toolchain 57 # Compute path to requested NaCl Toolchain
60 # 58 #
61 OSNAME:=$(shell python $(NACL_SDK_ROOT)/tools/getos.py) 59 OSNAME:=$(shell python $(NACL_SDK_ROOT)/tools/getos.py)
62 TC_PATH:=$(abspath $(NACL_SDK_ROOT)/toolchain/$(OSNAME)_x86_$(TOOLCHAIN)) 60 TC_PATH:=$(abspath $(NACL_SDK_ROOT)/toolchain)
63
64
65 #
66 # Compute path to requested NaCl Toolchain
67 #
68 OSNAME:=$(shell python $(NACL_SDK_ROOT)/tools/getos.py)
69 TC_PATH:=$(abspath $(NACL_SDK_ROOT)/toolchain/$(OSNAME)_x86_$(TOOLCHAIN))
70 61
71 62
72 # 63 #
73 # Verify we have a valid NACL_SDK_ROOT by looking for the toolchain directory 64 # Verify we have a valid NACL_SDK_ROOT by looking for the toolchain directory
74 # 65 #
75 ifeq (,$(wildcard $(TC_PATH))) 66 ifeq (,$(wildcard $(TC_PATH)))
76 $(warning No valid NACL_SDK_ROOT at $(NACL_SDK_ROOT)) 67 $(warning No valid NACL_SDK_ROOT at $(NACL_SDK_ROOT))
77 ifeq ($(origin NACL_SDK_ROOT), 'file') 68 ifeq ($(origin NACL_SDK_ROOT), 'file')
78 $(error Override the default value via enviornment variable, or command-line.) 69 $(error Override the default value via enviornment variable, or command-line.)
79 else 70 else
80 $(error Fix the NACL_SDK_ROOT specified in the environment or command-line.) 71 $(error Fix the NACL_SDK_ROOT specified in the environment or command-line.)
81 endif 72 endif
82 endif 73 endif
83 74
84 75
85 # 76 #
86 # Disable DOS PATH warning when using Cygwin based NaCl tools on Windows 77 # Disable DOS PATH warning when using Cygwin based NaCl tools on Windows
87 # 78 #
88 CYGWIN ?= nodosfilewarning 79 CYGWIN ?= nodosfilewarning
89 export CYGWIN 80 export CYGWIN
90 81
91 82
92 # 83 #
93 # NaCl Tools 84 # NaCl Tools
94 # 85 #
95 NACL_CC?=$(TC_PATH)/bin/i686-nacl-gcc -c 86 NEWLIB_CC?=$(TC_PATH)/$(OSNAME)_x86_newlib/bin/i686-nacl-gcc -c
96 NACL_CXX?=$(TC_PATH)/bin/i686-nacl-g++ -c 87 NEWLIB_CXX?=$(TC_PATH)/$(OSNAME)_x86_newlib/bin/i686-nacl-g++ -c
97 NACL_LINK?=$(TC_PATH)/bin/i686-nacl-g++ 88 NEWLIB_LINK?=$(TC_PATH)/$(OSNAME)_x86_newlib/bin/i686-nacl-g++
89 NEWLIB_DUMP?=$(TC_PATH)/$(OSNAME)_x86_newlib/x86_64-nacl/bin/objdump
90 NEWLIB_PATHS:=
91
92 GLIBC_CC?=$(TC_PATH)/$(OSNAME)_x86_glibc/bin/i686-nacl-gcc -c
93 GLIBC_CXX?=$(TC_PATH)/$(OSNAME)_x86_glibc/bin/i686-nacl-g++ -c
94 GLIBC_LINK?=$(TC_PATH)/$(OSNAME)_x86_glibc/bin/i686-nacl-g++
95 GLIBC_DUMP?=$(TC_PATH)/$(OSNAME)_x86_glibc/x86_64-nacl/bin/objdump
96 GLIBC_PATHS:=-L $(TC_PATH)/$(OSNAME)_x86_glibc/x86_64-nacl/lib32
97 GLIBC_PATHS+=-L $(TC_PATH)/$(OSNAME)_x86_glibc/x86_64-nacl/lib
98
99 #
100 # NMF Manifiest generation
101 #
102 # Use the python script create_nmf to scan the binaries for dependencies using
103 # objdump. Pass in the (-L) paths to the default library toolchains so that we
104 # can find those libraries and have it automatically copy the files (-s) to
105 # the target directory for us.
106 NMF:=python $(NACL_SDK_ROOT)/tools/create_nmf.py
107 NMF_PATHS:=-L $(TC_PATH)/x86_64-nacl/lib32 -L $(TC_PATH)/x86_64-nacl/lib
98 108
99 109
100 # 110 #
101 # Verify we can find the Chrome executable if we need to launch it. 111 # Verify we can find the Chrome executable if we need to launch it.
102 # 112 #
103 .PHONY: CHECK_FOR_CHROME 113 .PHONY: CHECK_FOR_CHROME
104 CHECK_FOR_CHROME: 114 CHECK_FOR_CHROME:
105 ifeq (,$(wildcard $(CHROME_PATH))) 115 ifeq (,$(wildcard $(CHROME_PATH)))
106 $(warning No valid Chrome found at CHROME_PATH=$(CHROME_PATH)) 116 $(warning No valid Chrome found at CHROME_PATH=$(CHROME_PATH))
107 $(error Set CHROME_PATH via an environment variable, or command-line.) 117 $(error Set CHROME_PATH via an environment variable, or command-line.)
108 else 118 else
109 $(warning Using chrome at: $(CHROME_PATH)) 119 $(warning Using chrome at: $(CHROME_PATH))
110 endif 120 endif
111 121
112 122
113 __PROJECT_RULES__ 123 __PROJECT_RULES__
114 #
115 # NMF Manifiest generation
116 #
117 # Use the python script create_nmf to scan the binaries for dependencies using
118 # objdump. Pass in the (-L) paths to the default library toolchains so that we
119 # can find those libraries and have it automatically copy the files (-s) to
120 # the target directory for us.
121 NMF:=python $(NACL_SDK_ROOT)/tools/create_nmf.py
122 NMF_ARGS:=-D $(TC_PATH)/x86_64-nacl/bin/objdump -s .
123 NMF_PATHS:=-L $(TC_PATH)/x86_64-nacl/lib32 -L $(TC_PATH)/x86_64-nacl/lib
124
125 __PROJECT_NMFS__
126
127 __PROJECT_PRERUN__ 124 __PROJECT_PRERUN__
128 125
129 RUN: all 126 RUN: all
130 python ../httpd.py 127 python ../httpd.py
131 128
132 __PROJECT_PRELAUNCH__ 129 LAUNCH_NEXE: CHECK_FOR_CHROME all
130 » $(CHROME_PATH) $(NEXE_ARGS) "localhost:5103/$(PROJECT).html?tool=$(TOOLC HAIN)"
133 131
134 LAUNCH_NEXE: CHECK_FOR_CHROME all 132 __PROJECT_POSTLAUNCH__
135 » $(CHROME_PATH) $(NEXE_ARGS) "localhost:5103/$(PROJECT).html"
136
137
OLDNEW
« no previous file with comments | « native_client_sdk/src/build_tools/generate_make.py ('k') | native_client_sdk/src/examples/debugging/debugging.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698