mirror of
https://github.com/motioneye-project/motioneyeos.git
synced 2025-07-27 21:26:36 +00:00
Use --enable-sjlj-exceptions when configuring gcc so that exception handling
works for dynamicly linked executables. Only tested so far on i386 with gcc 3.3.2. But combined with the latest ldso updates, I can now get a dynamicly linked java helloworld app to run. Add a config toggle for building gcj and libgcj. The build runs fine through gcc-final but currently requires hand interventions to build gcc-target. Again, only tested so far on i386.
This commit is contained in:
parent
0209686130
commit
18cefb81d1
14
Makefile
14
Makefile
@ -94,6 +94,11 @@ SOFT_FLOAT:=false
|
|||||||
TARGET_OPTIMIZATION=-Os
|
TARGET_OPTIMIZATION=-Os
|
||||||
TARGET_DEBUGGING= #-g
|
TARGET_DEBUGGING= #-g
|
||||||
|
|
||||||
|
# Currently the unwind stuff seems to work for staticly linked apps but
|
||||||
|
# not dynamic. So use setjmp/longjmp exceptions by default.
|
||||||
|
GCC_USE_SJLJ_EXCEPTIONS:=--enable-sjlj-exceptions
|
||||||
|
#GCC_USE_SJLJ_EXCEPTIONS:=
|
||||||
|
|
||||||
# Any additional gcc options you may want to include....
|
# Any additional gcc options you may want to include....
|
||||||
EXTRA_GCC_CONFIG_OPTIONS:=
|
EXTRA_GCC_CONFIG_OPTIONS:=
|
||||||
|
|
||||||
@ -108,6 +113,11 @@ MULTILIB:=--enable-multilib
|
|||||||
# Build/install c++ compiler and libstdc++?
|
# Build/install c++ compiler and libstdc++?
|
||||||
INSTALL_LIBSTDCPP:=true
|
INSTALL_LIBSTDCPP:=true
|
||||||
|
|
||||||
|
# Build/install java compiler and libgcj? (requires c++)
|
||||||
|
# WARNING!!! DOES NOT BUILD FOR TARGET WITHOUT INTERVENTION!!! mjn3
|
||||||
|
#INSTALL_LIBGCJ:=true
|
||||||
|
INSTALL_LIBGCJ:=false
|
||||||
|
|
||||||
# For SMP machines some stuff can be run in parallel
|
# For SMP machines some stuff can be run in parallel
|
||||||
#JLEVEL=-j3
|
#JLEVEL=-j3
|
||||||
|
|
||||||
@ -209,6 +219,10 @@ TARGET_SOFT_FLOAT:=
|
|||||||
ARCH_FPU_SUFFIX:=
|
ARCH_FPU_SUFFIX:=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq ($(INSTALL_LIBGCJ),true)
|
||||||
|
INSTALL_LIBSTDCPP:=true
|
||||||
|
endif
|
||||||
|
|
||||||
# WARNING -- uClibc currently disables large file support on cris.
|
# WARNING -- uClibc currently disables large file support on cris.
|
||||||
ifeq ("$(strip $(ARCH))","cris")
|
ifeq ("$(strip $(ARCH))","cris")
|
||||||
BUILD_WITH_LARGEFILE:=false
|
BUILD_WITH_LARGEFILE:=false
|
||||||
|
@ -39,11 +39,15 @@ GCC_CAT:=bzcat
|
|||||||
#
|
#
|
||||||
#############################################################
|
#############################################################
|
||||||
|
|
||||||
|
ifeq ($(INSTALL_LIBGCJ),true)
|
||||||
|
TARGET_LANGUAGES:=c,c++,java
|
||||||
|
else
|
||||||
ifeq ($(INSTALL_LIBSTDCPP),true)
|
ifeq ($(INSTALL_LIBSTDCPP),true)
|
||||||
TARGET_LANGUAGES:=c,c++
|
TARGET_LANGUAGES:=c,c++
|
||||||
else
|
else
|
||||||
TARGET_LANGUAGES:=c
|
TARGET_LANGUAGES:=c
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
#############################################################
|
#############################################################
|
||||||
#
|
#
|
||||||
@ -138,6 +142,7 @@ $(GCC_BUILD_DIR2)/.configured: $(GCC_DIR)/.patched $(STAGING_DIR)/$(REAL_GNU_TAR
|
|||||||
$(DISABLE_NLS) \
|
$(DISABLE_NLS) \
|
||||||
$(MULTILIB) \
|
$(MULTILIB) \
|
||||||
$(SOFT_FLOAT_CONFIG_OPTION) \
|
$(SOFT_FLOAT_CONFIG_OPTION) \
|
||||||
|
$(GCC_USE_SJLJ_EXCEPTIONS) \
|
||||||
$(EXTRA_GCC_CONFIG_OPTIONS));
|
$(EXTRA_GCC_CONFIG_OPTIONS));
|
||||||
touch $(GCC_BUILD_DIR2)/.configured
|
touch $(GCC_BUILD_DIR2)/.configured
|
||||||
|
|
||||||
@ -205,6 +210,7 @@ $(GCC_BUILD_DIR3)/.configured: $(GCC_BUILD_DIR2)/.installed
|
|||||||
$(DISABLE_NLS) \
|
$(DISABLE_NLS) \
|
||||||
$(MULTILIB) \
|
$(MULTILIB) \
|
||||||
$(SOFT_FLOAT_CONFIG_OPTION) \
|
$(SOFT_FLOAT_CONFIG_OPTION) \
|
||||||
|
$(GCC_USE_SJLJ_EXCEPTIONS) \
|
||||||
$(EXTRA_GCC_CONFIG_OPTIONS));
|
$(EXTRA_GCC_CONFIG_OPTIONS));
|
||||||
touch $(GCC_BUILD_DIR3)/.configured
|
touch $(GCC_BUILD_DIR3)/.configured
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user