diff options
-rw-r--r-- | Makefile | 6 | ||||
-rw-r--r-- | RepositoryFixes.mk | 2 | ||||
-rw-r--r-- | basctl/Module_basctl.mk | 2 | ||||
-rw-r--r-- | basic/Module_basic.mk | 2 | ||||
-rw-r--r-- | config_host.mk.in | 1 | ||||
-rw-r--r-- | configure.in | 38 | ||||
-rw-r--r-- | postprocess/packcomponents/makefile.mk | 2 | ||||
-rw-r--r-- | sc/Module_sc.mk | 2 | ||||
-rw-r--r-- | scripting/Module_scripting.mk | 2 | ||||
-rw-r--r-- | solenv/gbuild/CppunitTest.mk | 2 | ||||
-rw-r--r-- | solenv/gbuild/gbuild.mk | 4 | ||||
-rw-r--r-- | sw/Module_sw.mk | 2 | ||||
-rw-r--r-- | vbahelper/Module_vbahelper.mk | 2 |
13 files changed, 51 insertions, 16 deletions
@@ -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,\ |