Skip to contentSkip to conversation

package: add jimtcl support

PATCH New Jean-Christophe PLAGNIOL-VILLARD 3 participants 11 messages Apr 30, 2011 – May 2, 2011

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 package: add jimtcl support

you will download it via git
and can specify which repos and/or which commit

---
 package/Config.in        |    1 +
 package/jimtcl/Config.in |   65 ++++++++++++++++++++++++++++++++++++++++++++++
 package/jimtcl/jimtcl.mk |   30 +++++++++++++++++++++
 3 files changed, 96 insertions(+), 0 deletions(-)
 create mode 100644 package/jimtcl/Config.in
 create mode 100644 package/jimtcl/jimtcl.mk
package/Config.in +1 -0
index 76b2076..cd89892 100644
@@ -231,6 +231,7 @@ source "package/php/Config.in"
 source "package/python/Config.in"
 source "package/ruby/Config.in"
 source "package/tcl/Config.in"
+source "package/jimtcl/Config.in"
 endmenu
 
 menu "Libraries"
package/jimtcl/Config.in new file +65 -0

65 lines not on this page · raw message

package/jimtcl/jimtcl.mk new file +30 -0
new file mode 100644
index 0000000..d4f4c52
@@ -0,0 +1,30 @@
+#############################################################
+#
+# jimtcl
+#
+#############################################################
+JIMTCL_VERSION:=$(call qstrip,$(BR2_TARGET_JIMTCL_VERSION))
+JIMTCL_SITE_METHOD:=git
+DL_TOOLS_DEPENDENCIES += git
+
+ifneq ($(BR2_TARGET_JIMTCL_CUSTOM_GIT_LOCATION),)
+JIMTCL_SITE:=$(call qstrip,$(BR2_TARGET_JIMTCL_CUSTOM_GIT_LOCATION))
+else
+JIMTCL_SITE:=http://repo.or.cz/r/jimtcl.git
+endif
+
+ifeq ($(JIMTCL_VERSION),custom)
+JIMTCL_VERSION=$(call qstrip,$(BR2_TARGET_JIMTCL_CUSTOM_COMMIT))
+endif
+
+# Force it as the version can be a name such as HEAD
+JIMTCL_DL_VERSION=$(OPENOCD_VERSION)
+
+JIMTCL_INSTALL_STAGING = YES
+JIMTCL_INSTALL_TARGET = NO
+
+OPENOCD_AUTORECONF = YES
+
+JIMTCL_INSTALL_STAGING_OPT= DESTDIR=$(STAGING_DIR)/usr install
+
+$(eval $(call AUTOTARGETS,package,jimtcl))
Signature · 1 line
1.7.4.1
#1 lore raw

PATCH 1/2 package: add jimtcl support

Quoted 6 lines · Jean-Christophe PLAGNIOL-VILLARD

you will download it via git
and can specify which repos and/or which commit

Please ignore these two patch I'll send soon a new version with FTDI Chip support and a defconfig to build based on at91 board a ethernet JTAG

Best Regards,
J.

#2 lore raw

PATCH 2/2 package: add openocd support

In reply to Jean-Christophe PLAGNIOL-VILLARD

with only usb option that depend only on libusb for now on

---
 package/Config.in          |    1 +
 package/openocd/Config.in  |   85 ++++++++++++++++++++++++++++++++++++++++++++
 package/openocd/openocd.mk |   50 ++++++++++++++++++++++++++
 3 files changed, 136 insertions(+), 0 deletions(-)
 create mode 100644 package/openocd/Config.in
 create mode 100644 package/openocd/openocd.mk
package/Config.in +1 -0
index cd89892..4f24595 100644
@@ -362,6 +362,7 @@ endmenu
 
 menu "Miscellaneous"
 source "package/shared-mime-info/Config.in"
+source "package/openocd/Config.in"
 endmenu
 
 menu "Networking applications"
package/openocd/Config.in new file +85 -0

