Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] Some issues found while trying to add JimTcl to buildroot
@ 2013-06-25 18:23 Ezequiel Garcia
  2013-06-25 19:20 ` Thomas Petazzoni
  0 siblings, 1 reply; 4+ messages in thread
From: Ezequiel Garcia @ 2013-06-25 18:23 UTC (permalink / raw)
  To: buildroot

Hi,

I'm working on adding JimTcl [1] to Buildroot. The first issue you
found is that Jim Tcl uses autosetup [2]
instead of autotools. So my first approach is creating a
"generic-package" jimtcl.mk.

Now, the problem is that apparently autosetup is expecting the
toolchain to be available
in the path, so there's no prefix-like parameter. I've done an ugly
workaround (pasted below).
Knowing it's ugly, I'd like to ask what's the 'nice' way of doing it:

#############################################################
#
# Jim Tcl 0.73
#
#############################################################

JIMTCL_VERSION = 0.73
JIMTCL_SITE = git://repo.or.cz/jimtcl.git
JIMTCL_SITE_METHOD = git

JIMTCL_INSTALL_STAGING = YES

define JIMTCL_CONFIGURE_CMDS
	(cd $(@D); PATH=$(PATH):/home/foo/buildroot/buildroot/output/host/usr/bin \
		./configure --host=$(GNU_TARGET_NAME) --prefix=$(STAGING_DIR))
endef

define JIMTCL_BUILD_CMDS
	PATH=$(PATH):/home/foo/buildroot/buildroot/output/host/usr/bin \
		$(MAKE) -C $(@D)
endef

define JIMTCL_INSTALL_STAGING_CMDS
	PATH=$(PATH):/home/foo/buildroot/buildroot/output/host/usr/bin \
		$(MAKE) -C $(@D) install
endef

$(eval $(generic-package))
---

[1] http://jim.tcl.tk/
[2] http://msteveb.github.io/autosetup/

Thanks,
-- 
    Ezequiel

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] Some issues found while trying to add JimTcl to buildroot
  2013-06-25 18:23 [Buildroot] Some issues found while trying to add JimTcl to buildroot Ezequiel Garcia
@ 2013-06-25 19:20 ` Thomas Petazzoni
  2013-06-25 19:29   ` Ezequiel Garcia
  0 siblings, 1 reply; 4+ messages in thread
From: Thomas Petazzoni @ 2013-06-25 19:20 UTC (permalink / raw)
  To: buildroot

Dear Ezequiel Garcia,

On Tue, 25 Jun 2013 15:23:56 -0300, Ezequiel Garcia wrote:

> I'm working on adding JimTcl [1] to Buildroot. The first issue you
> found is that Jim Tcl uses autosetup [2]
> instead of autotools. So my first approach is creating a
> "generic-package" jimtcl.mk.

Gustavo already pointed you on IRC to
http://repo.or.cz/w/buildroot-gz.git/commitdiff/651525c5c4f66c0f8fbc3ac518632c514bee4866.
Any reason not to use it? This patch is also in our patchwork at
http://patchwork.ozlabs.org/patch/181627/.


> Knowing it's ugly, I'd like to ask what's the 'nice' way of doing it:
> 
> #############################################################
> #
> # Jim Tcl 0.73
> #
> #############################################################
> 
> JIMTCL_VERSION = 0.73
> JIMTCL_SITE = git://repo.or.cz/jimtcl.git
> JIMTCL_SITE_METHOD = git
> 
> JIMTCL_INSTALL_STAGING = YES
> 
> define JIMTCL_CONFIGURE_CMDS
> 	(cd $(@D); PATH=$(PATH):/home/foo/buildroot/buildroot/output/host/usr/bin \
> 		./configure --host=$(GNU_TARGET_NAME) --prefix=$(STAGING_DIR))

prefix of STAGING_DIR is most likely wrong. It should be /usr in most
cases.

> endef
> 
> define JIMTCL_BUILD_CMDS
> 	PATH=$(PATH):/home/foo/buildroot/buildroot/output/host/usr/bin \
> 		$(MAKE) -C $(@D)
> endef
> 
> define JIMTCL_INSTALL_STAGING_CMDS
> 	PATH=$(PATH):/home/foo/buildroot/buildroot/output/host/usr/bin \
> 		$(MAKE) -C $(@D) install
> endef

	$(TARGET_MAKE_ENV) $(MAKE) ...

TARGET_MAKE_ENV already sets a PATH variable that has the toolchain
directory in it. See package/Makefile.in for the definition of
TARGET_MAKE_ENV.

Best regards,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] Some issues found while trying to add JimTcl to buildroot
  2013-06-25 19:20 ` Thomas Petazzoni
