Integration with Buildroot Toolchain Eclipse 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>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
Thomas Petazzoni 2013-01-13 04:52:13 +00:00 committed by Peter Korsgaard
parent dfe780994b
commit 217ef08a97
3 changed files with 42 additions and 0 deletions

View File

@ -347,6 +347,10 @@ TARGETS+=target-generatelocales
endif endif
endif endif
ifeq ($(BR2_ECLIPSE_REGISTER),y)
TARGETS+=toolchain-eclipse-register
endif
include fs/common.mk include fs/common.mk
TARGETS_CLEAN:=$(patsubst %,%-clean,$(TARGETS)) TARGETS_CLEAN:=$(patsubst %,%-clean,$(TARGETS))
@ -542,6 +546,9 @@ target-generatelocales: host-localedef
done done
endif endif
toolchain-eclipse-register:
./support/scripts/eclipse-register-toolchain `readlink -f $(O)` $(notdir $(TARGET_CROSS)) $(BR2_ARCH)
source: dirs $(TARGETS_SOURCE) $(HOST_SOURCE) source: dirs $(TARGETS_SOURCE) $(HOST_SOURCE)
external-deps: external-deps:

View File

@ -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}

View File

@ -131,3 +131,10 @@ config BR2_TARGET_LDFLAGS
string "Target linker options" string "Target linker options"
help help
Extra options to pass to the linker when building for the target. 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.