85 lines not on this page · raw message

package/openocd/openocd.mk new file +50 -0

50 lines not on this page · raw message

Signature · 1 line
1.7.4.1
#3 lore raw

PATCH 2/2 package: add openocd support

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Jean-Christophe" == Jean-Christophe PLAGNIOL-VILLARD <[email protected]> writes:

Jean-Christophe> with only usb option that depend only on libusb for now on Jean-Christophe> Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]> Jean-Christophe> Cc: Nicolas Ferre <[email protected]> Jean-Christophe> Cc: Patrice Vilchez <[email protected]> Jean-Christophe> ---

 Jean-Christophe>  package/Config.in          |    1 +
 Jean-Christophe>  package/openocd/Config.in  |   85 ++++++++++++++++++++++++++++++++++++++++++++
 Jean-Christophe>  package/openocd/openocd.mk |   50 ++++++++++++++++++++++++++
 Jean-Christophe>  3 files changed, 136 insertions(+), 0 deletions(-)
 Jean-Christophe>  create mode 100644 package/openocd/Config.in
 Jean-Christophe>  create mode 100644 package/openocd/openocd.mk

Jean-Christophe> diff --git a/package/Config.in b/package/Config.in Jean-Christophe> index cd89892..4f24595 100644 Jean-Christophe> --- a/package/Config.in Jean-Christophe> +++ b/package/Config.in Jean-Christophe> @@ -362,6 +362,7 @@ endmenu

Jean-Christophe> menu "Miscellaneous" Jean-Christophe> source "package/shared-mime-info/Config.in" Jean-Christophe> +source "package/openocd/Config.in"

I would think 'hardware handling' would be a better location. Don't forget sort alphabetically.

Jean-Christophe> menu "Networking applications"
Jean-Christophe> diff --git a/package/openocd/Config.in b/package/openocd/Config.in Jean-Christophe> new file mode 100644
Jean-Christophe> index 0000000..3efa3e7
Jean-Christophe> --- /dev/null
Jean-Christophe> +++ b/package/openocd/Config.in
Jean-Christophe> @@ -0,0 +1,85 @@
Jean-Christophe> +menuconfig BR2_PACKAGE_OPENOCD
Jean-Christophe> + bool "OpenOCD"
Jean-Christophe> + select BR2_PACKAGE_LIBUSB
Jean-Christophe> + select BR2_PACKAGE_LIBUSB_COMPAT
Jean-Christophe> + select BR2_PACKAGE_JIMTCL
Jean-Christophe> + help
Jean-Christophe> + OpenOCD - Open On-Chip Debugger
Jean-Christophe> +
Jean-Christophe> + http://openocd.berlios.de/web/
Jean-Christophe> +
Jean-Christophe> +if BR2_PACKAGE_OPENOCD
Jean-Christophe> +
Jean-Christophe> +choice
Jean-Christophe> + prompt "OPENOCD Git"
Jean-Christophe> + default BR2_TARGET_OPENOCD_GIT
Jean-Christophe> + help
Jean-Christophe> + Select the specific OpenOCD Git you want to use

Again, do we really need the version / git location options?

Jean-Christophe> +config BR2_PACKAGE_OPENOCD_ETM
Jean-Christophe> + bool "OpenOCD+trace ETM capture hardware"
Jean-Christophe> + help
Jean-Christophe> + OpenOCD+trace ETM capture hardware for some prototype

That help text could use some work I think.

Signature · 1 line
Bye, Peter Korsgaard
#4 lore raw

PATCH 2/2 package: add openocd support

Quoted 52 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Jean-Christophe" == Jean-Christophe PLAGNIOL-VILLARD <[email protected]> writes:

