diff mbox

[V2,4/7] kbuild: always run gcc -E on *.dts, remove cmd_dtc_cpp

Message ID 1365032098-22825-4-git-send-email-swarren@wwwdotorg.org (mailing list archive)
State New, archived
Headers show

Commit Message

Stephen Warren April 3, 2013, 11:34 p.m. UTC
From: Stephen Warren <swarren@nvidia.com>

Replace cmd_dtc with cmd_dtc_cpp, and delete the latter.

Previously, a special file extension (.dtsp) was required to trigger
the C pre-processor to run on device tree files. This was ugly. Now that
previous changes have enhanced cmd_dtc_cpp to collect dependency
information from both gcc -E and dtc, we can transparently run the pre-
processor on all device tree files, irrespective of whether they

Signed-off-by: Stephen Warren <swarren@nvidia.com>
---
v2: Add boot/dts from the source tree to dtc include path, so that make
    O= works; that puts the .dts file that's passed to dtc outside the
    source tree, so the include path adjustment is required to find
    include files in the source tree.
---
 scripts/Makefile.lib |   14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

Comments

Emilio López April 4, 2013, 12:02 a.m. UTC | #1
Hi Stephen,

El 03/04/13 20:34, Stephen Warren escribió:
> From: Stephen Warren <swarren@nvidia.com>
> 
> Replace cmd_dtc with cmd_dtc_cpp, and delete the latter.
> 
> Previously, a special file extension (.dtsp) was required to trigger
> the C pre-processor to run on device tree files. This was ugly. Now that
> previous changes have enhanced cmd_dtc_cpp to collect dependency
> information from both gcc -E and dtc, we can transparently run the pre-
> processor on all device tree files, irrespective of whether they
> 

I think a line got dropped on the commit description by mistake.

Regards,

Emilio
Stephen Warren April 4, 2013, 4:41 p.m. UTC | #2
On 04/03/2013 06:02 PM, Emilio López wrote:
> Hi Stephen,
> 
> El 03/04/13 20:34, Stephen Warren escribió:
>> From: Stephen Warren <swarren@nvidia.com>
>>
>> Replace cmd_dtc with cmd_dtc_cpp, and delete the latter.
>>
>> Previously, a special file extension (.dtsp) was required to trigger
>> the C pre-processor to run on device tree files. This was ugly. Now that
>> previous changes have enhanced cmd_dtc_cpp to collect dependency
>> information from both gcc -E and dtc, we can transparently run the pre-
>> processor on all device tree files, irrespective of whether they
>>
> 
> I think a line got dropped on the commit description by mistake.

Thanks for noticing. I've locally added the following line to the end of
the description, but won't repost unless there's some other reason, or
the series is ack'd enough to actually be applied:

use /include/ or #include syntax to include *.dtsi.
diff mbox

Patch

diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 6104335..3e73dfd 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -269,21 +269,17 @@  $(obj)/%.dtb.S: $(obj)/%.dtb
 	$(call cmd,dt_S_dtb)
 
 quiet_cmd_dtc = DTC     $@
-cmd_dtc = $(objtree)/scripts/dtc/dtc -O dtb -o $@ -b 0 $(DTC_FLAGS) -d $(depfile) $<
+cmd_dtc = $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
+	$(objtree)/scripts/dtc/dtc -O dtb -o $@ -b 0 \
+		-i $(srctree)/arch/$(SRCARCH)/boot/dts $(DTC_FLAGS) \
+		-d $(depfile).dtc $(dtc-tmp) ; \
+	cat $(depfile).pre $(depfile).dtc > $(depfile)
 
 $(obj)/%.dtb: $(src)/%.dts FORCE
 	$(call if_changed_dep,dtc)
 
 dtc-tmp = $(subst $(comma),_,$(dot-target).dts)
 
-quiet_cmd_dtc_cpp = DTC+CPP $@
-cmd_dtc_cpp = $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
-	$(objtree)/scripts/dtc/dtc -O dtb -o $@ -b 0 $(DTC_FLAGS) -d $(depfile).dtc $(dtc-tmp) ; \
-	cat $(depfile).pre $(depfile).dtc > $(depfile)
-
-$(obj)/%.dtb: $(src)/%.dtsp FORCE
-	$(call if_changed_dep,dtc_cpp)
-
 # Bzip2
 # ---------------------------------------------------------------------------