source: trunk/kBuild/tools/StandardDTrace.kmk@ 3553

Last change on this file since 3553 was 3497, checked in by bird, 4 years ago

StandardDTrace.kmk: Don't include precompiled headers from gcc/clang in the list of object files we pass to dtrace. 2nd try.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 2.0 KB
Line 
1# $Id: StandardDTrace.kmk 3497 2021-03-31 19:36:02Z bird $
2## @file
3# Standard DTrace tool.
4#
5
6#
7# Copyright (c) 2012-2017 knut st. osmundsen <bird-kBuild-spam-xviiv@anduin.net>
8#
9# This file is part of kBuild.
10#
11# kBuild is free software; you can redistribute it and/or modify
12# it under the terms of the GNU General Public License as published by
13# the Free Software Foundation; either version 2 of the License, or
14# (at your option) any later version.
15#
16# kBuild is distributed in the hope that it will be useful,
17# but WITHOUT ANY WARRANTY; without even the implied warranty of
18# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19# GNU General Public License for more details.
20#
21# You should have received a copy of the GNU General Public License
22# along with kBuild; if not, write to the Free Software
23# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
24#
25#
26# As a special exception you are granted permission to include this file, via
27# the kmk include directive, as you wish without this in itself causing the
28# resulting makefile, program or whatever to be covered by the GPL license.
29# This exception does not however invalidate any other reasons why the makefile,
30# program, whatever should not be covered the GPL.
31#
32#
33
34TOOL_StandardDTrace := Standard DTrace or similar.
35TOOL_StandardDTrace_DTRACE := dtrace
36
37TOOL_StandardDTrace_DTRACE_HDR_FLAGS := -h
38define TOOL_StandardDTrace_DTRACE_HDR_CMDS
39 $(QUIET)$(TOOL_StandardDTrace_DTRACE) $(flags) \
40 -o "$(out)" -s "$(source)"
41endef
42
43TOOL_StandardDTrace_DTRACE_OBJ_NOT_NEEDED := darwin
44TOOL_StandardDTrace_DTRACE_OBJ_FLAGS := -G
45# Note! We have to exclude gcc style precompiled headers here as they are automatically
46# added to the list of object files (see func_kbuild_source_one in kbuild.c).
47define TOOL_StandardDTrace_DTRACE_OBJ_CMDS
48 $(QUIET)$(TOOL_StandardDTrace_DTRACE) \
49 $(if-expr $(intersects $(bld_trg_arch),$(KBUILD_ARCHES_64)),-64,-32) \
50 $(flags) \
51 -o "$(out)" -s "$(source)" \
52 $$(filter-out %-dtrace-object-format.o %.h.gch, $$($(target)_2_OBJS))
53endef
54
Note: See TracBrowser for help on using the repository browser.