Jean-Christophe> with only usb option that depend only on libusb for now on Jean-Christophe> Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]> Jean-Christophe> Cc: Nicolas Ferre <[email protected]> Jean-Christophe> Cc: Patrice Vilchez <[email protected]> Jean-Christophe> ---

 Jean-Christophe>  package/Config.in          |    1 +
 Jean-Christophe>  package/openocd/Config.in  |   85 ++++++++++++++++++++++++++++++++++++++++++++
 Jean-Christophe>  package/openocd/openocd.mk |   50 ++++++++++++++++++++++++++
 Jean-Christophe>  3 files changed, 136 insertions(+), 0 deletions(-)
 Jean-Christophe>  create mode 100644 package/openocd/Config.in
 Jean-Christophe>  create mode 100644 package/openocd/openocd.mk

Jean-Christophe> diff --git a/package/Config.in b/package/Config.in Jean-Christophe> index cd89892..4f24595 100644 Jean-Christophe> --- a/package/Config.in Jean-Christophe> +++ b/package/Config.in Jean-Christophe> @@ -362,6 +362,7 @@ endmenu

Jean-Christophe> menu "Miscellaneous" Jean-Christophe> source "package/shared-mime-info/Config.in" Jean-Christophe> +source "package/openocd/Config.in"

I would think 'hardware handling' would be a better location. Don't forget sort alphabetically.

Jean-Christophe> menu "Networking applications"
Jean-Christophe> diff --git a/package/openocd/Config.in b/package/openocd/Config.in Jean-Christophe> new file mode 100644
Jean-Christophe> index 0000000..3efa3e7
Jean-Christophe> --- /dev/null
Jean-Christophe> +++ b/package/openocd/Config.in
Jean-Christophe> @@ -0,0 +1,85 @@
Jean-Christophe> +menuconfig BR2_PACKAGE_OPENOCD
Jean-Christophe> + bool "OpenOCD"
Jean-Christophe> + select BR2_PACKAGE_LIBUSB
Jean-Christophe> + select BR2_PACKAGE_LIBUSB_COMPAT
Jean-Christophe> + select BR2_PACKAGE_JIMTCL
Jean-Christophe> + help
Jean-Christophe> + OpenOCD - Open On-Chip Debugger
Jean-Christophe> +
Jean-Christophe> + http://openocd.berlios.de/web/
Jean-Christophe> +
Jean-Christophe> +if BR2_PACKAGE_OPENOCD
Jean-Christophe> +
Jean-Christophe> +choice
Jean-Christophe> + prompt "OPENOCD Git"
Jean-Christophe> + default BR2_TARGET_OPENOCD_GIT
Jean-Christophe> + help
Jean-Christophe> + Select the specific OpenOCD Git you want to use

Quoted 1 line

Again, do we really need the version / git location options?

as explain on jimtcl,
I do use it every day due to network issue and help for development So I wish to keep it

Quoted 7 lines

Jean-Christophe> +config BR2_PACKAGE_OPENOCD_ETM
Jean-Christophe> + bool "OpenOCD+trace ETM capture hardware"
Jean-Christophe> + help
Jean-Christophe> + OpenOCD+trace ETM capture hardware for some prototype

That help text could use some work I think.

Copy paste from ./configure

Quoted 3 lines
Signature · 2 lines
-- 
Bye, Peter Korsgaard
#5 lore raw

PATCH 1/2 package: add jimtcl support

In reply to Jean-Christophe PLAGNIOL-VILLARD
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Jean-Christophe" == Jean-Christophe PLAGNIOL-VILLARD <[email protected]> writes:

Jean-Christophe> you will download it via git Jean-Christophe> and can specify which repos and/or which commit

Jean-Christophe> Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]> Jean-Christophe> Cc: Nicolas Ferre <[email protected]> Jean-Christophe> Cc: Patrice Vilchez <[email protected]> Jean-Christophe> ---

 Jean-Christophe>  package/Config.in        |    1 +
 Jean-Christophe>  package/jimtcl/Config.in |   65 ++++++++++++++++++++++++++++++++++++++++++++++
 Jean-Christophe>  package/jimtcl/jimtcl.mk |   30 +++++++++++++++++++++
 Jean-Christophe>  3 files changed, 96 insertions(+), 0 deletions(-)
 Jean-Christophe>  create mode 100644 package/jimtcl/Config.in
 Jean-Christophe>  create mode 100644 package/jimtcl/jimtcl.mk

