Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On Thu, Nov 12, 2015 at 09:56:26AM -0700, Simon Glass wrote: > Hi Nishanth, > > On 12 November 2015 at 09:45, Nishanth Menonwrote: > > On 11/12/2015 10:22 AM, Tom Rini wrote: > >> On Thu, Nov 12, 2015 at 09:16:00AM -0700, Simon Glass wrote: > >>> Hi, > >>> > >>> On 10 November 2015 at 08:34, Nishanth Menon wrote: > On 11/10/2015 08:55 AM, Nishanth Menon wrote: > > On 12:25-20151110, Masahiro Yamada wrote: > >> 2015-11-10 5:24 GMT+09:00 Simon Glass : > > I am unhappy because I was hoping > > we could stop creating symbolic links during building > > in a long run. > >>> > >>> But how? I don't see that it is possible if we want to have a sensible > >>> prefix for each include. > >> > >> > >> [step 1] move SoC-specific headers to > >> arch//mach-/include/mach > >> > >> [step 2] change #include to #include > >> > >> [step 3] Drop CONFIG_CREATE_ARCH_SYMLINK > >> > >> > >> For example, mach-uniphier finished [1] and [2], > >> so it does not require the symbolic link. > >> (several ARM SoCs finished [1]) > >> > >> > >> I think this is the way ARM should do, at least. > >> > >> The topic of debate is PowerPC. Should we introduce mach- > >> directories or not? > >> > > > > OK: Option 4: > > > > How about this guys? include/board-common is an actual directory > > and instead of headers being located in board/$(VENDOR)/common or > > board/$(VENDOR)/common/include, we move the common headers to > > include/board/$(VENDOR)/ Directory. This will make the usage as follows: > > > > #include <$(VENDOR)/xyz.h> > > > > I know this does not exactly meet Simon's suggestion here of being > > identifiably board-common/xyz.h -> but at least knowing the prefix as > > vendor name implies a board common header. > > > > diff --git a/Makefile b/Makefile > > index 3c21f8ddf9e9..2bd684199512 100644 > > --- a/Makefile > > +++ b/Makefile > > @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) > > # U-Boot objectsorder is important (i.e. start must be first) > > > > HAVE_VENDOR_COMMON_LIB = $(if $(wildcard > > $(srctree)/board/$(VENDOR)/common/Makefile),y,n) > > +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), > > -I$(srctree)/include/board-common) > > > > libs-y += lib/ > > libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ > > > > How does this sound? > > > Spin off from option 4 is option 5 -> where we dont have the Makefile > change. the board includes are located in > include/board-common/$(VENDOR)/ directory. > > > Usage will be: > > #include > > > Almost meets Simon's needs(identifiable as board common header) and I > think matches what Masahiro-san wants as well(no symlinks). > > > OK, i am out of ideas at least for now... Any other suggestions / > opinions? > >>> > >>> If we don't want a symlink then option 5 seems good to me. Thanks very > >>> much for looking into this in so much detail, Nishanth. > >>> > >>> Thoughts - Masahiro? Tom? > >> > >> No symlink should mean Masahiro is happy, so if you're fine with #5 then > >> that works for me too, thanks! > >> > > > > I just have yet another option 6 variation -> looking at the mach > > strategy: > > > > UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), > > -I$(srctree)/board/$(VENDOR)/common/include) > > > > vendors should create common headers in > > board/$(VENDOR)/include/board-common/xyz.h > > > > the users then can do: > > #include > > > > How does that sound? ofcourse, similar to mach, it requires some > > discipline.. > > Looks good, and it's nice that the files are in board/ #6 it is, thanks again Nishanth! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
Hi Nishanth, On 12 November 2015 at 09:45, Nishanth Menonwrote: > On 11/12/2015 10:22 AM, Tom Rini wrote: >> On Thu, Nov 12, 2015 at 09:16:00AM -0700, Simon Glass wrote: >>> Hi, >>> >>> On 10 November 2015 at 08:34, Nishanth Menon wrote: On 11/10/2015 08:55 AM, Nishanth Menon wrote: > On 12:25-20151110, Masahiro Yamada wrote: >> 2015-11-10 5:24 GMT+09:00 Simon Glass : > I am unhappy because I was hoping > we could stop creating symbolic links during building > in a long run. >>> >>> But how? I don't see that it is possible if we want to have a sensible >>> prefix for each include. >> >> >> [step 1] move SoC-specific headers to >> arch//mach-/include/mach >> >> [step 2] change #include to #include >> >> [step 3] Drop CONFIG_CREATE_ARCH_SYMLINK >> >> >> For example, mach-uniphier finished [1] and [2], >> so it does not require the symbolic link. >> (several ARM SoCs finished [1]) >> >> >> I think this is the way ARM should do, at least. >> >> The topic of debate is PowerPC. Should we introduce mach- >> directories or not? >> > > OK: Option 4: > > How about this guys? include/board-common is an actual directory > and instead of headers being located in board/$(VENDOR)/common or > board/$(VENDOR)/common/include, we move the common headers to > include/board/$(VENDOR)/ Directory. This will make the usage as follows: > > #include <$(VENDOR)/xyz.h> > > I know this does not exactly meet Simon's suggestion here of being > identifiably board-common/xyz.h -> but at least knowing the prefix as > vendor name implies a board common header. > > diff --git a/Makefile b/Makefile > index 3c21f8ddf9e9..2bd684199512 100644 > --- a/Makefile > +++ b/Makefile > @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) > # U-Boot objectsorder is important (i.e. start must be first) > > HAVE_VENDOR_COMMON_LIB = $(if $(wildcard > $(srctree)/board/$(VENDOR)/common/Makefile),y,n) > +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), > -I$(srctree)/include/board-common) > > libs-y += lib/ > libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ > > How does this sound? > Spin off from option 4 is option 5 -> where we dont have the Makefile change. the board includes are located in include/board-common/$(VENDOR)/ directory. Usage will be: #include Almost meets Simon's needs(identifiable as board common header) and I think matches what Masahiro-san wants as well(no symlinks). OK, i am out of ideas at least for now... Any other suggestions / opinions? >>> >>> If we don't want a symlink then option 5 seems good to me. Thanks very >>> much for looking into this in so much detail, Nishanth. >>> >>> Thoughts - Masahiro? Tom? >> >> No symlink should mean Masahiro is happy, so if you're fine with #5 then >> that works for me too, thanks! >> > > I just have yet another option 6 variation -> looking at the mach > strategy: > > UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), > -I$(srctree)/board/$(VENDOR)/common/include) > > vendors should create common headers in > board/$(VENDOR)/include/board-common/xyz.h > > the users then can do: > #include > > How does that sound? ofcourse, similar to mach, it requires some > discipline.. Looks good, and it's nice that the files are in board/ Regards, Simon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
Hi, On 10 November 2015 at 08:34, Nishanth Menonwrote: > On 11/10/2015 08:55 AM, Nishanth Menon wrote: >> On 12:25-20151110, Masahiro Yamada wrote: >>> 2015-11-10 5:24 GMT+09:00 Simon Glass : >> I am unhappy because I was hoping >> we could stop creating symbolic links during building >> in a long run. But how? I don't see that it is possible if we want to have a sensible prefix for each include. >>> >>> >>> [step 1] move SoC-specific headers to arch//mach-/include/mach >>> >>> [step 2] change #include to #include >>> >>> [step 3] Drop CONFIG_CREATE_ARCH_SYMLINK >>> >>> >>> For example, mach-uniphier finished [1] and [2], >>> so it does not require the symbolic link. >>> (several ARM SoCs finished [1]) >>> >>> >>> I think this is the way ARM should do, at least. >>> >>> The topic of debate is PowerPC. Should we introduce mach- >>> directories or not? >>> >> >> OK: Option 4: >> >> How about this guys? include/board-common is an actual directory >> and instead of headers being located in board/$(VENDOR)/common or >> board/$(VENDOR)/common/include, we move the common headers to >> include/board/$(VENDOR)/ Directory. This will make the usage as follows: >> >> #include <$(VENDOR)/xyz.h> >> >> I know this does not exactly meet Simon's suggestion here of being >> identifiably board-common/xyz.h -> but at least knowing the prefix as >> vendor name implies a board common header. >> >> diff --git a/Makefile b/Makefile >> index 3c21f8ddf9e9..2bd684199512 100644 >> --- a/Makefile >> +++ b/Makefile >> @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) >> # U-Boot objectsorder is important (i.e. start must be first) >> >> HAVE_VENDOR_COMMON_LIB = $(if $(wildcard >> $(srctree)/board/$(VENDOR)/common/Makefile),y,n) >> +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), >> -I$(srctree)/include/board-common) >> >> libs-y += lib/ >> libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ >> >> How does this sound? >> > Spin off from option 4 is option 5 -> where we dont have the Makefile > change. the board includes are located in > include/board-common/$(VENDOR)/ directory. > > > Usage will be: > > #include > > > Almost meets Simon's needs(identifiable as board common header) and I > think matches what Masahiro-san wants as well(no symlinks). > > > OK, i am out of ideas at least for now... Any other suggestions / opinions? If we don't want a symlink then option 5 seems good to me. Thanks very much for looking into this in so much detail, Nishanth. Thoughts - Masahiro? Tom? Regards, Simon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On 11/12/2015 10:22 AM, Tom Rini wrote: > On Thu, Nov 12, 2015 at 09:16:00AM -0700, Simon Glass wrote: >> Hi, >> >> On 10 November 2015 at 08:34, Nishanth Menonwrote: >>> On 11/10/2015 08:55 AM, Nishanth Menon wrote: On 12:25-20151110, Masahiro Yamada wrote: > 2015-11-10 5:24 GMT+09:00 Simon Glass : I am unhappy because I was hoping we could stop creating symbolic links during building in a long run. >> >> But how? I don't see that it is possible if we want to have a sensible >> prefix for each include. > > > [step 1] move SoC-specific headers to arch//mach-/include/mach > > [step 2] change #include to #include > > [step 3] Drop CONFIG_CREATE_ARCH_SYMLINK > > > For example, mach-uniphier finished [1] and [2], > so it does not require the symbolic link. > (several ARM SoCs finished [1]) > > > I think this is the way ARM should do, at least. > > The topic of debate is PowerPC. Should we introduce mach- > directories or not? > OK: Option 4: How about this guys? include/board-common is an actual directory and instead of headers being located in board/$(VENDOR)/common or board/$(VENDOR)/common/include, we move the common headers to include/board/$(VENDOR)/ Directory. This will make the usage as follows: #include <$(VENDOR)/xyz.h> I know this does not exactly meet Simon's suggestion here of being identifiably board-common/xyz.h -> but at least knowing the prefix as vendor name implies a board common header. diff --git a/Makefile b/Makefile index 3c21f8ddf9e9..2bd684199512 100644 --- a/Makefile +++ b/Makefile @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) # U-Boot objectsorder is important (i.e. start must be first) HAVE_VENDOR_COMMON_LIB = $(if $(wildcard $(srctree)/board/$(VENDOR)/common/Makefile),y,n) +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), -I$(srctree)/include/board-common) libs-y += lib/ libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ How does this sound? >>> Spin off from option 4 is option 5 -> where we dont have the Makefile >>> change. the board includes are located in >>> include/board-common/$(VENDOR)/ directory. >>> >>> >>> Usage will be: >>> >>> #include >>> >>> >>> Almost meets Simon's needs(identifiable as board common header) and I >>> think matches what Masahiro-san wants as well(no symlinks). >>> >>> >>> OK, i am out of ideas at least for now... Any other suggestions / opinions? >> >> If we don't want a symlink then option 5 seems good to me. Thanks very >> much for looking into this in so much detail, Nishanth. >> >> Thoughts - Masahiro? Tom? > > No symlink should mean Masahiro is happy, so if you're fine with #5 then > that works for me too, thanks! > I just have yet another option 6 variation -> looking at the mach strategy: UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), -I$(srctree)/board/$(VENDOR)/common/include) vendors should create common headers in board/$(VENDOR)/include/board-common/xyz.h the users then can do: #include How does that sound? ofcourse, similar to mach, it requires some discipline.. -- Regards, Nishanth Menon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On Thu, Nov 12, 2015 at 09:16:00AM -0700, Simon Glass wrote: > Hi, > > On 10 November 2015 at 08:34, Nishanth Menonwrote: > > On 11/10/2015 08:55 AM, Nishanth Menon wrote: > >> On 12:25-20151110, Masahiro Yamada wrote: > >>> 2015-11-10 5:24 GMT+09:00 Simon Glass : > >> I am unhappy because I was hoping > >> we could stop creating symbolic links during building > >> in a long run. > > But how? I don't see that it is possible if we want to have a sensible > prefix for each include. > >>> > >>> > >>> [step 1] move SoC-specific headers to arch//mach-/include/mach > >>> > >>> [step 2] change #include to #include > >>> > >>> [step 3] Drop CONFIG_CREATE_ARCH_SYMLINK > >>> > >>> > >>> For example, mach-uniphier finished [1] and [2], > >>> so it does not require the symbolic link. > >>> (several ARM SoCs finished [1]) > >>> > >>> > >>> I think this is the way ARM should do, at least. > >>> > >>> The topic of debate is PowerPC. Should we introduce mach- > >>> directories or not? > >>> > >> > >> OK: Option 4: > >> > >> How about this guys? include/board-common is an actual directory > >> and instead of headers being located in board/$(VENDOR)/common or > >> board/$(VENDOR)/common/include, we move the common headers to > >> include/board/$(VENDOR)/ Directory. This will make the usage as follows: > >> > >> #include <$(VENDOR)/xyz.h> > >> > >> I know this does not exactly meet Simon's suggestion here of being > >> identifiably board-common/xyz.h -> but at least knowing the prefix as > >> vendor name implies a board common header. > >> > >> diff --git a/Makefile b/Makefile > >> index 3c21f8ddf9e9..2bd684199512 100644 > >> --- a/Makefile > >> +++ b/Makefile > >> @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) > >> # U-Boot objectsorder is important (i.e. start must be first) > >> > >> HAVE_VENDOR_COMMON_LIB = $(if $(wildcard > >> $(srctree)/board/$(VENDOR)/common/Makefile),y,n) > >> +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), > >> -I$(srctree)/include/board-common) > >> > >> libs-y += lib/ > >> libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ > >> > >> How does this sound? > >> > > Spin off from option 4 is option 5 -> where we dont have the Makefile > > change. the board includes are located in > > include/board-common/$(VENDOR)/ directory. > > > > > > Usage will be: > > > > #include > > > > > > Almost meets Simon's needs(identifiable as board common header) and I > > think matches what Masahiro-san wants as well(no symlinks). > > > > > > OK, i am out of ideas at least for now... Any other suggestions / opinions? > > If we don't want a symlink then option 5 seems good to me. Thanks very > much for looking into this in so much detail, Nishanth. > > Thoughts - Masahiro? Tom? No symlink should mean Masahiro is happy, so if you're fine with #5 then that works for me too, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On 12:25-20151110, Masahiro Yamada wrote: > 2015-11-10 5:24 GMT+09:00 Simon Glass: > >>> I am unhappy because I was hoping > >>> we could stop creating symbolic links during building > >>> in a long run. > > > > But how? I don't see that it is possible if we want to have a sensible > > prefix for each include. > > > [step 1] move SoC-specific headers to arch//mach-/include/mach > > [step 2] change #include to #include > > [step 3] Drop CONFIG_CREATE_ARCH_SYMLINK > > > For example, mach-uniphier finished [1] and [2], > so it does not require the symbolic link. > (several ARM SoCs finished [1]) > > > I think this is the way ARM should do, at least. > > The topic of debate is PowerPC. Should we introduce mach- > directories or not? > OK: Option 4: How about this guys? include/board-common is an actual directory and instead of headers being located in board/$(VENDOR)/common or board/$(VENDOR)/common/include, we move the common headers to include/board/$(VENDOR)/ Directory. This will make the usage as follows: #include <$(VENDOR)/xyz.h> I know this does not exactly meet Simon's suggestion here of being identifiably board-common/xyz.h -> but at least knowing the prefix as vendor name implies a board common header. diff --git a/Makefile b/Makefile index 3c21f8ddf9e9..2bd684199512 100644 --- a/Makefile +++ b/Makefile @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) # U-Boot objectsorder is important (i.e. start must be first) HAVE_VENDOR_COMMON_LIB = $(if $(wildcard $(srctree)/board/$(VENDOR)/common/Makefile),y,n) +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), -I$(srctree)/include/board-common) libs-y += lib/ libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ How does this sound? -- Regards, Nishanth Menon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On 11/10/2015 08:55 AM, Nishanth Menon wrote: > On 12:25-20151110, Masahiro Yamada wrote: >> 2015-11-10 5:24 GMT+09:00 Simon Glass: > I am unhappy because I was hoping > we could stop creating symbolic links during building > in a long run. >>> >>> But how? I don't see that it is possible if we want to have a sensible >>> prefix for each include. >> >> >> [step 1] move SoC-specific headers to arch//mach-/include/mach >> >> [step 2] change #include to #include >> >> [step 3] Drop CONFIG_CREATE_ARCH_SYMLINK >> >> >> For example, mach-uniphier finished [1] and [2], >> so it does not require the symbolic link. >> (several ARM SoCs finished [1]) >> >> >> I think this is the way ARM should do, at least. >> >> The topic of debate is PowerPC. Should we introduce mach- >> directories or not? >> > > OK: Option 4: > > How about this guys? include/board-common is an actual directory > and instead of headers being located in board/$(VENDOR)/common or > board/$(VENDOR)/common/include, we move the common headers to > include/board/$(VENDOR)/ Directory. This will make the usage as follows: > > #include <$(VENDOR)/xyz.h> > > I know this does not exactly meet Simon's suggestion here of being > identifiably board-common/xyz.h -> but at least knowing the prefix as > vendor name implies a board common header. > > diff --git a/Makefile b/Makefile > index 3c21f8ddf9e9..2bd684199512 100644 > --- a/Makefile > +++ b/Makefile > @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) > # U-Boot objectsorder is important (i.e. start must be first) > > HAVE_VENDOR_COMMON_LIB = $(if $(wildcard > $(srctree)/board/$(VENDOR)/common/Makefile),y,n) > +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), > -I$(srctree)/include/board-common) > > libs-y += lib/ > libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ > > How does this sound? > Spin off from option 4 is option 5 -> where we dont have the Makefile change. the board includes are located in include/board-common/$(VENDOR)/ directory. Usage will be: #include Almost meets Simon's needs(identifiable as board common header) and I think matches what Masahiro-san wants as well(no symlinks). OK, i am out of ideas at least for now... Any other suggestions / opinions? -- Regards, Nishanth Menon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
2015-11-10 5:24 GMT+09:00 Simon Glass: >>> I am unhappy because I was hoping >>> we could stop creating symbolic links during building >>> in a long run. > > But how? I don't see that it is possible if we want to have a sensible > prefix for each include. [step 1] move SoC-specific headers to arch//mach-/include/mach [step 2] change #include to #include [step 3] Drop CONFIG_CREATE_ARCH_SYMLINK For example, mach-uniphier finished [1] and [2], so it does not require the symbolic link. (several ARM SoCs finished [1]) I think this is the way ARM should do, at least. The topic of debate is PowerPC. Should we introduce mach- directories or not? >> >> OK. what do we do? >> option 1: >> #include "..common/xyz.h" >> 141 something usage in board files do this for now.. >> >> option 2: >> -I...common (auto generated - original patch) >> #include "xyz.h" >> we dont like that since it does not tell us that xyz.h is a >> board-common header. >> >> option 3: >> #include >> >> this needs a soft link which we dont like either. > > Well, I like it :-) > >> >> are there any other ways to do this? >> >> -- >> Regards, >> Nishanth Menon >> ___ >> U-Boot mailing list >> U-Boot@lists.denx.de >> http://lists.denx.de/mailman/listinfo/u-boot > > > Regards, > Simon > ___ > U-Boot mailing list > U-Boot@lists.denx.de > http://lists.denx.de/mailman/listinfo/u-boot -- Best Regards Masahiro Yamada ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
2015-11-09 1:38 GMT+09:00 Tom Rini: > On Sun, Nov 08, 2015 at 09:56:18AM -0600, menon.nisha...@gmail.com wrote: >> On Sat, Nov 7, 2015 at 8:18 PM, Tom Rini wrote: >> >> > Conceptually fine with me. Do we really need a config option for it >> > tho? >> >> I was following the lines of CONFIG_CREATE_ARCH_SYMLINK here. Is there >> some reason why you'd not want it so? > > Masahiro? > Is this an improvement? I am unhappy because I was hoping we could stop creating symbolic links during building in a long run. -- Best Regards Masahiro Yamada ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On 11/09/2015 10:03 AM, Masahiro Yamada wrote: > 2015-11-09 1:38 GMT+09:00 Tom Rini: >> On Sun, Nov 08, 2015 at 09:56:18AM -0600, menon.nisha...@gmail.com wrote: >>> On Sat, Nov 7, 2015 at 8:18 PM, Tom Rini wrote: >>> Conceptually fine with me. Do we really need a config option for it tho? >>> >>> I was following the lines of CONFIG_CREATE_ARCH_SYMLINK here. Is there >>> some reason why you'd not want it so? >> >> Masahiro? >> > > Is this an improvement? > > > I am unhappy because I was hoping > we could stop creating symbolic links during building > in a long run. OK. what do we do? option 1: #include "..common/xyz.h" 141 something usage in board files do this for now.. option 2: -I...common (auto generated - original patch) #include "xyz.h" we dont like that since it does not tell us that xyz.h is a board-common header. option 3: #include this needs a soft link which we dont like either. are there any other ways to do this? -- Regards, Nishanth Menon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
Hi Masahiro, On 9 November 2015 at 09:37, Nishanth Menonwrote: > On 11/09/2015 10:03 AM, Masahiro Yamada wrote: >> 2015-11-09 1:38 GMT+09:00 Tom Rini : >>> On Sun, Nov 08, 2015 at 09:56:18AM -0600, menon.nisha...@gmail.com wrote: On Sat, Nov 7, 2015 at 8:18 PM, Tom Rini wrote: > Conceptually fine with me. Do we really need a config option for it > tho? I was following the lines of CONFIG_CREATE_ARCH_SYMLINK here. Is there some reason why you'd not want it so? >>> >>> Masahiro? >>> >> >> Is this an improvement? >> >> >> I am unhappy because I was hoping >> we could stop creating symbolic links during building >> in a long run. But how? I don't see that it is possible if we want to have a sensible prefix for each include. > > OK. what do we do? > option 1: > #include "..common/xyz.h" > 141 something usage in board files do this for now.. > > option 2: > -I...common (auto generated - original patch) > #include "xyz.h" > we dont like that since it does not tell us that xyz.h is a > board-common header. > > option 3: > #include > > this needs a soft link which we dont like either. Well, I like it :-) > > are there any other ways to do this? > > -- > Regards, > Nishanth Menon > ___ > U-Boot mailing list > U-Boot@lists.denx.de > http://lists.denx.de/mailman/listinfo/u-boot Regards, Simon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On Sun, Nov 08, 2015 at 09:56:18AM -0600, menon.nisha...@gmail.com wrote: > On Sat, Nov 7, 2015 at 8:18 PM, Tom Riniwrote: > > > Conceptually fine with me. Do we really need a config option for it > > tho? > > I was following the lines of CONFIG_CREATE_ARCH_SYMLINK here. Is there > some reason why you'd not want it so? Masahiro? -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On Sat, Nov 7, 2015 at 8:18 PM, Tom Riniwrote: > Conceptually fine with me. Do we really need a config option for it > tho? I was following the lines of CONFIG_CREATE_ARCH_SYMLINK here. Is there some reason why you'd not want it so? Regards, Nishanth Menon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On Fri, Nov 06, 2015 at 03:58:17PM -0800, Simon Glass wrote: > Hi, > > On 6 November 2015 at 10:23, Nishanth Menonwrote: > > On 11:10-20151106, Nishanth Menon wrote: > >> On 11/05/2015 10:50 PM, Masahiro Yamada wrote: > >> > 2015-11-06 12:30 GMT+09:00 Nishanth Menon : > >> >> On Thu, Nov 5, 2015 at 6:15 PM, Simon Glass wrote: > >> >>> Hi, > >> >>> > >> >>> On 5 November 2015 at 00:32, Nishanth Menon wrote: > >> On 11/05/2015 01:28 AM, Nishanth Menon wrote: > >> > When the vendor common libraries exists, then board should be able to > >> > reference headers located there, rather than having to do weird logic > >> > such as '#include "../common/xyz.h"'. > >> > > >> > Signed-off-by: Nishanth Menon > >> > --- > >> > > >> > Makefile| 1 + > >> > board/ti/am57xx/board.c | 2 +- > >> > 2 files changed, 2 insertions(+), 1 deletion(-) > >> > >> Arrgh.. Apologies on the diffstat messup, but anyways, the patch does > >> apply, and will wait to repost in case of further comments. > >> > >> > > >> > diff --git a/Makefile b/Makefile > >> > index 3c21f8ddf9e9..75d5ea802dfd 100644 > >> > --- a/Makefile > >> > +++ b/Makefile > >> > @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) > >> > # U-Boot objectsorder is important (i.e. start must be first) > >> > > >> > HAVE_VENDOR_COMMON_LIB = $(if $(wildcard > >> > $(srctree)/board/$(VENDOR)/common/Makefile),y,n) > >> > +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), > >> > -I$(srctree)/board/$(VENDOR)/common) > >> > > >> > libs-y += lib/ > >> > libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ > >> > > >> > >> >>> > >> >>> I suppose this is OK. But it might be hard to figure out where a > >> >>> header file is coming from. I wonder if we could make it support: > >> >>> > >> >>> #include > >> >>> > >> >>> and it would find the file? > >> >>> > >> >> > >> >> Hmmm... Are folks ok if I create a softlink? > >> > > >> > > >> > Or, you can maybe add the following into board/ti/am57xx/Makefile. > >> > > >> > subdir-ccflags-y := -I$(src)/../common > >> > > >> > then, you can use #include from your board/ti/am57xx/board.c > >> > >> I could, OR i could even do ../common/xyz.h (which is what current > >> board files do) > >> > >> > > >> > > >> > > >> > But, I personally wouldn't do this in this case > >> > for the reason Simon mentioned. > >> > > >> > >> I agree as well. but the files are built without explicit board level > >> Makefile rules, but the root Makefile(which makes this happen) does > >> not ensure the headers are made available - that sounds contradictory. > >> > >> > > >> > How many vender-common do we have > >> > and is it worth supporting #include ? > >> > >> Surprisingly larger set that what I expected: > >> $ git branch -v|grep "^*" > >> * master c3c016cf7536 sf: Add SPI NOR protection mechanism > >> $ find board/ -iname "common"|wc -l > >> 19 > >> $ git grep "#include \"../common" board/|wc -l > >> 141 > >> > > Illustration Purposes only: example of how a > > #include > to do? > > diff --git a/Kconfig b/Kconfig > > index 821b464db207..6e825be0545e 100644 > > --- a/Kconfig > > +++ b/Kconfig > > @@ -224,6 +224,8 @@ endmenu # Boot images > > > > source "common/Kconfig" > > > > +source "board/Kconfig" > > + > > source "dts/Kconfig" > > > > source "net/Kconfig" > > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig > > index 0d756cbc55a2..62c9b90eac79 100644 > > --- a/arch/arm/Kconfig > > +++ b/arch/arm/Kconfig > > @@ -356,6 +356,7 @@ config TARGET_AM335X_EVM > > select DM > > select DM_SERIAL > > select DM_GPIO > > + select CREATE_BOARD_SYMLINK > > > > config TARGET_AM335X_SL50 > > bool "Support am335x_sl50" > > diff --git a/scripts/Makefile.autoconf b/scripts/Makefile.autoconf > > index d668982cc1dd..3f9b969c2271 100644 > > --- a/scripts/Makefile.autoconf > > +++ b/scripts/Makefile.autoconf > > @@ -125,6 +125,23 @@ else > > ln -fsn $$dest arch/$(ARCH)/include/asm/arch > > endif > > endif > > +ifdef CONFIG_CREATE_BOARD_SYMLINK > > +ifneq ($(KBUILD_SRC),) > > + if [ -d $(KBUILD_SRC)/board/$(VENDOR)/common/include ]; then \ > > + dest=board/$(VENDOR)/common/include;\ > > + else\ > > + dest=board/$(VENDOR)/common;\ > > + fi; \ > > + ln -fsn $(KBUILD_SRC)/$$dest include/board-common > > +else > > + if [ -d board/$(VENDOR)/common/include ]; then \ > > + dest=board/$(VENDOR)/common/include;\ > > + else\ > > +
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
Hi, On 6 November 2015 at 10:23, Nishanth Menonwrote: > On 11:10-20151106, Nishanth Menon wrote: >> On 11/05/2015 10:50 PM, Masahiro Yamada wrote: >> > 2015-11-06 12:30 GMT+09:00 Nishanth Menon : >> >> On Thu, Nov 5, 2015 at 6:15 PM, Simon Glass wrote: >> >>> Hi, >> >>> >> >>> On 5 November 2015 at 00:32, Nishanth Menon wrote: >> On 11/05/2015 01:28 AM, Nishanth Menon wrote: >> > When the vendor common libraries exists, then board should be able to >> > reference headers located there, rather than having to do weird logic >> > such as '#include "../common/xyz.h"'. >> > >> > Signed-off-by: Nishanth Menon >> > --- >> > >> > Makefile| 1 + >> > board/ti/am57xx/board.c | 2 +- >> > 2 files changed, 2 insertions(+), 1 deletion(-) >> >> Arrgh.. Apologies on the diffstat messup, but anyways, the patch does >> apply, and will wait to repost in case of further comments. >> >> > >> > diff --git a/Makefile b/Makefile >> > index 3c21f8ddf9e9..75d5ea802dfd 100644 >> > --- a/Makefile >> > +++ b/Makefile >> > @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) >> > # U-Boot objectsorder is important (i.e. start must be first) >> > >> > HAVE_VENDOR_COMMON_LIB = $(if $(wildcard >> > $(srctree)/board/$(VENDOR)/common/Makefile),y,n) >> > +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), >> > -I$(srctree)/board/$(VENDOR)/common) >> > >> > libs-y += lib/ >> > libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ >> > >> >> >>> >> >>> I suppose this is OK. But it might be hard to figure out where a >> >>> header file is coming from. I wonder if we could make it support: >> >>> >> >>> #include >> >>> >> >>> and it would find the file? >> >>> >> >> >> >> Hmmm... Are folks ok if I create a softlink? >> > >> > >> > Or, you can maybe add the following into board/ti/am57xx/Makefile. >> > >> > subdir-ccflags-y := -I$(src)/../common >> > >> > then, you can use #include from your board/ti/am57xx/board.c >> >> I could, OR i could even do ../common/xyz.h (which is what current >> board files do) >> >> > >> > >> > >> > But, I personally wouldn't do this in this case >> > for the reason Simon mentioned. >> > >> >> I agree as well. but the files are built without explicit board level >> Makefile rules, but the root Makefile(which makes this happen) does >> not ensure the headers are made available - that sounds contradictory. >> >> > >> > How many vender-common do we have >> > and is it worth supporting #include ? >> >> Surprisingly larger set that what I expected: >> $ git branch -v|grep "^*" >> * master c3c016cf7536 sf: Add SPI NOR protection mechanism >> $ find board/ -iname "common"|wc -l >> 19 >> $ git grep "#include \"../common" board/|wc -l >> 141 >> > Illustration Purposes only: example of how a > #include to do? > diff --git a/Kconfig b/Kconfig > index 821b464db207..6e825be0545e 100644 > --- a/Kconfig > +++ b/Kconfig > @@ -224,6 +224,8 @@ endmenu # Boot images > > source "common/Kconfig" > > +source "board/Kconfig" > + > source "dts/Kconfig" > > source "net/Kconfig" > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig > index 0d756cbc55a2..62c9b90eac79 100644 > --- a/arch/arm/Kconfig > +++ b/arch/arm/Kconfig > @@ -356,6 +356,7 @@ config TARGET_AM335X_EVM > select DM > select DM_SERIAL > select DM_GPIO > + select CREATE_BOARD_SYMLINK > > config TARGET_AM335X_SL50 > bool "Support am335x_sl50" > diff --git a/scripts/Makefile.autoconf b/scripts/Makefile.autoconf > index d668982cc1dd..3f9b969c2271 100644 > --- a/scripts/Makefile.autoconf > +++ b/scripts/Makefile.autoconf > @@ -125,6 +125,23 @@ else > ln -fsn $$dest arch/$(ARCH)/include/asm/arch > endif > endif > +ifdef CONFIG_CREATE_BOARD_SYMLINK > +ifneq ($(KBUILD_SRC),) > + if [ -d $(KBUILD_SRC)/board/$(VENDOR)/common/include ]; then \ > + dest=board/$(VENDOR)/common/include;\ > + else\ > + dest=board/$(VENDOR)/common;\ > + fi; \ > + ln -fsn $(KBUILD_SRC)/$$dest include/board-common > +else > + if [ -d board/$(VENDOR)/common/include ]; then \ > + dest=board/$(VENDOR)/common/include;\ > + else\ > + dest=board/$(VENDOR)/common;\ > + fi; \ > + ln -fsn ../$$dest include/board-common > +endif > +endif > > PHONY += FORCE > FORCE: > -- It looks reasonable to me. Tom and Masahiro may have opinions on this too. Regards, Simon
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On 11/05/2015 10:50 PM, Masahiro Yamada wrote: > 2015-11-06 12:30 GMT+09:00 Nishanth Menon: >> On Thu, Nov 5, 2015 at 6:15 PM, Simon Glass wrote: >>> Hi, >>> >>> On 5 November 2015 at 00:32, Nishanth Menon wrote: On 11/05/2015 01:28 AM, Nishanth Menon wrote: > When the vendor common libraries exists, then board should be able to > reference headers located there, rather than having to do weird logic > such as '#include "../common/xyz.h"'. > > Signed-off-by: Nishanth Menon > --- > > Makefile| 1 + > board/ti/am57xx/board.c | 2 +- > 2 files changed, 2 insertions(+), 1 deletion(-) Arrgh.. Apologies on the diffstat messup, but anyways, the patch does apply, and will wait to repost in case of further comments. > > diff --git a/Makefile b/Makefile > index 3c21f8ddf9e9..75d5ea802dfd 100644 > --- a/Makefile > +++ b/Makefile > @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) > # U-Boot objectsorder is important (i.e. start must be first) > > HAVE_VENDOR_COMMON_LIB = $(if $(wildcard > $(srctree)/board/$(VENDOR)/common/Makefile),y,n) > +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), > -I$(srctree)/board/$(VENDOR)/common) > > libs-y += lib/ > libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ > >>> >>> I suppose this is OK. But it might be hard to figure out where a >>> header file is coming from. I wonder if we could make it support: >>> >>> #include >>> >>> and it would find the file? >>> >> >> Hmmm... Are folks ok if I create a softlink? > > > Or, you can maybe add the following into board/ti/am57xx/Makefile. > > subdir-ccflags-y := -I$(src)/../common > > then, you can use #include from your board/ti/am57xx/board.c I could, OR i could even do ../common/xyz.h (which is what current board files do) > > > > But, I personally wouldn't do this in this case > for the reason Simon mentioned. > I agree as well. but the files are built without explicit board level Makefile rules, but the root Makefile(which makes this happen) does not ensure the headers are made available - that sounds contradictory. > > How many vender-common do we have > and is it worth supporting #include ? Surprisingly larger set that what I expected: $ git branch -v|grep "^*" * master c3c016cf7536 sf: Add SPI NOR protection mechanism $ find board/ -iname "common"|wc -l 19 $ git grep "#include \"../common" board/|wc -l 141 -- Regards, Nishanth Menon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On 11:10-20151106, Nishanth Menon wrote: > On 11/05/2015 10:50 PM, Masahiro Yamada wrote: > > 2015-11-06 12:30 GMT+09:00 Nishanth Menon: > >> On Thu, Nov 5, 2015 at 6:15 PM, Simon Glass wrote: > >>> Hi, > >>> > >>> On 5 November 2015 at 00:32, Nishanth Menon wrote: > On 11/05/2015 01:28 AM, Nishanth Menon wrote: > > When the vendor common libraries exists, then board should be able to > > reference headers located there, rather than having to do weird logic > > such as '#include "../common/xyz.h"'. > > > > Signed-off-by: Nishanth Menon > > --- > > > > Makefile| 1 + > > board/ti/am57xx/board.c | 2 +- > > 2 files changed, 2 insertions(+), 1 deletion(-) > > Arrgh.. Apologies on the diffstat messup, but anyways, the patch does > apply, and will wait to repost in case of further comments. > > > > > diff --git a/Makefile b/Makefile > > index 3c21f8ddf9e9..75d5ea802dfd 100644 > > --- a/Makefile > > +++ b/Makefile > > @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) > > # U-Boot objectsorder is important (i.e. start must be first) > > > > HAVE_VENDOR_COMMON_LIB = $(if $(wildcard > > $(srctree)/board/$(VENDOR)/common/Makefile),y,n) > > +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), > > -I$(srctree)/board/$(VENDOR)/common) > > > > libs-y += lib/ > > libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ > > > > >>> > >>> I suppose this is OK. But it might be hard to figure out where a > >>> header file is coming from. I wonder if we could make it support: > >>> > >>> #include > >>> > >>> and it would find the file? > >>> > >> > >> Hmmm... Are folks ok if I create a softlink? > > > > > > Or, you can maybe add the following into board/ti/am57xx/Makefile. > > > > subdir-ccflags-y := -I$(src)/../common > > > > then, you can use #include from your board/ti/am57xx/board.c > > I could, OR i could even do ../common/xyz.h (which is what current > board files do) > > > > > > > > > But, I personally wouldn't do this in this case > > for the reason Simon mentioned. > > > > I agree as well. but the files are built without explicit board level > Makefile rules, but the root Makefile(which makes this happen) does > not ensure the headers are made available - that sounds contradictory. > > > > > How many vender-common do we have > > and is it worth supporting #include ? > > Surprisingly larger set that what I expected: > $ git branch -v|grep "^*" > * master c3c016cf7536 sf: Add SPI NOR protection mechanism > $ find board/ -iname "common"|wc -l > 19 > $ git grep "#include \"../common" board/|wc -l > 141 > Illustration Purposes only: example of how a #include http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
Hi, On 5 November 2015 at 00:32, Nishanth Menonwrote: > On 11/05/2015 01:28 AM, Nishanth Menon wrote: >> When the vendor common libraries exists, then board should be able to >> reference headers located there, rather than having to do weird logic >> such as '#include "../common/xyz.h"'. >> >> Signed-off-by: Nishanth Menon >> --- >> >> Makefile| 1 + >> board/ti/am57xx/board.c | 2 +- >> 2 files changed, 2 insertions(+), 1 deletion(-) > > Arrgh.. Apologies on the diffstat messup, but anyways, the patch does > apply, and will wait to repost in case of further comments. > >> >> diff --git a/Makefile b/Makefile >> index 3c21f8ddf9e9..75d5ea802dfd 100644 >> --- a/Makefile >> +++ b/Makefile >> @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) >> # U-Boot objectsorder is important (i.e. start must be first) >> >> HAVE_VENDOR_COMMON_LIB = $(if $(wildcard >> $(srctree)/board/$(VENDOR)/common/Makefile),y,n) >> +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), >> -I$(srctree)/board/$(VENDOR)/common) >> >> libs-y += lib/ >> libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ >> > I suppose this is OK. But it might be hard to figure out where a header file is coming from. I wonder if we could make it support: #include and it would find the file? Regards, Simon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
2015-11-06 12:30 GMT+09:00 Nishanth Menon: > On Thu, Nov 5, 2015 at 6:15 PM, Simon Glass wrote: >> Hi, >> >> On 5 November 2015 at 00:32, Nishanth Menon wrote: >>> On 11/05/2015 01:28 AM, Nishanth Menon wrote: When the vendor common libraries exists, then board should be able to reference headers located there, rather than having to do weird logic such as '#include "../common/xyz.h"'. Signed-off-by: Nishanth Menon --- Makefile| 1 + board/ti/am57xx/board.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) >>> >>> Arrgh.. Apologies on the diffstat messup, but anyways, the patch does >>> apply, and will wait to repost in case of further comments. >>> diff --git a/Makefile b/Makefile index 3c21f8ddf9e9..75d5ea802dfd 100644 --- a/Makefile +++ b/Makefile @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) # U-Boot objectsorder is important (i.e. start must be first) HAVE_VENDOR_COMMON_LIB = $(if $(wildcard $(srctree)/board/$(VENDOR)/common/Makefile),y,n) +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), -I$(srctree)/board/$(VENDOR)/common) libs-y += lib/ libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ >>> >> >> I suppose this is OK. But it might be hard to figure out where a >> header file is coming from. I wonder if we could make it support: >> >> #include >> >> and it would find the file? >> > > Hmmm... Are folks ok if I create a softlink? Or, you can maybe add the following into board/ti/am57xx/Makefile. subdir-ccflags-y := -I$(src)/../common then, you can use #include from your board/ti/am57xx/board.c But, I personally wouldn't do this in this case for the reason Simon mentioned. How many vender-common do we have and is it worth supporting #include ? -- Best Regards Masahiro Yamada ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On Thu, Nov 5, 2015 at 6:15 PM, Simon Glasswrote: > Hi, > > On 5 November 2015 at 00:32, Nishanth Menon wrote: >> On 11/05/2015 01:28 AM, Nishanth Menon wrote: >>> When the vendor common libraries exists, then board should be able to >>> reference headers located there, rather than having to do weird logic >>> such as '#include "../common/xyz.h"'. >>> >>> Signed-off-by: Nishanth Menon >>> --- >>> >>> Makefile| 1 + >>> board/ti/am57xx/board.c | 2 +- >>> 2 files changed, 2 insertions(+), 1 deletion(-) >> >> Arrgh.. Apologies on the diffstat messup, but anyways, the patch does >> apply, and will wait to repost in case of further comments. >> >>> >>> diff --git a/Makefile b/Makefile >>> index 3c21f8ddf9e9..75d5ea802dfd 100644 >>> --- a/Makefile >>> +++ b/Makefile >>> @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) >>> # U-Boot objectsorder is important (i.e. start must be first) >>> >>> HAVE_VENDOR_COMMON_LIB = $(if $(wildcard >>> $(srctree)/board/$(VENDOR)/common/Makefile),y,n) >>> +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), >>> -I$(srctree)/board/$(VENDOR)/common) >>> >>> libs-y += lib/ >>> libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ >>> >> > > I suppose this is OK. But it might be hard to figure out where a > header file is coming from. I wonder if we could make it support: > > #include > > and it would find the file? > Hmmm... Are folks ok if I create a softlink? -- --- Regards, Nishanth Menon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] Makefile: Include vendor common library in include search path
On 11/05/2015 01:28 AM, Nishanth Menon wrote: > When the vendor common libraries exists, then board should be able to > reference headers located there, rather than having to do weird logic > such as '#include "../common/xyz.h"'. > > Signed-off-by: Nishanth Menon> --- > > Makefile| 1 + > board/ti/am57xx/board.c | 2 +- > 2 files changed, 2 insertions(+), 1 deletion(-) Arrgh.. Apologies on the diffstat messup, but anyways, the patch does apply, and will wait to repost in case of further comments. > > diff --git a/Makefile b/Makefile > index 3c21f8ddf9e9..75d5ea802dfd 100644 > --- a/Makefile > +++ b/Makefile > @@ -620,6 +620,7 @@ c_flags := $(KBUILD_CFLAGS) $(cpp_flags) > # U-Boot objectsorder is important (i.e. start must be first) > > HAVE_VENDOR_COMMON_LIB = $(if $(wildcard > $(srctree)/board/$(VENDOR)/common/Makefile),y,n) > +UBOOTINCLUDE += $(if $(HAVE_VENDOR_COMMON_LIB:y=1), > -I$(srctree)/board/$(VENDOR)/common) > > libs-y += lib/ > libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ > -- Regards, Nishanth Menon ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot