diff options
author | Koen Kooi <koen@openembedded.org> | 2008-10-22 11:45:12 +0200 |
---|---|---|
committer | Koen Kooi <koen@openembedded.org> | 2008-10-22 11:45:12 +0200 |
commit | 976dcd1843d07fd2c2ee4aacc408c5528f434ae0 (patch) | |
tree | a6e6b92415a912714193734c86c22c4de728803e /packages/dsplink/files/Makefile.dsplink | |
parent | b0a9656acb9e03a77786abfd47cadf43531b9dcc (diff) |
dsplink: overhaul buildsystem
* 1.60 builds, needs tweaks to actually run
* you can't have a '.' in your pwd, it upsets the javascript config util, hence the fragile PV and PR munging
* needs to use gcc-cross-kernel instead of regular gcc
* pretty hardcoded to omap, but that should get fixed soon
Diffstat (limited to 'packages/dsplink/files/Makefile.dsplink')
-rwxr-xr-x | packages/dsplink/files/Makefile.dsplink | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/packages/dsplink/files/Makefile.dsplink b/packages/dsplink/files/Makefile.dsplink new file mode 100755 index 0000000000..7156bcbda3 --- /dev/null +++ b/packages/dsplink/files/Makefile.dsplink @@ -0,0 +1,106 @@ +# +# ======== makeunix ======== +# + +# Import Tools Path from Rules.make +#include Rules.make + +PROJECT_BASE_DIR = $(shell pwd) +LINUXKERNEL_INSTALL_DIR:=/home/rmonklocal/oe/angstrom-davinci-dvevm-tmp/staging/davinci-dvevm-angstrom-linux-gnueabi/kernel +LINK_INSTALL_DIR := /home/rmonklocal/dsplink_1_51/dsplink + +# The prefix to be added before the GNU compiler tools (optionally including +# path), i.e. "arm_v5t_le-" or "/opt/bin/arm_v5t_le-". +GPPTOOL_DIR:=/home/rmonklocal/oe/angstrom-davinci-dvevm-tmp/cross + +# ---- DSP tools ---- +DSP_BASE_CGTOOLS := /home/rmonklocal/opt/cg6x_6_0_19 +DSP_BASE_BIOS := /home/rmonklocal/opt/bios_5_32_03 +DSP_BASE_RTDX := /home/rmonklocal/opt/bios_5_32_03/packages/ti/rtdx +OSINC_PLATFORM1 := something +ARCHIVER_AR := something + +# ---- get build host OS ---- +UNAME=$(shell uname) +ifeq "$(UNAME)" "Linux" + BUILD_HOST_OS=Linux +else + BUILD_HOST_OS=Solaris +endif + +# ---- construct Link build make vars ---- +GPP_MAKE_OPTS := COMPILER=$(GPPTOOL_DIR)/bin/arm-angstrom-linux-gnueabi-gcc \ + LINKER=$(GPPTOOL_DIR)/bin/arm-angstrom-linux-gnueabi-gcc \ + LD=$(GPPTOOL_DIR)/bin/arm-angstrom-linux-gnueabi-ld \ + ARCHIVER1=$(GPPTOOL_DIR)/bin/arm-angstrom-linux-gnueabi-ld \ + ARCHIVER2=$(GPPTOOL_DIR)/bin/arm-angstrom-linux-gnueabi-ld \ + CROSS_COMPILE=arm-angstrom-linux-gnueabi- \ + DSPLINK=$(LINK_INSTALL_DIR) \ + BASE_TOOLCHAIN=$(GPPTOOL_DIR) \ + BASE_BUILDOS=$(LINUXKERNEL_INSTALL_DIR) \ + ARCHIVER=$(ARCHIVER_AR) OSINC_PLATFORM=$(OSINC_PLATFORM1) \ + #STD_KRNL_FLAGS=\ + -include linux/autoconf.h -c -iwithprefix include -Iinclude -Wall -Wstrict-prototypes \ + -Wno-trigraphs -fno-strict-aliasing -fno-common \ + -fno-omit-frame-pointer -mapcs -mno-sched-prolog \ + -mlittle-endian \ + -D__LINUX_ARM_ARCH__=5 -march=armv5t -mtune=arm9tdmi \ + -msoft-float -Uarm -mapcs \ + -Wdeclaration-after-statement -Os -marm -mabi=aapcs-linux + + #STD_KRNL_FLAGS=\ + -nostdinc \ + -isystem /home/rmonklocal/oe/angstrom-davinci-dvevm-tmp/cross/lib/gcc/arm-angstrom-linux-gnueabi/4.2.4/include \ + -D__KERNEL__ \ + -Iinclude -include include/linux/autoconf.h \ + -mlittle-endian \ + -Wall \ + -Wundef \ + -Wstrict-prototypes \ + -Wno-trigraphs \ + -fno-strict-aliasing \ + -fno-common \ + -Werror-implicit-function-declaration \ + -Os \ + -fno-stack-protector \ + -marm \ + -fno-omit-frame-pointer \ + -mapcs \ + -mno-sched-prolog \ + -mabi=aapcs-linux \ + -mno-thumb-interwork \ + -D__LINUX_ARM_ARCH__=5 \ + -march=armv5te \ + -mtune=arm9tdmi \ + -msoft-float \ + -Uarm \ + -fno-omit-frame-pointer \ + -fno-optimize-sibling-calls \ + -Wdeclaration-after-statement \ + -Wno-pointer-sign \ + -c + +DSP_MAKE_OPTS := DSPLINK=$(DSPLINK) \ + DPPROOT=$(DSPLINK)/dsp \ + BASE_SABIOS=$(DSP_BASE_BIOS) \ + BASE_CGTOOLS=$(DSP_BASE_CGTOOLS) \ + BASE_RTDX=$(DSP_BASE_RTDX) + + +# ======== all ======== +all: $(LINK_INSTALL_DIR)/packages/dsplink/gpp/export/BIN/Linux/Davinci/RELEASE/dsplinkk.ko + +$(LINK_INSTALL_DIR)/packages/dsplink/gpp/export/BIN/Linux/Davinci/RELEASE/dsplinkk.ko: + @echo Building DSPLINK GPP driver, libs + make -s -C $(LINK_INSTALL_DIR)/gpp/src $(GPP_MAKE_OPTS) + make -s -C $(DSPLINK)/gpp/src/samples $(GPP_MAKE_OPTS) + @echo Building DSPLINK DSP libs and message sample for DaVinci... + make -C $(DSPLINK)/dsp/src $(DSP_MAKE_OPTS) + make -C $(DSPLINK)/dsp/src/samples $(DSP_MAKE_OPTS) + +# clean rules +clean: + @echo Cleaning DSPLINK GPP driver, libs + make -s -C $(LINK_INSTALL_DIR)/gpp/src $(GPP_MAKE_OPTS) clean + @rm -rf $(LINK_INSTALL_DIR)/gpp/export/BIN/* + @rm -rf $(LINK_INSTALL_DIR)/gpp/export/INCLUDE/* |