Jean-Christophe> diff --git a/package/Config.in b/package/Config.in Jean-Christophe> index 76b2076..cd89892 100644 Jean-Christophe> --- a/package/Config.in Jean-Christophe> +++ b/package/Config.in Jean-Christophe> @@ -231,6 +231,7 @@ source "package/php/Config.in"

 Jean-Christophe>  source "package/python/Config.in"
 Jean-Christophe>  source "package/ruby/Config.in"
 Jean-Christophe>  source "package/tcl/Config.in"

Jean-Christophe> +source "package/jimtcl/Config.in"

Please sort alphabetically.

Jean-Christophe> endmenu

Jean-Christophe> menu "Libraries"
Jean-Christophe> diff --git a/package/jimtcl/Config.in b/package/jimtcl/Config.in Jean-Christophe> new file mode 100644
Jean-Christophe> index 0000000..7847d19
Jean-Christophe> --- /dev/null
Jean-Christophe> +++ b/package/jimtcl/Config.in
Jean-Christophe> @@ -0,0 +1,65 @@
Jean-Christophe> +menuconfig BR2_PACKAGE_JIMTCL
Jean-Christophe> + bool "jimtcl"
Jean-Christophe> + help
Jean-Christophe> + Small footprint implementation of Tcl programming language
Jean-Christophe> +
Jean-Christophe> + http://jim.berlios.de/
Jean-Christophe> +
Jean-Christophe> +if BR2_PACKAGE_JIMTCL
Jean-Christophe> +
Jean-Christophe> +choice
Jean-Christophe> + prompt "JIMTCL Version"

You have a mix of jimtcl/JIMTCL/Jimtcl - Please use the same capitalization everywhere.

Jean-Christophe> + default BR2_TARGET_JIMTCL_GIT
Jean-Christophe> + help
Jean-Christophe> + Select the specific jimtcl version you want to use
Jean-Christophe> +
Jean-Christophe> +config BR2_TARGET_JIMTCL_GIT
Jean-Christophe> + bool "Official git"
Jean-Christophe> +
Jean-Christophe> +config BR2_TARGET_JIMTCL_GIT_CUSTOM
Jean-Christophe> + bool "Custom"

Is there really a need to support anything else than 0.70? We prefer to only have 1 version as that simplified implementation and testing.

Jean-Christophe> +############################################################# Jean-Christophe> +#
Jean-Christophe> +# jimtcl
Jean-Christophe> +#
Jean-Christophe> +############################################################# Jean-Christophe> +JIMTCL_VERSION:=$(call qstrip,$(BR2_TARGET_JIMTCL_VERSION)) Jean-Christophe> +JIMTCL_SITE_METHOD:=git

Please use ' = ' rather than ':=' unless you have a special need for the direct expansion.

Jean-Christophe> +DL_TOOLS_DEPENDENCIES += git

That's handled automatically.

Jean-Christophe> +JIMTCL_INSTALL_STAGING = YES
Jean-Christophe> +JIMTCL_INSTALL_TARGET = NO

Why no installation on target?

Jean-Christophe> +
Jean-Christophe> +OPENOCD_AUTORECONF = YES

This is JIMTCL, not OPENOCD.

Jean-Christophe> +
Jean-Christophe> +JIMTCL_INSTALL_STAGING_OPT= DESTDIR=$(STAGING_DIR)/usr install

Does it really use autotools and have broken DESTDIR support?

Jean-Christophe> +$(eval $(call AUTOTARGETS,package,jimtcl))

Signature · 1 line
Bye, Peter Korsgaard
#6 lore raw

PATCH 1/2 package: add jimtcl support

