summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile6
-rw-r--r--RepositoryFixes.mk2
-rw-r--r--basctl/Module_basctl.mk2
-rw-r--r--basic/Module_basic.mk2
-rw-r--r--config_host.mk.in1
-rw-r--r--configure.in38
-rw-r--r--postprocess/packcomponents/makefile.mk2
-rw-r--r--sc/Module_sc.mk2
-rw-r--r--scripting/Module_scripting.mk2
-rw-r--r--solenv/gbuild/CppunitTest.mk2
-rw-r--r--solenv/gbuild/gbuild.mk4
-rw-r--r--sw/Module_sw.mk2
-rw-r--r--vbahelper/Module_vbahelper.mk2
13 files changed, 51 insertions, 16 deletions
diff --git a/Makefile b/Makefile
index 68bea915752e..810de1dfae93 100644
--- a/Makefile
+++ b/Makefile
@@ -382,12 +382,12 @@ bootstrap: $(WORKDIR_BOOTSTRAP)
# Build
#
build: bootstrap fetch $(if $(filter $(INPATH),$(INPATH_FOR_BUILD)),,cross-toolset)
-ifeq ($(OS),IOS)
+ifeq ($(DISABLE_INTERPRETERS),TRUE)
# We must get the headers from basic and vbahelper "delivered" because
# as we don't link to any libs from those they won't otherwise be, or
# something. And we still do include those headers always even if the
-# libs aren't built for iOS. (Ifdefs for iOS will be added later as
-# necessary to take care of that.)
+# libs aren't built in the --disable-interpreters case. (Ifdefs for
+# DISABLE_INTERPRETERS will be added to the code later as necessary.)
$(GNUMAKE) basic vbahelper
endif
ifeq ($(DISABLE_DBCONNECTIVITY),TRUE)
diff --git a/RepositoryFixes.mk b/RepositoryFixes.mk
index 95602be46d6c..57946ad99fbe 100644
--- a/RepositoryFixes.mk
+++ b/RepositoryFixes.mk
@@ -130,7 +130,7 @@ endif # ifeq ($(COM),GCC)
endif # ifeq ($(OS),WNT)
-ifeq ($(OS),IOS)
+ifeq (,$(filter INTERPRETERS,$(BUILD_TYPE)))
gb_Library_FILENAMES := $(patsubst sb:libsb%,,$(gb_Library_FILENAMES))
gb_Library_FILENAMES := $(patsubst vbahelper:libvbahelper%,,$(gb_Library_FILENAMES))
diff --git a/basctl/Module_basctl.mk b/basctl/Module_basctl.mk
index b61cbcd4d4c5..68178ae810ca 100644
--- a/basctl/Module_basctl.mk
+++ b/basctl/Module_basctl.mk
@@ -28,7 +28,7 @@
$(eval $(call gb_Module_Module,basctl))
-ifneq (IOS,$(OS))
+ifneq ($(DISABLE_INTERPRETERS),TRUE)
$(eval $(call gb_Module_add_targets,basctl,\
AllLangResTarget_basctl \
diff --git a/basic/Module_basic.mk b/basic/Module_basic.mk
index 7e749d0d9f87..261f6e68475c 100644
--- a/basic/Module_basic.mk
+++ b/basic/Module_basic.mk
@@ -28,7 +28,7 @@
$(eval $(call gb_Module_Module,basic))
-ifneq (IOS,$(OS))
+ifneq ($(DISABLE_INTERPRETERS),TRUE)
$(eval $(call gb_Module_add_targets,basic,\
AllLangResTarget_sb \
diff --git a/config_host.mk.in b/config_host.mk.in
index ff976a7af87c..535b25b48ef6 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -79,6 +79,7 @@ export DIRECTXSDK_LIB=@DIRECTXSDK_LIB@
export DISABLE_ACTIVEX=@DISABLE_ACTIVEX@
export DISABLE_ATL=@DISABLE_ATL@
export DISABLE_DBCONNECTIVITY=@DISABLE_DBCONNECTIVITY@
+export DISABLE_INTERPRETERS=@DISABLE_INTERPRETERS@
export DISABLE_LINKOO=@DISABLE_LINKOO@
export DISABLE_NEON=@DISABLE_NEON@
export DISABLE_PYTHON=@DISABLE_PYTHON@
diff --git a/configure.in b/configure.in
index 3b27ac838781..cc251d2d3d59 100644
--- a/configure.in
+++ b/configure.in
@@ -384,7 +384,12 @@ AC_ARG_ENABLE(ext-barcode,
AC_ARG_ENABLE(database-connectivity,
AS_HELP_STRING([--disable-database-connectivity],
- [Disable various database connectivity. Work in progress, don't use.])
+ [Disable various database connectivity. Work in progress, use only if you are hacking on it.])
+)
+
+AC_ARG_ENABLE(interpreters,
+ AS_HELP_STRING([--disable-interpreters],
+ [Disable BASIC, Java and Python. Work in progress, use only if you are hacking on it.])
)
AC_ARG_ENABLE(ext-diagram,
@@ -2031,6 +2036,22 @@ else
fi
AC_SUBST(DISABLE_DBCONNECTIVITY)
+if test -z "$enable_interpreters"; then
+ # Disable interpreters for iOS unless specifically overridden
+ # with --enable-interpreters.
+ if test $_os != iOS; then
+ enable_interpreters=yes
+ fi
+fi
+
+DISABLE_INTERPRETERS=''
+if test "$enable_interpreters" = yes; then
+ BUILD_TYPE="$BUILD_TYPE INTERPRETERS"
+else
+ DISABLE_INTERPRETERS='TRUE'
+fi
+AC_SUBST(DISABLE_INTERPRETERS)
+
dnl ===================================================================
dnl Extra check for Windows. Cygwin builds need gcc to build dmake
dnl although MSVC is used to build other build-time tools and
@@ -4508,8 +4529,13 @@ dnl Java support enable
dnl ===================================================================
AC_MSG_CHECKING([whether to build with Java support])
if test "$with_java" != "no"; then
- AC_MSG_RESULT([yes])
- SOLAR_JAVA="TRUE"
+ if test "$DISABLE_INTERPRETERS" = TRUE; then
+ AC_MSG_RESULT([no, overridden by --disable-interpreters])
+ SOLAR_JAVA=""
+ else
+ AC_MSG_RESULT([yes])
+ SOLAR_JAVA="TRUE"
+ fi
else
AC_MSG_RESULT([no])
SOLAR_JAVA=""
@@ -5921,7 +5947,11 @@ no|disable)
DISABLE_PYTHON=TRUE
;;
""|yes|auto)
- if test $build_os = cygwin; then
+ if test "$DISABLE_INTERPRETERS" = TRUE; then
+ AC_MSG_RESULT([no, overridden by --disable-interpreters])
+ enable_python=no
+ DISABLE_PYTHON=TRUE
+ elif test $build_os = cygwin; then
dnl When building on Windows we don't attempt to use any installed
dnl "system" Python.
dnl
diff --git a/postprocess/packcomponents/makefile.mk b/postprocess/packcomponents/makefile.mk
index d22888989f4d..ae463cc28951 100644
--- a/postprocess/packcomponents/makefile.mk
+++ b/postprocess/packcomponents/makefile.mk
@@ -177,7 +177,7 @@ my_components += \
.ENDIF
-.IF "$(OS)" != "IOS"
+.IF "$(DISABLE_INTERPRETERS)" != "TRUE"
my_components += \
component/basctl/util/basctl \
diff --git a/sc/Module_sc.mk b/sc/Module_sc.mk
index b0b3441466ba..c4a3e6e76c93 100644
--- a/sc/Module_sc.mk
+++ b/sc/Module_sc.mk
@@ -33,7 +33,7 @@ $(eval $(call gb_Module_add_targets,sc,\
Package_xml \
))
-ifneq (IOS,$(OS))
+ifneq ($(DISABLE_INTERPRETERS),TRUE)
$(eval $(call gb_Module_add_targets,sc,\
Library_vbaobj \
diff --git a/scripting/Module_scripting.mk b/scripting/Module_scripting.mk
index 3b6166729874..0ae160fa8008 100644
--- a/scripting/Module_scripting.mk
+++ b/scripting/Module_scripting.mk
@@ -28,7 +28,7 @@
$(eval $(call gb_Module_Module,scripting))
-ifneq (IOS,$(OS))
+ifneq ($(DISABLE_INTERPRETERS),TRUE)
$(eval $(call gb_Module_add_targets,scripting,\
$(if $(SOLAR_JAVA),\
diff --git a/solenv/gbuild/CppunitTest.mk b/solenv/gbuild/CppunitTest.mk
index 2f7447fe06bc..30f1021a9016 100644
--- a/solenv/gbuild/CppunitTest.mk
+++ b/solenv/gbuild/CppunitTest.mk
@@ -182,7 +182,7 @@ endef
# to libraries not built in this configuration.
define gb_CppunitTest__filter_not_built_components
$(filter-out \
- $(if $(filter $(OS),IOS), \
+ $(if $(filter INTERPRETERS,$(BUILD_TYPE)),, \
basic/util/sb \
sw/util/vbaswobj \
scripting/source/basprov/basprov \
diff --git a/solenv/gbuild/gbuild.mk b/solenv/gbuild/gbuild.mk
index 3eeff9143f87..b35d73a98e13 100644
--- a/solenv/gbuild/gbuild.mk
+++ b/solenv/gbuild/gbuild.mk
@@ -236,6 +236,10 @@ ifeq ($(strip $(DISABLE_DBCONNECTIVITY)),TRUE)
gb_GLOBALDEFS += -DDISABLE_DBCONNECTIVITY
endif
+ifeq ($(strip $(DISABLE_INTERPRETERS)),TRUE)
+gb_GLOBALDEFS += -DDISABLE_INTERPRETERS
+endif
+
ifeq ($(HAVE_THREADSAFE_STATICS),TRUE)
gb_GLOBALDEFS += -DHAVE_THREADSAFE_STATICS
endif
diff --git a/sw/Module_sw.mk b/sw/Module_sw.mk
index d9477e951d91..27aa061f01c6 100644
--- a/sw/Module_sw.mk
+++ b/sw/Module_sw.mk
@@ -39,7 +39,7 @@ $(eval $(call gb_Module_add_targets,sw,\
Package_xml \
))
-ifneq (IOS,$(OS))
+ifneq ($(DISABLE_INTERPRETERS),TRUE)
$(eval $(call gb_Module_add_targets,sw,\
Library_vbaswobj \
diff --git a/vbahelper/Module_vbahelper.mk b/vbahelper/Module_vbahelper.mk
index 28f710fd7db7..c9c68c89b80b 100644
--- a/vbahelper/Module_vbahelper.mk
+++ b/vbahelper/Module_vbahelper.mk
@@ -28,7 +28,7 @@
$(eval $(call gb_Module_Module,vbahelper))
-ifneq (IOS,$(OS))
+ifneq ($(DISABLE_INTERPRETERS),TRUE)
# the targets to be inserted are their file names without .mk extension
$(eval $(call gb_Module_add_targets,vbahelper,\