Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
michael@0 | 1 | # We borrow heavily from the kernel build setup, though we are simpler since |
michael@0 | 2 | # we don't have Kconfig tweaking settings on us. |
michael@0 | 3 | |
michael@0 | 4 | # The implicit make rules have it looking for RCS files, among other things. |
michael@0 | 5 | # We instead explicitly write all the rules we care about. |
michael@0 | 6 | # It's even quicker (saves ~200ms) to pass -r on the command line. |
michael@0 | 7 | MAKEFLAGS=-r |
michael@0 | 8 | |
michael@0 | 9 | # The source directory tree. |
michael@0 | 10 | srcdir := . |
michael@0 | 11 | abs_srcdir := $(abspath $(srcdir)) |
michael@0 | 12 | |
michael@0 | 13 | # The name of the builddir. |
michael@0 | 14 | builddir_name ?= out |
michael@0 | 15 | |
michael@0 | 16 | # The V=1 flag on command line makes us verbosely print command lines. |
michael@0 | 17 | ifdef V |
michael@0 | 18 | quiet= |
michael@0 | 19 | else |
michael@0 | 20 | quiet=quiet_ |
michael@0 | 21 | endif |
michael@0 | 22 | |
michael@0 | 23 | # Specify BUILDTYPE=Release on the command line for a release build. |
michael@0 | 24 | BUILDTYPE ?= Debug |
michael@0 | 25 | |
michael@0 | 26 | # Directory all our build output goes into. |
michael@0 | 27 | # Note that this must be two directories beneath src/ for unit tests to pass, |
michael@0 | 28 | # as they reach into the src/ directory for data with relative paths. |
michael@0 | 29 | builddir ?= $(builddir_name)/$(BUILDTYPE) |
michael@0 | 30 | abs_builddir := $(abspath $(builddir)) |
michael@0 | 31 | depsdir := $(builddir)/.deps |
michael@0 | 32 | |
michael@0 | 33 | # Object output directory. |
michael@0 | 34 | obj := $(builddir)/obj |
michael@0 | 35 | abs_obj := $(abspath $(obj)) |
michael@0 | 36 | |
michael@0 | 37 | # We build up a list of every single one of the targets so we can slurp in the |
michael@0 | 38 | # generated dependency rule Makefiles in one pass. |
michael@0 | 39 | all_deps := |
michael@0 | 40 | |
michael@0 | 41 | |
michael@0 | 42 | |
michael@0 | 43 | # C++ apps need to be linked with g++. |
michael@0 | 44 | # |
michael@0 | 45 | # Note: flock is used to seralize linking. Linking is a memory-intensive |
michael@0 | 46 | # process so running parallel links can often lead to thrashing. To disable |
michael@0 | 47 | # the serialization, override LINK via an envrionment variable as follows: |
michael@0 | 48 | # |
michael@0 | 49 | # export LINK=g++ |
michael@0 | 50 | # |
michael@0 | 51 | # This will allow make to invoke N linker processes as specified in -jN. |
michael@0 | 52 | LINK ?= flock $(builddir)/linker.lock $(CXX) |
michael@0 | 53 | |
michael@0 | 54 | CC.target ?= $(CC) |
michael@0 | 55 | CFLAGS.target ?= $(CFLAGS) |
michael@0 | 56 | CXX.target ?= $(CXX) |
michael@0 | 57 | CXXFLAGS.target ?= $(CXXFLAGS) |
michael@0 | 58 | LINK.target ?= $(LINK) |
michael@0 | 59 | LDFLAGS.target ?= $(LDFLAGS) |
michael@0 | 60 | AR.target ?= $(AR) |
michael@0 | 61 | |
michael@0 | 62 | # TODO(evan): move all cross-compilation logic to gyp-time so we don't need |
michael@0 | 63 | # to replicate this environment fallback in make as well. |
michael@0 | 64 | CC.host ?= gcc |
michael@0 | 65 | CFLAGS.host ?= |
michael@0 | 66 | CXX.host ?= g++ |
michael@0 | 67 | CXXFLAGS.host ?= |
michael@0 | 68 | LINK.host ?= g++ |
michael@0 | 69 | LDFLAGS.host ?= |
michael@0 | 70 | AR.host ?= ar |
michael@0 | 71 | |
michael@0 | 72 | # Define a dir function that can handle spaces. |
michael@0 | 73 | # http://www.gnu.org/software/make/manual/make.html#Syntax-of-Functions |
michael@0 | 74 | # "leading spaces cannot appear in the text of the first argument as written. |
michael@0 | 75 | # These characters can be put into the argument value by variable substitution." |
michael@0 | 76 | empty := |
michael@0 | 77 | space := $(empty) $(empty) |
michael@0 | 78 | |
michael@0 | 79 | # http://stackoverflow.com/questions/1189781/using-make-dir-or-notdir-on-a-path-with-spaces |
michael@0 | 80 | replace_spaces = $(subst $(space),?,$1) |
michael@0 | 81 | unreplace_spaces = $(subst ?,$(space),$1) |
michael@0 | 82 | dirx = $(call unreplace_spaces,$(dir $(call replace_spaces,$1))) |
michael@0 | 83 | |
michael@0 | 84 | # Flags to make gcc output dependency info. Note that you need to be |
michael@0 | 85 | # careful here to use the flags that ccache and distcc can understand. |
michael@0 | 86 | # We write to a dep file on the side first and then rename at the end |
michael@0 | 87 | # so we can't end up with a broken dep file. |
michael@0 | 88 | depfile = $(depsdir)/$(call replace_spaces,$@).d |
michael@0 | 89 | DEPFLAGS = -MMD -MF $(depfile).raw |
michael@0 | 90 | |
michael@0 | 91 | # We have to fixup the deps output in a few ways. |
michael@0 | 92 | # (1) the file output should mention the proper .o file. |
michael@0 | 93 | # ccache or distcc lose the path to the target, so we convert a rule of |
michael@0 | 94 | # the form: |
michael@0 | 95 | # foobar.o: DEP1 DEP2 |
michael@0 | 96 | # into |
michael@0 | 97 | # path/to/foobar.o: DEP1 DEP2 |
michael@0 | 98 | # (2) we want missing files not to cause us to fail to build. |
michael@0 | 99 | # We want to rewrite |
michael@0 | 100 | # foobar.o: DEP1 DEP2 \ |
michael@0 | 101 | # DEP3 |
michael@0 | 102 | # to |
michael@0 | 103 | # DEP1: |
michael@0 | 104 | # DEP2: |
michael@0 | 105 | # DEP3: |
michael@0 | 106 | # so if the files are missing, they're just considered phony rules. |
michael@0 | 107 | # We have to do some pretty insane escaping to get those backslashes |
michael@0 | 108 | # and dollar signs past make, the shell, and sed at the same time. |
michael@0 | 109 | # Doesn't work with spaces, but that's fine: .d files have spaces in |
michael@0 | 110 | # their names replaced with other characters. |
michael@0 | 111 | define fixup_dep |
michael@0 | 112 | # The depfile may not exist if the input file didn't have any #includes. |
michael@0 | 113 | touch $(depfile).raw |
michael@0 | 114 | # Fixup path as in (1). |
michael@0 | 115 | sed -e "s|^$(notdir $@)|$@|" $(depfile).raw >> $(depfile) |
michael@0 | 116 | # Add extra rules as in (2). |
michael@0 | 117 | # We remove slashes and replace spaces with new lines; |
michael@0 | 118 | # remove blank lines; |
michael@0 | 119 | # delete the first line and append a colon to the remaining lines. |
michael@0 | 120 | sed -e 's|\\||' -e 'y| |\n|' $(depfile).raw |\ |
michael@0 | 121 | grep -v '^$$' |\ |
michael@0 | 122 | sed -e 1d -e 's|$$|:|' \ |
michael@0 | 123 | >> $(depfile) |
michael@0 | 124 | rm $(depfile).raw |
michael@0 | 125 | endef |
michael@0 | 126 | |
michael@0 | 127 | # Command definitions: |
michael@0 | 128 | # - cmd_foo is the actual command to run; |
michael@0 | 129 | # - quiet_cmd_foo is the brief-output summary of the command. |
michael@0 | 130 | |
michael@0 | 131 | quiet_cmd_cc = CC($(TOOLSET)) $@ |
michael@0 | 132 | cmd_cc = $(CC.$(TOOLSET)) $(GYP_CFLAGS) $(DEPFLAGS) $(CFLAGS.$(TOOLSET)) -c -o $@ $< |
michael@0 | 133 | |
michael@0 | 134 | quiet_cmd_cxx = CXX($(TOOLSET)) $@ |
michael@0 | 135 | cmd_cxx = $(CXX.$(TOOLSET)) $(GYP_CXXFLAGS) $(DEPFLAGS) $(CXXFLAGS.$(TOOLSET)) -c -o $@ $< |
michael@0 | 136 | |
michael@0 | 137 | quiet_cmd_touch = TOUCH $@ |
michael@0 | 138 | cmd_touch = touch $@ |
michael@0 | 139 | |
michael@0 | 140 | quiet_cmd_copy = COPY $@ |
michael@0 | 141 | # send stderr to /dev/null to ignore messages when linking directories. |
michael@0 | 142 | cmd_copy = ln -f "$<" "$@" 2>/dev/null || (rm -rf "$@" && cp -af "$<" "$@") |
michael@0 | 143 | |
michael@0 | 144 | quiet_cmd_alink = AR($(TOOLSET)) $@ |
michael@0 | 145 | cmd_alink = rm -f $@ && $(AR.$(TOOLSET)) crs $@ $(filter %.o,$^) |
michael@0 | 146 | |
michael@0 | 147 | quiet_cmd_alink_thin = AR($(TOOLSET)) $@ |
michael@0 | 148 | cmd_alink_thin = rm -f $@ && $(AR.$(TOOLSET)) crsT $@ $(filter %.o,$^) |
michael@0 | 149 | |
michael@0 | 150 | # Due to circular dependencies between libraries :(, we wrap the |
michael@0 | 151 | # special "figure out circular dependencies" flags around the entire |
michael@0 | 152 | # input list during linking. |
michael@0 | 153 | quiet_cmd_link = LINK($(TOOLSET)) $@ |
michael@0 | 154 | cmd_link = $(LINK.$(TOOLSET)) $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -o $@ -Wl,--start-group $(LD_INPUTS) -Wl,--end-group $(LIBS) |
michael@0 | 155 | |
michael@0 | 156 | # We support two kinds of shared objects (.so): |
michael@0 | 157 | # 1) shared_library, which is just bundling together many dependent libraries |
michael@0 | 158 | # into a link line. |
michael@0 | 159 | # 2) loadable_module, which is generating a module intended for dlopen(). |
michael@0 | 160 | # |
michael@0 | 161 | # They differ only slightly: |
michael@0 | 162 | # In the former case, we want to package all dependent code into the .so. |
michael@0 | 163 | # In the latter case, we want to package just the API exposed by the |
michael@0 | 164 | # outermost module. |
michael@0 | 165 | # This means shared_library uses --whole-archive, while loadable_module doesn't. |
michael@0 | 166 | # (Note that --whole-archive is incompatible with the --start-group used in |
michael@0 | 167 | # normal linking.) |
michael@0 | 168 | |
michael@0 | 169 | # Other shared-object link notes: |
michael@0 | 170 | # - Set SONAME to the library filename so our binaries don't reference |
michael@0 | 171 | # the local, absolute paths used on the link command-line. |
michael@0 | 172 | quiet_cmd_solink = SOLINK($(TOOLSET)) $@ |
michael@0 | 173 | cmd_solink = $(LINK.$(TOOLSET)) -shared $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -Wl,-soname=$(@F) -o $@ -Wl,--whole-archive $(LD_INPUTS) -Wl,--no-whole-archive $(LIBS) |
michael@0 | 174 | |
michael@0 | 175 | quiet_cmd_solink_module = SOLINK_MODULE($(TOOLSET)) $@ |
michael@0 | 176 | cmd_solink_module = $(LINK.$(TOOLSET)) -shared $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -Wl,-soname=$(@F) -o $@ -Wl,--start-group $(filter-out FORCE_DO_CMD, $^) -Wl,--end-group $(LIBS) |
michael@0 | 177 | |
michael@0 | 178 | |
michael@0 | 179 | # Define an escape_quotes function to escape single quotes. |
michael@0 | 180 | # This allows us to handle quotes properly as long as we always use |
michael@0 | 181 | # use single quotes and escape_quotes. |
michael@0 | 182 | escape_quotes = $(subst ','\'',$(1)) |
michael@0 | 183 | # This comment is here just to include a ' to unconfuse syntax highlighting. |
michael@0 | 184 | # Define an escape_vars function to escape '$' variable syntax. |
michael@0 | 185 | # This allows us to read/write command lines with shell variables (e.g. |
michael@0 | 186 | # $LD_LIBRARY_PATH), without triggering make substitution. |
michael@0 | 187 | escape_vars = $(subst $$,$$$$,$(1)) |
michael@0 | 188 | # Helper that expands to a shell command to echo a string exactly as it is in |
michael@0 | 189 | # make. This uses printf instead of echo because printf's behaviour with respect |
michael@0 | 190 | # to escape sequences is more portable than echo's across different shells |
michael@0 | 191 | # (e.g., dash, bash). |
michael@0 | 192 | exact_echo = printf '%s\n' '$(call escape_quotes,$(1))' |
michael@0 | 193 | |
michael@0 | 194 | # Helper to compare the command we're about to run against the command |
michael@0 | 195 | # we logged the last time we ran the command. Produces an empty |
michael@0 | 196 | # string (false) when the commands match. |
michael@0 | 197 | # Tricky point: Make has no string-equality test function. |
michael@0 | 198 | # The kernel uses the following, but it seems like it would have false |
michael@0 | 199 | # positives, where one string reordered its arguments. |
michael@0 | 200 | # arg_check = $(strip $(filter-out $(cmd_$(1)), $(cmd_$@)) \ |
michael@0 | 201 | # $(filter-out $(cmd_$@), $(cmd_$(1)))) |
michael@0 | 202 | # We instead substitute each for the empty string into the other, and |
michael@0 | 203 | # say they're equal if both substitutions produce the empty string. |
michael@0 | 204 | # .d files contain ? instead of spaces, take that into account. |
michael@0 | 205 | command_changed = $(or $(subst $(cmd_$(1)),,$(cmd_$(call replace_spaces,$@))),\ |
michael@0 | 206 | $(subst $(cmd_$(call replace_spaces,$@)),,$(cmd_$(1)))) |
michael@0 | 207 | |
michael@0 | 208 | # Helper that is non-empty when a prerequisite changes. |
michael@0 | 209 | # Normally make does this implicitly, but we force rules to always run |
michael@0 | 210 | # so we can check their command lines. |
michael@0 | 211 | # $? -- new prerequisites |
michael@0 | 212 | # $| -- order-only dependencies |
michael@0 | 213 | prereq_changed = $(filter-out FORCE_DO_CMD,$(filter-out $|,$?)) |
michael@0 | 214 | |
michael@0 | 215 | # Helper that executes all postbuilds, and deletes the output file when done |
michael@0 | 216 | # if any of the postbuilds failed. |
michael@0 | 217 | define do_postbuilds |
michael@0 | 218 | @E=0;\ |
michael@0 | 219 | for p in $(POSTBUILDS); do\ |
michael@0 | 220 | eval $$p;\ |
michael@0 | 221 | F=$$?;\ |
michael@0 | 222 | if [ $$F -ne 0 ]; then\ |
michael@0 | 223 | E=$$F;\ |
michael@0 | 224 | fi;\ |
michael@0 | 225 | done;\ |
michael@0 | 226 | if [ $$E -ne 0 ]; then\ |
michael@0 | 227 | rm -rf "$@";\ |
michael@0 | 228 | exit $$E;\ |
michael@0 | 229 | fi |
michael@0 | 230 | endef |
michael@0 | 231 | |
michael@0 | 232 | # do_cmd: run a command via the above cmd_foo names, if necessary. |
michael@0 | 233 | # Should always run for a given target to handle command-line changes. |
michael@0 | 234 | # Second argument, if non-zero, makes it do asm/C/C++ dependency munging. |
michael@0 | 235 | # Third argument, if non-zero, makes it do POSTBUILDS processing. |
michael@0 | 236 | # Note: We intentionally do NOT call dirx for depfile, since it contains ? for |
michael@0 | 237 | # spaces already and dirx strips the ? characters. |
michael@0 | 238 | define do_cmd |
michael@0 | 239 | $(if $(or $(command_changed),$(prereq_changed)), |
michael@0 | 240 | @$(call exact_echo, $($(quiet)cmd_$(1))) |
michael@0 | 241 | @mkdir -p "$(call dirx,$@)" "$(dir $(depfile))" |
michael@0 | 242 | $(if $(findstring flock,$(word 1,$(cmd_$1))), |
michael@0 | 243 | @$(cmd_$(1)) |
michael@0 | 244 | @echo " $(quiet_cmd_$(1)): Finished", |
michael@0 | 245 | @$(cmd_$(1)) |
michael@0 | 246 | ) |
michael@0 | 247 | @$(call exact_echo,$(call escape_vars,cmd_$(call replace_spaces,$@) := $(cmd_$(1)))) > $(depfile) |
michael@0 | 248 | @$(if $(2),$(fixup_dep)) |
michael@0 | 249 | $(if $(and $(3), $(POSTBUILDS)), |
michael@0 | 250 | $(call do_postbuilds) |
michael@0 | 251 | ) |
michael@0 | 252 | ) |
michael@0 | 253 | endef |
michael@0 | 254 | |
michael@0 | 255 | # Declare the "all" target first so it is the default, |
michael@0 | 256 | # even though we don't have the deps yet. |
michael@0 | 257 | .PHONY: all |
michael@0 | 258 | all: |
michael@0 | 259 | |
michael@0 | 260 | # make looks for ways to re-generate included makefiles, but in our case, we |
michael@0 | 261 | # don't have a direct way. Explicitly telling make that it has nothing to do |
michael@0 | 262 | # for them makes it go faster. |
michael@0 | 263 | %.d: ; |
michael@0 | 264 | |
michael@0 | 265 | # Use FORCE_DO_CMD to force a target to run. Should be coupled with |
michael@0 | 266 | # do_cmd. |
michael@0 | 267 | .PHONY: FORCE_DO_CMD |
michael@0 | 268 | FORCE_DO_CMD: |
michael@0 | 269 | |
michael@0 | 270 | TOOLSET := host |
michael@0 | 271 | # Suffix rules, putting all outputs into $(obj). |
michael@0 | 272 | $(obj).$(TOOLSET)/%.o: $(srcdir)/%.c FORCE_DO_CMD |
michael@0 | 273 | @$(call do_cmd,cc,1) |
michael@0 | 274 | $(obj).$(TOOLSET)/%.o: $(srcdir)/%.cc FORCE_DO_CMD |
michael@0 | 275 | @$(call do_cmd,cxx,1) |
michael@0 | 276 | $(obj).$(TOOLSET)/%.o: $(srcdir)/%.cpp FORCE_DO_CMD |
michael@0 | 277 | @$(call do_cmd,cxx,1) |
michael@0 | 278 | $(obj).$(TOOLSET)/%.o: $(srcdir)/%.cxx FORCE_DO_CMD |
michael@0 | 279 | @$(call do_cmd,cxx,1) |
michael@0 | 280 | $(obj).$(TOOLSET)/%.o: $(srcdir)/%.S FORCE_DO_CMD |
michael@0 | 281 | @$(call do_cmd,cc,1) |
michael@0 | 282 | $(obj).$(TOOLSET)/%.o: $(srcdir)/%.s FORCE_DO_CMD |
michael@0 | 283 | @$(call do_cmd,cc,1) |
michael@0 | 284 | |
michael@0 | 285 | # Try building from generated source, too. |
michael@0 | 286 | $(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.c FORCE_DO_CMD |
michael@0 | 287 | @$(call do_cmd,cc,1) |
michael@0 | 288 | $(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.cc FORCE_DO_CMD |
michael@0 | 289 | @$(call do_cmd,cxx,1) |
michael@0 | 290 | $(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.cpp FORCE_DO_CMD |
michael@0 | 291 | @$(call do_cmd,cxx,1) |
michael@0 | 292 | $(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.cxx FORCE_DO_CMD |
michael@0 | 293 | @$(call do_cmd,cxx,1) |
michael@0 | 294 | $(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.S FORCE_DO_CMD |
michael@0 | 295 | @$(call do_cmd,cc,1) |
michael@0 | 296 | $(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.s FORCE_DO_CMD |
michael@0 | 297 | @$(call do_cmd,cc,1) |
michael@0 | 298 | |
michael@0 | 299 | $(obj).$(TOOLSET)/%.o: $(obj)/%.c FORCE_DO_CMD |
michael@0 | 300 | @$(call do_cmd,cc,1) |
michael@0 | 301 | $(obj).$(TOOLSET)/%.o: $(obj)/%.cc FORCE_DO_CMD |
michael@0 | 302 | @$(call do_cmd,cxx,1) |
michael@0 | 303 | $(obj).$(TOOLSET)/%.o: $(obj)/%.cpp FORCE_DO_CMD |
michael@0 | 304 | @$(call do_cmd,cxx,1) |
michael@0 | 305 | $(obj).$(TOOLSET)/%.o: $(obj)/%.cxx FORCE_DO_CMD |
michael@0 | 306 | @$(call do_cmd,cxx,1) |
michael@0 | 307 | $(obj).$(TOOLSET)/%.o: $(obj)/%.S FORCE_DO_CMD |
michael@0 | 308 | @$(call do_cmd,cc,1) |
michael@0 | 309 | $(obj).$(TOOLSET)/%.o: $(obj)/%.s FORCE_DO_CMD |
michael@0 | 310 | @$(call do_cmd,cc,1) |
michael@0 | 311 | |
michael@0 | 312 | TOOLSET := target |
michael@0 | 313 | # Suffix rules, putting all outputs into $(obj). |
michael@0 | 314 | $(obj).$(TOOLSET)/%.o: $(srcdir)/%.c FORCE_DO_CMD |
michael@0 | 315 | @$(call do_cmd,cc,1) |
michael@0 | 316 | $(obj).$(TOOLSET)/%.o: $(srcdir)/%.cc FORCE_DO_CMD |
michael@0 | 317 | @$(call do_cmd,cxx,1) |
michael@0 | 318 | $(obj).$(TOOLSET)/%.o: $(srcdir)/%.cpp FORCE_DO_CMD |
michael@0 | 319 | @$(call do_cmd,cxx,1) |
michael@0 | 320 | $(obj).$(TOOLSET)/%.o: $(srcdir)/%.cxx FORCE_DO_CMD |
michael@0 | 321 | @$(call do_cmd,cxx,1) |
michael@0 | 322 | $(obj).$(TOOLSET)/%.o: $(srcdir)/%.S FORCE_DO_CMD |
michael@0 | 323 | @$(call do_cmd,cc,1) |
michael@0 | 324 | $(obj).$(TOOLSET)/%.o: $(srcdir)/%.s FORCE_DO_CMD |
michael@0 | 325 | @$(call do_cmd,cc,1) |
michael@0 | 326 | |
michael@0 | 327 | # Try building from generated source, too. |
michael@0 | 328 | $(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.c FORCE_DO_CMD |
michael@0 | 329 | @$(call do_cmd,cc,1) |
michael@0 | 330 | $(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.cc FORCE_DO_CMD |
michael@0 | 331 | @$(call do_cmd,cxx,1) |
michael@0 | 332 | $(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.cpp FORCE_DO_CMD |
michael@0 | 333 | @$(call do_cmd,cxx,1) |
michael@0 | 334 | $(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.cxx FORCE_DO_CMD |
michael@0 | 335 | @$(call do_cmd,cxx,1) |
michael@0 | 336 | $(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.S FORCE_DO_CMD |
michael@0 | 337 | @$(call do_cmd,cc,1) |
michael@0 | 338 | $(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.s FORCE_DO_CMD |
michael@0 | 339 | @$(call do_cmd,cc,1) |
michael@0 | 340 | |
michael@0 | 341 | $(obj).$(TOOLSET)/%.o: $(obj)/%.c FORCE_DO_CMD |
michael@0 | 342 | @$(call do_cmd,cc,1) |
michael@0 | 343 | $(obj).$(TOOLSET)/%.o: $(obj)/%.cc FORCE_DO_CMD |
michael@0 | 344 | @$(call do_cmd,cxx,1) |
michael@0 | 345 | $(obj).$(TOOLSET)/%.o: $(obj)/%.cpp FORCE_DO_CMD |
michael@0 | 346 | @$(call do_cmd,cxx,1) |
michael@0 | 347 | $(obj).$(TOOLSET)/%.o: $(obj)/%.cxx FORCE_DO_CMD |
michael@0 | 348 | @$(call do_cmd,cxx,1) |
michael@0 | 349 | $(obj).$(TOOLSET)/%.o: $(obj)/%.S FORCE_DO_CMD |
michael@0 | 350 | @$(call do_cmd,cc,1) |
michael@0 | 351 | $(obj).$(TOOLSET)/%.o: $(obj)/%.s FORCE_DO_CMD |
michael@0 | 352 | @$(call do_cmd,cc,1) |
michael@0 | 353 | |
michael@0 | 354 | |
michael@0 | 355 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 356 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 357 | $(join ^,All.target.mk)))),) |
michael@0 | 358 | include All.target.mk |
michael@0 | 359 | endif |
michael@0 | 360 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 361 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 362 | $(join ^,base/base.target.mk)))),) |
michael@0 | 363 | include base/base.target.mk |
michael@0 | 364 | endif |
michael@0 | 365 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 366 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 367 | $(join ^,net/net.target.mk)))),) |
michael@0 | 368 | include net/net.target.mk |
michael@0 | 369 | endif |
michael@0 | 370 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 371 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 372 | $(join ^,peerconnection_client.target.mk)))),) |
michael@0 | 373 | include peerconnection_client.target.mk |
michael@0 | 374 | endif |
michael@0 | 375 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 376 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 377 | $(join ^,third_party/expat/expat.target.mk)))),) |
michael@0 | 378 | include third_party/expat/expat.target.mk |
michael@0 | 379 | endif |
michael@0 | 380 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 381 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 382 | $(join ^,third_party/jsoncpp/jsoncpp.target.mk)))),) |
michael@0 | 383 | include third_party/jsoncpp/jsoncpp.target.mk |
michael@0 | 384 | endif |
michael@0 | 385 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 386 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 387 | $(join ^,third_party/libjingle/libjingle.target.mk)))),) |
michael@0 | 388 | include third_party/libjingle/libjingle.target.mk |
michael@0 | 389 | endif |
michael@0 | 390 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 391 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 392 | $(join ^,third_party/libjingle/libjingle_p2p.target.mk)))),) |
michael@0 | 393 | include third_party/libjingle/libjingle_p2p.target.mk |
michael@0 | 394 | endif |
michael@0 | 395 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 396 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 397 | $(join ^,third_party/libjingle/libjingle_peerconnection.target.mk)))),) |
michael@0 | 398 | include third_party/libjingle/libjingle_peerconnection.target.mk |
michael@0 | 399 | endif |
michael@0 | 400 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 401 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 402 | $(join ^,third_party/libjingle/peerconnection_server.target.mk)))),) |
michael@0 | 403 | include third_party/libjingle/peerconnection_server.target.mk |
michael@0 | 404 | endif |
michael@0 | 405 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 406 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 407 | $(join ^,third_party/libjpeg_turbo/libjpeg.target.mk)))),) |
michael@0 | 408 | include third_party/libjpeg_turbo/libjpeg.target.mk |
michael@0 | 409 | endif |
michael@0 | 410 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 411 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 412 | $(join ^,third_party/libsrtp/libsrtp.target.mk)))),) |
michael@0 | 413 | include third_party/libsrtp/libsrtp.target.mk |
michael@0 | 414 | endif |
michael@0 | 415 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 416 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 417 | $(join ^,third_party/libsrtp/rdbx_driver.target.mk)))),) |
michael@0 | 418 | include third_party/libsrtp/rdbx_driver.target.mk |
michael@0 | 419 | endif |
michael@0 | 420 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 421 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 422 | $(join ^,third_party/libsrtp/replay_driver.target.mk)))),) |
michael@0 | 423 | include third_party/libsrtp/replay_driver.target.mk |
michael@0 | 424 | endif |
michael@0 | 425 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 426 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 427 | $(join ^,third_party/libsrtp/roc_driver.target.mk)))),) |
michael@0 | 428 | include third_party/libsrtp/roc_driver.target.mk |
michael@0 | 429 | endif |
michael@0 | 430 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 431 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 432 | $(join ^,third_party/libsrtp/rtpw.target.mk)))),) |
michael@0 | 433 | include third_party/libsrtp/rtpw.target.mk |
michael@0 | 434 | endif |
michael@0 | 435 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 436 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 437 | $(join ^,third_party/libsrtp/srtp_driver.target.mk)))),) |
michael@0 | 438 | include third_party/libsrtp/srtp_driver.target.mk |
michael@0 | 439 | endif |
michael@0 | 440 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 441 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 442 | $(join ^,third_party/libsrtp/srtp_runtest.target.mk)))),) |
michael@0 | 443 | include third_party/libsrtp/srtp_runtest.target.mk |
michael@0 | 444 | endif |
michael@0 | 445 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 446 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 447 | $(join ^,third_party/libsrtp/srtp_test_aes_calc.target.mk)))),) |
michael@0 | 448 | include third_party/libsrtp/srtp_test_aes_calc.target.mk |
michael@0 | 449 | endif |
michael@0 | 450 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 451 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 452 | $(join ^,third_party/libsrtp/srtp_test_cipher_driver.target.mk)))),) |
michael@0 | 453 | include third_party/libsrtp/srtp_test_cipher_driver.target.mk |
michael@0 | 454 | endif |
michael@0 | 455 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 456 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 457 | $(join ^,third_party/libsrtp/srtp_test_datatypes_driver.target.mk)))),) |
michael@0 | 458 | include third_party/libsrtp/srtp_test_datatypes_driver.target.mk |
michael@0 | 459 | endif |
michael@0 | 460 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 461 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 462 | $(join ^,third_party/libsrtp/srtp_test_env.target.mk)))),) |
michael@0 | 463 | include third_party/libsrtp/srtp_test_env.target.mk |
michael@0 | 464 | endif |
michael@0 | 465 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 466 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 467 | $(join ^,third_party/libsrtp/srtp_test_kernel_driver.target.mk)))),) |
michael@0 | 468 | include third_party/libsrtp/srtp_test_kernel_driver.target.mk |
michael@0 | 469 | endif |
michael@0 | 470 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 471 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 472 | $(join ^,third_party/libsrtp/srtp_test_rand_gen.target.mk)))),) |
michael@0 | 473 | include third_party/libsrtp/srtp_test_rand_gen.target.mk |
michael@0 | 474 | endif |
michael@0 | 475 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 476 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 477 | $(join ^,third_party/libsrtp/srtp_test_sha1_driver.target.mk)))),) |
michael@0 | 478 | include third_party/libsrtp/srtp_test_sha1_driver.target.mk |
michael@0 | 479 | endif |
michael@0 | 480 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 481 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 482 | $(join ^,third_party/libsrtp/srtp_test_stat_driver.target.mk)))),) |
michael@0 | 483 | include third_party/libsrtp/srtp_test_stat_driver.target.mk |
michael@0 | 484 | endif |
michael@0 | 485 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 486 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 487 | $(join ^,third_party/libvpx/gen_asm_offsets.target.mk)))),) |
michael@0 | 488 | include third_party/libvpx/gen_asm_offsets.target.mk |
michael@0 | 489 | endif |
michael@0 | 490 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 491 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 492 | $(join ^,third_party/libvpx/libvpx.target.mk)))),) |
michael@0 | 493 | include third_party/libvpx/libvpx.target.mk |
michael@0 | 494 | endif |
michael@0 | 495 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 496 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 497 | $(join ^,third_party/libvpx/libvpx_asm_offsets.target.mk)))),) |
michael@0 | 498 | include third_party/libvpx/libvpx_asm_offsets.target.mk |
michael@0 | 499 | endif |
michael@0 | 500 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 501 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 502 | $(join ^,third_party/libvpx/libvpx_obj_int_extract.host.mk)))),) |
michael@0 | 503 | include third_party/libvpx/libvpx_obj_int_extract.host.mk |
michael@0 | 504 | endif |
michael@0 | 505 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 506 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 507 | $(join ^,third_party/libvpx/simple_decoder.target.mk)))),) |
michael@0 | 508 | include third_party/libvpx/simple_decoder.target.mk |
michael@0 | 509 | endif |
michael@0 | 510 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 511 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 512 | $(join ^,third_party/libvpx/simple_encoder.target.mk)))),) |
michael@0 | 513 | include third_party/libvpx/simple_encoder.target.mk |
michael@0 | 514 | endif |
michael@0 | 515 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 516 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 517 | $(join ^,third_party/libyuv/libyuv.target.mk)))),) |
michael@0 | 518 | include third_party/libyuv/libyuv.target.mk |
michael@0 | 519 | endif |
michael@0 | 520 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 521 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 522 | $(join ^,third_party/protobuf/protobuf_full_do_not_use.host.mk)))),) |
michael@0 | 523 | include third_party/protobuf/protobuf_full_do_not_use.host.mk |
michael@0 | 524 | endif |
michael@0 | 525 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 526 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 527 | $(join ^,third_party/protobuf/protobuf_full_do_not_use.target.mk)))),) |
michael@0 | 528 | include third_party/protobuf/protobuf_full_do_not_use.target.mk |
michael@0 | 529 | endif |
michael@0 | 530 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 531 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 532 | $(join ^,third_party/protobuf/protobuf_lite.host.mk)))),) |
michael@0 | 533 | include third_party/protobuf/protobuf_lite.host.mk |
michael@0 | 534 | endif |
michael@0 | 535 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 536 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 537 | $(join ^,third_party/protobuf/protobuf_lite.target.mk)))),) |
michael@0 | 538 | include third_party/protobuf/protobuf_lite.target.mk |
michael@0 | 539 | endif |
michael@0 | 540 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 541 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 542 | $(join ^,third_party/protobuf/protoc.host.mk)))),) |
michael@0 | 543 | include third_party/protobuf/protoc.host.mk |
michael@0 | 544 | endif |
michael@0 | 545 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 546 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 547 | $(join ^,third_party/protobuf/py_proto.target.mk)))),) |
michael@0 | 548 | include third_party/protobuf/py_proto.target.mk |
michael@0 | 549 | endif |
michael@0 | 550 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 551 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 552 | $(join ^,third_party/webrtc/common_audio/resampler.target.mk)))),) |
michael@0 | 553 | include third_party/webrtc/common_audio/resampler.target.mk |
michael@0 | 554 | endif |
michael@0 | 555 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 556 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 557 | $(join ^,third_party/webrtc/common_audio/signal_processing.target.mk)))),) |
michael@0 | 558 | include third_party/webrtc/common_audio/signal_processing.target.mk |
michael@0 | 559 | endif |
michael@0 | 560 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 561 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 562 | $(join ^,third_party/webrtc/common_audio/vad.target.mk)))),) |
michael@0 | 563 | include third_party/webrtc/common_audio/vad.target.mk |
michael@0 | 564 | endif |
michael@0 | 565 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 566 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 567 | $(join ^,third_party/webrtc/common_video/common_video.target.mk)))),) |
michael@0 | 568 | include third_party/webrtc/common_video/common_video.target.mk |
michael@0 | 569 | endif |
michael@0 | 570 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 571 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 572 | $(join ^,third_party/webrtc/modules/CNG.target.mk)))),) |
michael@0 | 573 | include third_party/webrtc/modules/CNG.target.mk |
michael@0 | 574 | endif |
michael@0 | 575 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 576 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 577 | $(join ^,third_party/webrtc/modules/G711.target.mk)))),) |
michael@0 | 578 | include third_party/webrtc/modules/G711.target.mk |
michael@0 | 579 | endif |
michael@0 | 580 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 581 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 582 | $(join ^,third_party/webrtc/modules/G722.target.mk)))),) |
michael@0 | 583 | include third_party/webrtc/modules/G722.target.mk |
michael@0 | 584 | endif |
michael@0 | 585 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 586 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 587 | $(join ^,third_party/webrtc/modules/NetEq.target.mk)))),) |
michael@0 | 588 | include third_party/webrtc/modules/NetEq.target.mk |
michael@0 | 589 | endif |
michael@0 | 590 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 591 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 592 | $(join ^,third_party/webrtc/modules/PCM16B.target.mk)))),) |
michael@0 | 593 | include third_party/webrtc/modules/PCM16B.target.mk |
michael@0 | 594 | endif |
michael@0 | 595 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 596 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 597 | $(join ^,third_party/webrtc/modules/audio_coding_module.target.mk)))),) |
michael@0 | 598 | include third_party/webrtc/modules/audio_coding_module.target.mk |
michael@0 | 599 | endif |
michael@0 | 600 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 601 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 602 | $(join ^,third_party/webrtc/modules/audio_conference_mixer.target.mk)))),) |
michael@0 | 603 | include third_party/webrtc/modules/audio_conference_mixer.target.mk |
michael@0 | 604 | endif |
michael@0 | 605 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 606 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 607 | $(join ^,third_party/webrtc/modules/audio_device.target.mk)))),) |
michael@0 | 608 | include third_party/webrtc/modules/audio_device.target.mk |
michael@0 | 609 | endif |
michael@0 | 610 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 611 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 612 | $(join ^,third_party/webrtc/modules/audio_processing.target.mk)))),) |
michael@0 | 613 | include third_party/webrtc/modules/audio_processing.target.mk |
michael@0 | 614 | endif |
michael@0 | 615 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 616 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 617 | $(join ^,third_party/webrtc/modules/audio_processing_sse2.target.mk)))),) |
michael@0 | 618 | include third_party/webrtc/modules/audio_processing_sse2.target.mk |
michael@0 | 619 | endif |
michael@0 | 620 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 621 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 622 | $(join ^,third_party/webrtc/modules/audioproc_debug_proto.target.mk)))),) |
michael@0 | 623 | include third_party/webrtc/modules/audioproc_debug_proto.target.mk |
michael@0 | 624 | endif |
michael@0 | 625 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 626 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 627 | $(join ^,third_party/webrtc/modules/bitrate_controller.target.mk)))),) |
michael@0 | 628 | include third_party/webrtc/modules/bitrate_controller.target.mk |
michael@0 | 629 | endif |
michael@0 | 630 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 631 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 632 | $(join ^,third_party/webrtc/modules/iLBC.target.mk)))),) |
michael@0 | 633 | include third_party/webrtc/modules/iLBC.target.mk |
michael@0 | 634 | endif |
michael@0 | 635 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 636 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 637 | $(join ^,third_party/webrtc/modules/iSAC.target.mk)))),) |
michael@0 | 638 | include third_party/webrtc/modules/iSAC.target.mk |
michael@0 | 639 | endif |
michael@0 | 640 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 641 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 642 | $(join ^,third_party/webrtc/modules/iSACFix.target.mk)))),) |
michael@0 | 643 | include third_party/webrtc/modules/iSACFix.target.mk |
michael@0 | 644 | endif |
michael@0 | 645 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 646 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 647 | $(join ^,third_party/webrtc/modules/media_file.target.mk)))),) |
michael@0 | 648 | include third_party/webrtc/modules/media_file.target.mk |
michael@0 | 649 | endif |
michael@0 | 650 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 651 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 652 | $(join ^,third_party/webrtc/modules/remote_bitrate_estimator.target.mk)))),) |
michael@0 | 653 | include third_party/webrtc/modules/remote_bitrate_estimator.target.mk |
michael@0 | 654 | endif |
michael@0 | 655 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 656 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 657 | $(join ^,third_party/webrtc/modules/rtp_rtcp.target.mk)))),) |
michael@0 | 658 | include third_party/webrtc/modules/rtp_rtcp.target.mk |
michael@0 | 659 | endif |
michael@0 | 660 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 661 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 662 | $(join ^,third_party/webrtc/modules/udp_transport.target.mk)))),) |
michael@0 | 663 | include third_party/webrtc/modules/udp_transport.target.mk |
michael@0 | 664 | endif |
michael@0 | 665 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 666 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 667 | $(join ^,third_party/webrtc/modules/video_capture_module.target.mk)))),) |
michael@0 | 668 | include third_party/webrtc/modules/video_capture_module.target.mk |
michael@0 | 669 | endif |
michael@0 | 670 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 671 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 672 | $(join ^,third_party/webrtc/modules/video_coding/codecs/vp8/webrtc_vp8.target.mk)))),) |
michael@0 | 673 | include third_party/webrtc/modules/video_coding/codecs/vp8/webrtc_vp8.target.mk |
michael@0 | 674 | endif |
michael@0 | 675 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 676 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 677 | $(join ^,third_party/webrtc/modules/video_processing.target.mk)))),) |
michael@0 | 678 | include third_party/webrtc/modules/video_processing.target.mk |
michael@0 | 679 | endif |
michael@0 | 680 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 681 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 682 | $(join ^,third_party/webrtc/modules/video_processing_sse2.target.mk)))),) |
michael@0 | 683 | include third_party/webrtc/modules/video_processing_sse2.target.mk |
michael@0 | 684 | endif |
michael@0 | 685 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 686 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 687 | $(join ^,third_party/webrtc/modules/video_render_module.target.mk)))),) |
michael@0 | 688 | include third_party/webrtc/modules/video_render_module.target.mk |
michael@0 | 689 | endif |
michael@0 | 690 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 691 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 692 | $(join ^,third_party/webrtc/modules/webrtc_i420.target.mk)))),) |
michael@0 | 693 | include third_party/webrtc/modules/webrtc_i420.target.mk |
michael@0 | 694 | endif |
michael@0 | 695 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 696 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 697 | $(join ^,third_party/webrtc/modules/webrtc_utility.target.mk)))),) |
michael@0 | 698 | include third_party/webrtc/modules/webrtc_utility.target.mk |
michael@0 | 699 | endif |
michael@0 | 700 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 701 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 702 | $(join ^,third_party/webrtc/modules/webrtc_video_coding.target.mk)))),) |
michael@0 | 703 | include third_party/webrtc/modules/webrtc_video_coding.target.mk |
michael@0 | 704 | endif |
michael@0 | 705 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 706 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 707 | $(join ^,third_party/webrtc/system_wrappers/source/system_wrappers.target.mk)))),) |
michael@0 | 708 | include third_party/webrtc/system_wrappers/source/system_wrappers.target.mk |
michael@0 | 709 | endif |
michael@0 | 710 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 711 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 712 | $(join ^,third_party/webrtc/video_engine/video_engine_core.target.mk)))),) |
michael@0 | 713 | include third_party/webrtc/video_engine/video_engine_core.target.mk |
michael@0 | 714 | endif |
michael@0 | 715 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 716 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 717 | $(join ^,third_party/webrtc/voice_engine/voice_engine_core.target.mk)))),) |
michael@0 | 718 | include third_party/webrtc/voice_engine/voice_engine_core.target.mk |
michael@0 | 719 | endif |
michael@0 | 720 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 721 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 722 | $(join ^,third_party/yasm/config_sources.host.mk)))),) |
michael@0 | 723 | include third_party/yasm/config_sources.host.mk |
michael@0 | 724 | endif |
michael@0 | 725 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 726 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 727 | $(join ^,third_party/yasm/generate_files.host.mk)))),) |
michael@0 | 728 | include third_party/yasm/generate_files.host.mk |
michael@0 | 729 | endif |
michael@0 | 730 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 731 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 732 | $(join ^,third_party/yasm/genmacro.host.mk)))),) |
michael@0 | 733 | include third_party/yasm/genmacro.host.mk |
michael@0 | 734 | endif |
michael@0 | 735 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 736 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 737 | $(join ^,third_party/yasm/genmodule.host.mk)))),) |
michael@0 | 738 | include third_party/yasm/genmodule.host.mk |
michael@0 | 739 | endif |
michael@0 | 740 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 741 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 742 | $(join ^,third_party/yasm/genperf.host.mk)))),) |
michael@0 | 743 | include third_party/yasm/genperf.host.mk |
michael@0 | 744 | endif |
michael@0 | 745 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 746 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 747 | $(join ^,third_party/yasm/genperf_libs.host.mk)))),) |
michael@0 | 748 | include third_party/yasm/genperf_libs.host.mk |
michael@0 | 749 | endif |
michael@0 | 750 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 751 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 752 | $(join ^,third_party/yasm/genstring.host.mk)))),) |
michael@0 | 753 | include third_party/yasm/genstring.host.mk |
michael@0 | 754 | endif |
michael@0 | 755 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 756 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 757 | $(join ^,third_party/yasm/genversion.host.mk)))),) |
michael@0 | 758 | include third_party/yasm/genversion.host.mk |
michael@0 | 759 | endif |
michael@0 | 760 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 761 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 762 | $(join ^,third_party/yasm/re2c.host.mk)))),) |
michael@0 | 763 | include third_party/yasm/re2c.host.mk |
michael@0 | 764 | endif |
michael@0 | 765 | ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ |
michael@0 | 766 | $(findstring $(join ^,$(prefix)),\ |
michael@0 | 767 | $(join ^,third_party/yasm/yasm.host.mk)))),) |
michael@0 | 768 | include third_party/yasm/yasm.host.mk |
michael@0 | 769 | endif |
michael@0 | 770 | |
michael@0 | 771 | quiet_cmd_regen_makefile = ACTION Regenerating $@ |
michael@0 | 772 | cmd_regen_makefile = ./build/gyp_chromium -fmake --ignore-environment "--toplevel-dir=." -I/home/jesup/src/mozilla/webrtc_import7/webrtc_update/trunk/build/common.gypi -I/home/jesup/src/mozilla/webrtc_import7/webrtc_update/trunk/supplement/supplement.gypi "--depth=." peerconnection_all.gyp |
michael@0 | 773 | Makefile: third_party/webrtc/build/common.gypi third_party/webrtc/common_video/common_video.gyp third_party/webrtc/video_engine/video_engine.gyp third_party/webrtc/modules/audio_coding/neteq/neteq.gypi third_party/libvpx/libvpx_srcs_arm.gypi build/filename_rules.gypi third_party/webrtc/modules/media_file/source/media_file.gypi third_party/jsoncpp/jsoncpp.gyp base/base.gyp third_party/webrtc/modules/remote_bitrate_estimator/remote_bitrate_estimator.gypi third_party/webrtc/modules/rtp_rtcp/source/rtp_rtcp_tests.gypi third_party/webrtc/modules/audio_processing/audio_processing.gypi third_party/webrtc/modules/video_processing/main/source/video_processing.gypi third_party/webrtc/system_wrappers/source/system_wrappers.gyp supplement/supplement.gypi third_party/webrtc/modules/audio_coding/codecs/ilbc/ilbc.gypi third_party/webrtc/modules/utility/source/utility.gypi third_party/webrtc/voice_engine/test/voice_engine_tests.gypi build/internal/release_impl.gypi third_party/webrtc/modules/audio_coding/codecs/isac/isacfix_test.gypi third_party/yasm/yasm_compile.gypi net/net.gyp third_party/webrtc/modules/audio_coding/codecs/isac/isac_test.gypi third_party/webrtc/modules/audio_coding/codecs/cng/cng.gypi third_party/libvpx/libvpx_srcs_x86_64.gypi third_party/webrtc/modules/audio_coding/codecs/pcm16b/pcm16b.gypi third_party/webrtc/modules/audio_device/audio_device.gypi third_party/libjingle/libjingle.gyp build/internal/release_impl_official.gypi build/internal/release_defaults.gypi third_party/webrtc/modules/rtp_rtcp/source/rtp_rtcp.gypi third_party/webrtc/modules/video_render/main/source/video_render.gypi third_party/libjpeg_turbo/libjpeg.gyp third_party/webrtc/modules/rtp_rtcp/test/testAPI/test_api.gypi third_party/webrtc/modules/udp_transport/source/udp_transport.gypi third_party/libvpx/libvpx_srcs_arm_neon.gypi third_party/webrtc/voice_engine/voice_engine.gyp third_party/webrtc/common_audio/resampler/resampler.gypi third_party/webrtc/modules/audio_conference_mixer/source/audio_conference_mixer.gypi build/win_precompile.gypi third_party/expat/expat.gyp third_party/webrtc/modules/video_coding/main/source/video_coding_test.gypi third_party/yasm/yasm.gyp third_party/webrtc/modules/video_capture/main/source/video_capture.gypi third_party/webrtc/video_engine/test/libvietest/libvietest.gypi third_party/webrtc/modules/video_coding/codecs/vp8/vp8.gyp third_party/webrtc/modules/bitrate_controller/bitrate_controller.gypi third_party/webrtc/modules/audio_coding/codecs/isac/fix/source/isacfix.gypi build/ios/mac_build.gypi third_party/webrtc/modules/video_coding/main/source/video_coding.gypi third_party/webrtc/modules/audio_coding/main/source/audio_coding_module.gypi build/release.gypi peerconnection.gyp build/common.gypi third_party/webrtc/video_engine/video_engine_core.gypi third_party/webrtc/build/arm_neon.gypi third_party/libvpx/libvpx.gyp third_party/webrtc/common_audio/common_audio.gyp third_party/libyuv/libyuv.gyp third_party/webrtc/modules/audio_coding/codecs/isac/main/source/isac.gypi third_party/webrtc/modules/video_processing/main/test/vpm_tests.gypi third_party/webrtc/voice_engine/voice_engine_core.gypi third_party/webrtc/modules/rtp_rtcp/test/testFec/test_fec.gypi third_party/webrtc/modules/video_coding/codecs/tools/video_codecs_tools.gypi third_party/libsrtp/libsrtp.gyp peerconnection_all.gyp third_party/webrtc/modules/audio_coding/codecs/g711/g711.gypi third_party/webrtc/modules/audio_processing/audio_processing_tests.gypi third_party/libvpx/libvpx_srcs_x86.gypi third_party/webrtc/modules/modules.gyp third_party/webrtc/common_audio/signal_processing/signal_processing.gypi third_party/webrtc/video_engine/test/auto_test/vie_auto_test.gypi third_party/libvpx/libvpx_srcs_mips.gypi third_party/webrtc/common_audio/vad/vad.gypi third_party/webrtc/modules/video_coding/codecs/test/video_codecs_test_framework.gypi third_party/webrtc/modules/video_coding/codecs/i420/main/source/i420.gypi third_party/webrtc/modules/audio_coding/codecs/g722/g722.gypi third_party/webrtc/modules/video_coding/codecs/test_framework/test_framework.gypi third_party/webrtc/build/protoc.gypi third_party/protobuf/protobuf.gyp |
michael@0 | 774 | $(call do_cmd,regen_makefile) |
michael@0 | 775 | |
michael@0 | 776 | # "all" is a concatenation of the "all" targets from all the included |
michael@0 | 777 | # sub-makefiles. This is just here to clarify. |
michael@0 | 778 | all: |
michael@0 | 779 | |
michael@0 | 780 | # Add in dependency-tracking rules. $(all_deps) is the list of every single |
michael@0 | 781 | # target in our tree. Only consider the ones with .d (dependency) info: |
michael@0 | 782 | d_files := $(wildcard $(foreach f,$(all_deps),$(depsdir)/$(f).d)) |
michael@0 | 783 | ifneq ($(d_files),) |
michael@0 | 784 | include $(d_files) |
michael@0 | 785 | endif |