Quoted 10 lines

Jean-Christophe> + default BR2_TARGET_JIMTCL_GIT
Jean-Christophe> + help
Jean-Christophe> + Select the specific jimtcl version you want to use
Jean-Christophe> +
Jean-Christophe> +config BR2_TARGET_JIMTCL_GIT
Jean-Christophe> + bool "Official git"
Jean-Christophe> +
Jean-Christophe> +config BR2_TARGET_JIMTCL_GIT_CUSTOM
Jean-Christophe> + bool "Custom"

Quoted 2 lines

Is there really a need to support anything else than 0.70? We prefer to only have 1 version as that simplified implementation and testing.

I do use the the HEAD personally
but the 0.70 is the last release I see project still using the previous one

I do use the custom git it offen as download from China or 3G is slow And for dev I really like to be able to build my target from my own tree

I do not known yet how to implement it but, I get in my mind the idea to add for the scm the same idea as for http download, the mirror mecanism When you work offline or on slow internet network it's really good

Quoted 12 lines

Jean-Christophe> +############################################################# Jean-Christophe> +#
Jean-Christophe> +# jimtcl
Jean-Christophe> +#
Jean-Christophe> +############################################################# Jean-Christophe> +JIMTCL_VERSION:=$(call qstrip,$(BR2_TARGET_JIMTCL_VERSION)) Jean-Christophe> +JIMTCL_SITE_METHOD:=git

Please use ' = ' rather than ':=' unless you have a special need for the direct expansion.

Quoted 8 lines

Jean-Christophe> +DL_TOOLS_DEPENDENCIES += git

That's handled automatically.

Jean-Christophe> +JIMTCL_INSTALL_STAGING = YES
Jean-Christophe> +JIMTCL_INSTALL_TARGET = NO

Why no installation on target?

no need of it for openocd we just link link to it staticly

Quoted 10 lines

Jean-Christophe> +
Jean-Christophe> +OPENOCD_AUTORECONF = YES

This is JIMTCL, not OPENOCD.

Jean-Christophe> +
Jean-Christophe> +JIMTCL_INSTALL_STAGING_OPT= DESTDIR=$(STAGING_DIR)/usr install

Does it really use autotools and have broken DESTDIR support?

yeah the --prefix is ignore, even if you pass --prefix=/usr it will install in /include

Best Regards,
J.

#7 lore raw

PATCH 1/2 package: add jimtcl support

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Jean-Christophe" == Jean-Christophe PLAGNIOL-VILLARD <[email protected]> writes:

Hi,

Quoted 2 lines
Quoted 2 lines

Is there really a need to support anything else than 0.70? We prefer to only have 1 version as that simplified implementation and testing.

Jean-Christophe> I do use the the HEAD personally

Jean-Christophe> but the 0.70 is the last release I see project still Jean-Christophe> using the previous one

What does openocd need? I would prefer to only have 0.70.

Jean-Christophe> I do not known yet how to implement it but, I get in Jean-Christophe> my mind the idea to add for the scm the same idea as Jean-Christophe> for http download, the mirror mecanism When you work Jean-Christophe> offline or on slow internet network it's really good

That should work today - E.G. the git support creates a tarball which will be reused next time you build or can be put on a mirror server.

Jean-Christophe> +JIMTCL_INSTALL_STAGING = YES
Jean-Christophe> +JIMTCL_INSTALL_TARGET = NO

Quoted 2 lines
Quoted 2 lines

Why no installation on target?

Jean-Christophe> no need of it for openocd we just link link to it staticly

Ok, but we want a generic package. What does it install? Just a shared/static library or also some tools?

Quoted 1 line
Quoted 1 line

Does it really use autotools and have broken DESTDIR support?

Jean-Christophe> yeah the --prefix is ignore, even if you pass Jean-Christopha> --prefix=/usr it will install in /include

That sound like something to fix upstream then.

Signature · 1 line
Bye, Peter Korsgaard
#8 lore raw