@ 2013-06-25 19:29   ` Ezequiel Garcia
  2013-06-25 19:37     ` Thomas Petazzoni
  0 siblings, 1 reply; 4+ messages in thread
From: Ezequiel Garcia @ 2013-06-25 19:29 UTC (permalink / raw)
  To: buildroot

Hi Thomas,

On Tue, Jun 25, 2013 at 4:20 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> On Tue, 25 Jun 2013 15:23:56 -0300, Ezequiel Garcia wrote:
>
>> I'm working on adding JimTcl [1] to Buildroot. The first issue you
>> found is that Jim Tcl uses autosetup [2]
>> instead of autotools. So my first approach is creating a
>> "generic-package" jimtcl.mk.
>
> Gustavo already pointed you on IRC to

For some reason, it seems my IRC was temporarily disconnected,
so I missed that hint :-( Thanks for pointing it out!

> http://repo.or.cz/w/buildroot-gz.git/commitdiff/651525c5c4f66c0f8fbc3ac518632c514bee4866.

That's great! (Thanks Gustavo!)

> Any reason not to use it? This patch is also in our patchwork at

Well, on a very first look I need the libjim.a to embed the
interpreter inside an application.
Sadly, the shell is useless in this case. I'll see if I can work on
top of Gustavo's patch
and install the library and the headers.

> http://patchwork.ozlabs.org/patch/181627/.
>
>
>> Knowing it's ugly, I'd like to ask what's the 'nice' way of doing it:
>>
>> #############################################################
>> #
>> # Jim Tcl 0.73
>> #
>> #############################################################
>>
>> JIMTCL_VERSION = 0.73
>> JIMTCL_SITE = git://repo.or.cz/jimtcl.git
>> JIMTCL_SITE_METHOD = git
>>
>> JIMTCL_INSTALL_STAGING = YES
>>
>> define JIMTCL_CONFIGURE_CMDS
>>       (cd $(@D); PATH=$(PATH):/home/foo/buildroot/buildroot/output/host/usr/bin \
>>               ./configure --host=$(GNU_TARGET_NAME) --prefix=$(STAGING_DIR))
>
> prefix of STAGING_DIR is most likely wrong. It should be /usr in most
> cases.
>
>> endef
>>
>> define JIMTCL_BUILD_CMDS
>>       PATH=$(PATH):/home/foo/buildroot/buildroot/output/host/usr/bin \
>>               $(MAKE) -C $(@D)
>> endef
>>
>> define JIMTCL_INSTALL_STAGING_CMDS
>>       PATH=$(PATH):/home/foo/buildroot/buildroot/output/host/usr/bin \
>>               $(MAKE) -C $(@D) install
>> endef
>
>         $(TARGET_MAKE_ENV) $(MAKE) ...
>
> TARGET_MAKE_ENV already sets a PATH variable that has the toolchain
> directory in it. See package/Makefile.in for the definition of
> TARGET_MAKE_ENV.
>

Cool, thanks.

I'll take a closer look to this, and to Gustavo's patch and let you both know.

Thanks a lot for the help,
-- 
    Ezequiel

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] Some issues found while trying to add JimTcl to buildroot
  2013-06-25 19:29   ` Ezequiel Garcia
@ 2013-06-25 19:37     ` Thomas Petazzoni
  0 siblings, 0 replies; 4+ messages in thread
From: Thomas Petazzoni @ 2013-06-25 19:37 UTC (permalink / raw)
  To: buildroot

Dear Ezequiel Garcia,

On Tue, 25 Jun 2013 16:29:05 -0300, Ezequiel Garcia wrote:

> > Any reason not to use it? This patch is also in our patchwork at
> 
> Well, on a very first look I need the libjim.a to embed the
> interpreter inside an application.
> Sadly, the shell is useless in this case. I'll see if I can work on
> top of Gustavo's patch
> and install the library and the headers.

Ok.


> > TARGET_MAKE_ENV already sets a PATH variable that has the toolchain
> > directory in it. See package/Makefile.in for the definition of
> > TARGET_MAKE_ENV.
> 
> Cool, thanks.
> 
> I'll take a closer look to this, and to Gustavo's patch and let you both know.

Don't hesitate to take Gustavo patch, make the necessary
fixes/improvements and resend it with your Acked-by. Maybe that will
push Peter into merging Gustavo's patch :-)

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-06-25 19:37 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-06-25 18:23 [Buildroot] Some issues found while trying to add JimTcl to buildroot Ezequiel Garcia
2013-06-25 19:20 ` Thomas Petazzoni
2013-06-25 19:29   ` Ezequiel Garcia
2013-06-25 19:37     ` Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox