Message ID | 1358088734-23460-2-git-send-email-thomas.petazzoni@free-electrons.com |
---|---|
State | Accepted |
Commit | 217ef08a9768221ae02540498ae58e7436801f93 |
Headers | show |
>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:
Thomas> The Eclipse plugin at
Thomas> https://github.com/mbats/eclipse-buildroot-toolchain-plugin allows
Thomas> users of Eclipse to easily use the toolchain available in
Thomas> Buildroot. To do so, this plugin reads
Thomas> ~/.buildroot-eclipse.toolchains, which contains the list of Buildroot
Thomas> toolchains available on the system, and then offer those toolchains to
Thomas> compile Eclipse projects.
Thomas> In order to interface with this plugin, this commit adds an option
Thomas> that allows the user to tell whether (s)he wants the Buildroot project
Thomas> toolchain to be visible under this Eclipse plugin. It simply adds a
Thomas> line in this ~/.buildroot-eclipse.toolchains file.
Thomas> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Thomas> +++ b/support/scripts/eclipse-register-toolchain
Thomas> @@ -0,0 +1,28 @@
Thomas> +#!/bin/sh
Thomas> +
Thomas> +project_directory=$1
Thomas> +toolchain_prefix=$2
Thomas> +architecture=$3
Committed, thanks. I know this is an internal script, but a bit of
documentation / argument checking could have been good.
diff --git a/Makefile b/Makefile index 074674a..70cb229 100644 --- a/Makefile +++ b/Makefile @@ -336,6 +336,10 @@ TARGETS+=target-generatelocales endif endif +ifeq ($(BR2_ECLIPSE_REGISTER),y) +TARGETS+=toolchain-eclipse-register +endif + include fs/common.mk TARGETS_CLEAN:=$(patsubst %,%-clean,$(TARGETS)) @@ -531,6 +535,9 @@ target-generatelocales: host-localedef done endif +toolchain-eclipse-register: + ./support/scripts/eclipse-register-toolchain `readlink -f $(O)` $(notdir $(TARGET_CROSS)) $(BR2_ARCH) + source: dirs $(TARGETS_SOURCE) $(HOST_SOURCE) external-deps: diff --git a/support/scripts/eclipse-register-toolchain b/support/scripts/eclipse-register-toolchain new file mode 100755 index 0000000..dd9f158 --- /dev/null +++ b/support/scripts/eclipse-register-toolchain @@ -0,0 +1,28 @@ +#!/bin/sh + +project_directory=$1 +toolchain_prefix=$2 +architecture=$3 + +TOOLCHAIN_ECLIPSE_FILE=${HOME}/.buildroot-eclipse.toolchains + +if test -f ${TOOLCHAIN_ECLIPSE_FILE} ; then + mv ${TOOLCHAIN_ECLIPSE_FILE} ${TOOLCHAIN_ECLIPSE_FILE}.tmp + cat ${TOOLCHAIN_ECLIPSE_FILE}.tmp | while read toolchain ; do + path=$(echo ${toolchain} | cut -f1 -d ':') + # Filter lines corresponding to still existing projects + echo "Testing ${path} ..." + if ! test -d ${path} ; then + continue + fi + # .. and the current project + if test ${path} = ${project_directory} ; then + continue + fi + echo ${toolchain} >> ${TOOLCHAIN_ECLIPSE_FILE} + done + rm ${TOOLCHAIN_ECLIPSE_FILE}.tmp +fi + +# Add the toolchain +echo "${project_directory}:${toolchain_prefix}:${architecture}" >> ${TOOLCHAIN_ECLIPSE_FILE} diff --git a/toolchain/toolchain-common.in b/toolchain/toolchain-common.in index 9f11a39..f6905ae 100644 --- a/toolchain/toolchain-common.in +++ b/toolchain/toolchain-common.in @@ -131,3 +131,10 @@ config BR2_TARGET_LDFLAGS string "Target linker options" help Extra options to pass to the linker when building for the target. + +config BR2_ECLIPSE_REGISTER + bool "Register toolchain within Eclipse Buildroot plug-in" + help + This options tells Buildroot to generate the necessary + configuration files to make your toolchain appear within + Eclipse, through the Eclipse Buildroot plugin.
The Eclipse plugin at https://github.com/mbats/eclipse-buildroot-toolchain-plugin allows users of Eclipse to easily use the toolchain available in Buildroot. To do so, this plugin reads ~/.buildroot-eclipse.toolchains, which contains the list of Buildroot toolchains available on the system, and then offer those toolchains to compile Eclipse projects. In order to interface with this plugin, this commit adds an option that allows the user to tell whether (s)he wants the Buildroot project toolchain to be visible under this Eclipse plugin. It simply adds a line in this ~/.buildroot-eclipse.toolchains file. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> --- Makefile | 7 +++++++ support/scripts/eclipse-register-toolchain | 28 ++++++++++++++++++++++++++++ toolchain/toolchain-common.in | 7 +++++++ 3 files changed, 42 insertions(+) create mode 100755 support/scripts/eclipse-register-toolchain