PATCH 1/2 package: add jimtcl support

Quoted 7 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Jean-Christophe" == Jean-Christophe PLAGNIOL-VILLARD <[email protected]> writes:

Hi,

Quoted 2 lines
Quoted 2 lines

Is there really a need to support anything else than 0.70? We prefer to only have 1 version as that simplified implementation and testing.

Quoted 6 lines

Jean-Christophe> I do use the the HEAD personally

Jean-Christophe> but the 0.70 is the last release I see project still Jean-Christophe> using the previous one

What does openocd need? I would prefer to only have 0.70.

0.70 but openocd use the HEAD usualy

Quoted 8 lines

Jean-Christophe> I do not known yet how to implement it but, I get in Jean-Christophe> my mind the idea to add for the scm the same idea as Jean-Christophe> for http download, the mirror mecanism When you work Jean-Christophe> offline or on slow internet network it's really good

That should work today - E.G. the git support creates a tarball which will be reused next time you build or can be put on a mirror server.

The idea is to use the tree directly and not everytime create a tarball

Quoted 9 lines

Jean-Christophe> +JIMTCL_INSTALL_STAGING = YES
Jean-Christophe> +JIMTCL_INSTALL_TARGET = NO

Quoted 2 lines
Quoted 2 lines

Why no installation on target?

Jean-Christophe> no need of it for openocd we just link link to it staticly

Ok, but we want a generic package. What does it install? Just a shared/static library or also some tools?

shared, tools and static
so I can make the them optional as no need for openocd

Quoted 7 lines
Quoted 2 lines
Quoted 2 lines

Does it really use autotools and have broken DESTDIR support?

Jean-Christophe> yeah the --prefix is ignore, even if you pass Jean-Christopha> --prefix=/usr it will install in /include

That sound like something to fix upstream then.

All the version are affected

Best Regards,
J.

#9 lore raw

PATCH 1/2 package: add jimtcl support

Hello,

Quoted 5 lines · On Mon, 2 May 2011 07:41:15 +0200 Jean-Christophe PLAGNIOL-VILLARD…
Quoted 3 lines

That should work today - E.G. the git support creates a tarball which will be reused next time you build or can be put on a mirror server.

The idea is to use the tree directly and not everytime create a tarball

That's something I plan to add globally at the package infrastructure level. We need it for many other packages as well, for example the bootloaders or the kernel. So there's infrastructure work to be done to implement this, but I'd prefer to wait this work to be done rather than cluttering each independent package with this kind of specific handling.

My idea is that users could write a "local.mk" file, in which they could do:

JIMTCL_OVERRIDE_SRCDIR = /my/own/location

and Buildroot will use /my/own/location as the sources for JIMTCL.

Best regards,

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
#10 lore raw

PATCH 1/2 package: add jimtcl support

Quoted 17 lines · Thomas Petazzoni

Hello,

Quoted 5 lines · On Mon, 2 May 2011 07:41:15 +0200 Jean-Christophe PLAGNIOL-VILLARD…
Quoted 3 lines

That should work today - E.G. the git support creates a tarball which will be reused next time you build or can be put on a mirror server.

The idea is to use the tree directly and not everytime create a tarball

That's something I plan to add globally at the package infrastructure level. We need it for many other packages as well, for example the bootloaders or the kernel. So there's infrastructure work to be done to implement this, but I'd prefer to wait this work to be done rather than cluttering each independent package with this kind of specific handling.

Quoted 6 lines

My idea is that users could write a "local.mk" file, in which they could do:

JIMTCL_OVERRIDE_SRCDIR = /my/own/location

and Buildroot will use /my/own/location as the sources for JIMTCL.

For now I'll post a patch to allow scm mirrors

Personnaly I use this alot I've a gitosis with mirror of all my componet I work on so I can easly update them and reclone them quickly
I do the same on Mercurial
or svn via git tree

Best Regards,
J.