summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatúš Kukan <matus.kukan@gmail.com>2011-07-28 18:17:31 +0200
committerMatúš Kukan <matus.kukan@gmail.com>2011-07-30 10:39:20 +0200
commitc8e76fbfed9b39f51e19572ae348aab47b41ad28 (patch)
treeb00cf6abe99fc8217fb5360510d112e6704c380d
parent409bb26b28f062d0dc1407a70f349533dcf611d2 (diff)
convert basic to gbuild
-rw-r--r--[-rwxr-xr-x]basic/AllLangResTarget_sb.mk (renamed from basic/source/uno/makefile.mk)34
-rw-r--r--[-rwxr-xr-x]basic/AllLangResTarget_stt.mk (renamed from basic/source/sample/makefile.mk)49
-rw-r--r--basic/Library_sb.mk180
-rw-r--r--[-rwxr-xr-x]basic/Makefile (renamed from basic/source/basmgr/makefile.mk)29
-rw-r--r--basic/Module_basic.mk39
-rw-r--r--basic/Package_inc.mk67
-rw-r--r--basic/StaticLibrary_app.mk64
-rw-r--r--basic/StaticLibrary_sample.mk50
-rw-r--r--basic/inc/basic/basicdllapi.h16
-rw-r--r--basic/inc/basic/basicmanagerrepository.hxx5
-rw-r--r--basic/inc/basic/basicrt.hxx7
-rw-r--r--basic/inc/basic/basmgr.hxx31
-rw-r--r--basic/inc/basic/basrdll.hxx3
-rw-r--r--basic/inc/basic/modsizeexceeded.hxx3
-rw-r--r--basic/inc/basic/mybasic.hxx5
-rw-r--r--basic/inc/basic/process.hxx7
-rw-r--r--basic/inc/basic/sbdef.hxx50
-rw-r--r--basic/inc/basic/sbmeth.hxx9
-rw-r--r--basic/inc/basic/sbmod.hxx11
-rw-r--r--basic/inc/basic/sbobjmod.hxx15
-rw-r--r--basic/inc/basic/sbprop.hxx7
-rw-r--r--basic/inc/basic/sbstar.hxx15
-rw-r--r--basic/inc/basic/sbstdobj.hxx10
-rw-r--r--basic/inc/basic/sbuno.hxx11
-rw-r--r--basic/inc/basic/sbx.hxx21
-rw-r--r--basic/inc/basic/sbxbase.hxx3
-rw-r--r--basic/inc/basic/sbxcore.hxx3
-rw-r--r--basic/inc/basic/sbxfac.hxx3
-rw-r--r--basic/inc/basic/sbxform.hxx43
-rw-r--r--basic/inc/basic/sbxmeth.hxx3
-rw-r--r--basic/inc/basic/sbxmstrm.hxx3
-rw-r--r--basic/inc/basic/sbxobj.hxx7
-rw-r--r--basic/inc/basic/sbxprop.hxx3
-rw-r--r--basic/inc/basic/sbxvar.hxx11
-rw-r--r--basic/inc/basic/testtool.hxx5
-rw-r--r--basic/inc/basic/ttstrhlp.hxx9
-rw-r--r--basic/inc/basic/vbahelper.hxx11
-rw-r--r--basic/prj/build.lst12
-rw-r--r--basic/prj/d.lst29
-rw-r--r--[-rwxr-xr-x]basic/prj/makefile.mk (renamed from basic/inc/makefile.mk)29
-rw-r--r--basic/source/app/dialogs.cxx1
-rwxr-xr-xbasic/source/app/makefile.mk77
-rw-r--r--basic/source/app/testbasi.cxx34
-rw-r--r--basic/source/app/ttbasic.cxx39
-rwxr-xr-xbasic/source/classes/makefile.mk76
-rwxr-xr-xbasic/source/comp/makefile.mk57
-rw-r--r--basic/source/inc/sbintern.hxx60
-rwxr-xr-xbasic/source/runtime/makefile.mk84
-rwxr-xr-xbasic/source/sbx/makefile.mk77
-rwxr-xr-xbasic/util/makefile.mk153
50 files changed, 719 insertions, 851 deletions
diff --git a/basic/source/uno/makefile.mk b/basic/AllLangResTarget_sb.mk
index 52e7f7004c4d..2fe6ba6f685b 100755..100644
--- a/basic/source/uno/makefile.mk
+++ b/basic/AllLangResTarget_sb.mk
@@ -1,8 +1,8 @@
#*************************************************************************
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# Copyright 2000, 2011 Oracle and/or its affiliates.
#
# OpenOffice.org - a multi-platform office productivity suite
#
@@ -25,25 +25,23 @@
#
#*************************************************************************
-PRJ=..$/..
-
-PRJNAME=basic
-TARGET=uno
+$(eval $(call gb_AllLangResTarget_AllLangResTarget,sb))
-ENABLE_EXCEPTIONS=TRUE
-# --- Settings ------------------------------------------------------------
+$(eval $(call gb_AllLangResTarget_add_srs,sb,\
+ sb/res \
+))
-.INCLUDE : settings.mk
+$(eval $(call gb_SrsTarget_SrsTarget,sb/res))
-SLOFILES= \
- $(SLO)$/namecont.obj \
- $(SLO)$/scriptcont.obj \
- $(SLO)$/dlgcont.obj \
- $(SLO)$/sbmodule.obj \
- $(SLO)$/sbservices.obj \
- $(SLO)$/modsizeexceeded.obj
+$(eval $(call gb_SrsTarget_set_include,sb/res,\
+ $$(INCLUDE) \
+ -I$(realpath $(SRCDIR)/basic/inc) \
+))
-# --- Targets --------------------------------------------------------------
+$(eval $(call gb_SrsTarget_add_files,sb/res,\
+ basic/source/classes/sb.src \
+ basic/source/sbx/format.src \
+))
-.INCLUDE : target.mk
+# vim: set noet sw=4:
diff --git a/basic/source/sample/makefile.mk b/basic/AllLangResTarget_stt.mk
index 5261f13cfe43..1e054a8929a8 100755..100644
--- a/basic/source/sample/makefile.mk
+++ b/basic/AllLangResTarget_stt.mk
@@ -1,8 +1,8 @@
#*************************************************************************
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# Copyright 2000, 2011 Oracle and/or its affiliates.
#
# OpenOffice.org - a multi-platform office productivity suite
#
@@ -25,37 +25,24 @@
#
#*************************************************************************
-PRJ=..$/..
-
-PRJNAME=basic
-TARGET=sample
-
-# --- Settings ------------------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Allgemein ------------------------------------------------------------
-
-CXXFILES = \
- object.cxx \
- collelem.cxx
-
-EXCEPTIONSFILES= \
- $(OBJ)$/object.obj \
- $(OBJ)$/collelem.obj
-
-OBJFILES = \
- $(OBJ)$/object.obj \
- $(OBJ)$/collelem.obj
-
+$(eval $(call gb_AllLangResTarget_AllLangResTarget,stt))
-LIBTARGET = NO
+$(eval $(call gb_AllLangResTarget_add_srs,stt,\
+ stt/res \
+))
-LIB1TARGET=$(LB)$/sample.lib
-LIB1ARCHIV=$(LB)$/libsample.a
+$(eval $(call gb_SrsTarget_SrsTarget,stt/res))
-LIB1OBJFILES = $(OBJFILES)
+$(eval $(call gb_SrsTarget_set_include,stt/res,\
+ $$(INCLUDE) \
+))
-# --- Targets ------------------------------------------------------------
+$(eval $(call gb_SrsTarget_add_files,stt/res,\
+ basic/source/app/basic.src \
+ basic/source/app/basmsg.src \
+ basic/source/app/svtmsg.src \
+ basic/source/app/testtool.src \
+ basic/source/app/ttmsg.src \
+))
-.INCLUDE : target.mk
+# vim: set noet sw=4:
diff --git a/basic/Library_sb.mk b/basic/Library_sb.mk
new file mode 100644
index 000000000000..0502a2de8860
--- /dev/null
+++ b/basic/Library_sb.mk
@@ -0,0 +1,180 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+$(eval $(call gb_Library_Library,sb))
+
+$(eval $(call gb_Library_add_package_headers,sb,basic_inc))
+
+$(eval $(call gb_Library_add_precompiled_header,sb,$(SRCDIR)/basic/inc/pch/precompiled_basic))
+
+$(eval $(call gb_Library_set_componentfile,sb,basic/util/sb))
+
+$(eval $(call gb_Library_set_include,sb,\
+ $$(INCLUDE) \
+ -I$(realpath $(SRCDIR)/basic/inc) \
+ -I$(realpath $(SRCDIR)/basic/inc/pch) \
+ -I$(realpath $(SRCDIR)/basic/source/inc) \
+))
+
+$(eval $(call gb_Library_add_api,sb,\
+ udkapi \
+ offapi \
+ oovbaapi \
+))
+
+$(eval $(call gb_Library_add_defs,sb,\
+ -DBASIC_DLLIMPLEMENTATION \
+))
+
+$(eval $(call gb_Library_add_linked_libs,sb,\
+ comphelper \
+ cppu \
+ cppuhelper \
+ sal \
+ salhelper \
+ sot \
+ svl \
+ svt \
+ tl \
+ utl \
+ vcl \
+ xcr \
+ $(gb_STDLIBS) \
+))
+
+$(eval $(call gb_Library_add_exception_objects,sb,\
+ basic/source/basmgr/basicmanagerrepository \
+ basic/source/basmgr/basmgr \
+ basic/source/basmgr/vbahelper \
+ basic/source/classes/disas \
+ basic/source/classes/errobject \
+ basic/source/classes/eventatt \
+ basic/source/classes/image \
+ basic/source/classes/propacc \
+ basic/source/classes/sb \
+ basic/source/classes/sbintern \
+ basic/source/classes/sbunoobj \
+ basic/source/classes/sbxmod \
+ basic/source/comp/buffer \
+ basic/source/comp/codegen \
+ basic/source/comp/dim \
+ basic/source/comp/exprtree \
+ basic/source/comp/exprgen \
+ basic/source/comp/exprnode \
+ basic/source/comp/io \
+ basic/source/comp/loops \
+ basic/source/comp/parser \
+ basic/source/comp/sbcomp \
+ basic/source/comp/scanner \
+ basic/source/comp/symtbl \
+ basic/source/comp/token \
+ basic/source/uno/dlgcont \
+ basic/source/uno/modsizeexceeded \
+ basic/source/uno/namecont \
+ basic/source/uno/sbmodule \
+ basic/source/uno/sbservices \
+ basic/source/uno/scriptcont \
+ basic/source/runtime/basrdll \
+ basic/source/runtime/comenumwrapper \
+ basic/source/runtime/ddectrl \
+ basic/source/runtime/inputbox \
+ basic/source/runtime/iosys \
+ basic/source/runtime/methods \
+ basic/source/runtime/methods1 \
+ basic/source/runtime/props \
+ basic/source/runtime/runtime \
+ basic/source/runtime/sbdiagnose \
+ basic/source/runtime/stdobj \
+ basic/source/runtime/stdobj1 \
+ basic/source/runtime/step0 \
+ basic/source/runtime/step1 \
+ basic/source/runtime/step2 \
+ basic/source/sbx/sbxarray \
+ basic/source/sbx/sbxbase \
+ basic/source/sbx/sbxbool \
+ basic/source/sbx/sbxbyte \
+ basic/source/sbx/sbxchar \
+ basic/source/sbx/sbxcoll \
+ basic/source/sbx/sbxcurr \
+ basic/source/sbx/sbxdate \
+ basic/source/sbx/sbxdbl \
+ basic/source/sbx/sbxdec \
+ basic/source/sbx/sbxexec \
+ basic/source/sbx/sbxform \
+ basic/source/sbx/sbxint \
+ basic/source/sbx/sbxlng \
+ basic/source/sbx/sbxmstrm \
+ basic/source/sbx/sbxobj \
+ basic/source/sbx/sbxres \
+ basic/source/sbx/sbxscan \
+ basic/source/sbx/sbxsng \
+ basic/source/sbx/sbxstr \
+ basic/source/sbx/sbxuint \
+ basic/source/sbx/sbxulng \
+ basic/source/sbx/sbxvalue \
+ basic/source/sbx/sbxvar \
+))
+
+# Uncomment the following line if DBG_TRACE_PROFILING is active in source/inc/sbtrace.hxx
+# $(eval $(call gb_Library_add_linked_libs,sb,\
+ canvastools \
+))
+
+ifeq ($(GUI),WNT)
+$(eval $(call gb_Library_add_linked_libs,sb,\
+ uwinapi \
+ oleaut32 \
+))
+endif
+
+ifeq ($(GUI)$(CPU),WNTI)
+$(eval $(call gb_Library_add_exception_objects,sb,\
+ basic/source/runtime/dllmgr-x86 \
+))
+else
+ifeq ($(GUI)$(CPU),WNTX)
+$(eval $(call gb_Library_add_exception_objects,sb,\
+ basic/source/runtime/dllmgr-x64 \
+))
+else
+$(eval $(call gb_Library_add_exception_objects,sb,\
+ basic/source/runtime/dllmgr-none \
+))
+endif
+endif
+ifeq ($(GUI)$(COM)$(CPU),WNTMSCI)
+$(eval $(call gb_Library_add_exception_objects,sb,\
+ basic/source/runtime/wnt-x86 \
+))
+endif
+ifeq ($(GUI)$(COM)$(CPU),WNTGCCI)
+$(eval $(call gb_Library_add_exception_objects,sb,\
+ basic/source/runtime/wnt-mingw \
+))
+endif
+
+# vim: set noet sw=4:
diff --git a/basic/source/basmgr/makefile.mk b/basic/Makefile
index 615a8e8465ef..5bedaf0b9dcf 100755..100644
--- a/basic/source/basmgr/makefile.mk
+++ b/basic/Makefile
@@ -1,8 +1,8 @@
#*************************************************************************
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# Copyright 2000, 2011 Oracle and/or its affiliates.
#
# OpenOffice.org - a multi-platform office productivity suite
#
@@ -24,24 +24,15 @@
# for a copy of the LGPLv3 License.
#
#*************************************************************************
-PRJ=..$/..
-
-PRJNAME=basic
-TARGET=basicmgr
-ENABLE_EXCEPTIONS=TRUE
-
-# --- Settings -----------------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Allgemein -----------------------------------------------------------
+ifeq ($(strip $(SOLARENV)),)
+$(error No environment set!)
+endif
-SLOFILES= \
- $(SLO)$/basmgr.obj \
- $(SLO)$/basicmanagerrepository.obj\
- $(SLO)$/vbahelper.obj
+gb_PARTIALBUILD := T
+GBUILDDIR := $(SOLARENV)/gbuild
+include $(GBUILDDIR)/gbuild.mk
-# --- Targets -------------------------------------------------------------
+$(eval $(call gb_Module_make_global_targets,$(shell ls $(dir $(realpath $(firstword $(MAKEFILE_LIST))))/Module*.mk)))
-.INCLUDE : target.mk
+# vim: set noet sw=4 ts=4:
diff --git a/basic/Module_basic.mk b/basic/Module_basic.mk
new file mode 100644
index 000000000000..af830da9936a
--- /dev/null
+++ b/basic/Module_basic.mk
@@ -0,0 +1,39 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+$(eval $(call gb_Module_Module,basic))
+
+$(eval $(call gb_Module_add_targets,basic,\
+ AllLangResTarget_sb \
+ AllLangResTarget_stt \
+ Library_sb \
+ Package_inc \
+ StaticLibrary_app \
+ StaticLibrary_sample \
+))
+
+# vim: set noet sw=4:
diff --git a/basic/Package_inc.mk b/basic/Package_inc.mk
new file mode 100644
index 000000000000..bb6a885b0d69
--- /dev/null
+++ b/basic/Package_inc.mk
@@ -0,0 +1,67 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,basic_inc,$(SRCDIR)/basic/inc))
+
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/basicdllapi.h,basic/basicdllapi.h))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/basicmanagerrepository.hxx,basic/basicmanagerrepository.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/basicrt.hxx,basic/basicrt.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/basmgr.hxx,basic/basmgr.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/basrdll.hxx,basic/basrdll.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/dispdefs.hxx,basic/dispdefs.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/modsizeexceeded.hxx,basic/modsizeexceeded.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/mybasic.hxx,basic/mybasic.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/process.hxx,basic/process.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbdef.hxx,basic/sbdef.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sberrors.hxx,basic/sberrors.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbmeth.hxx,basic/sbmeth.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbmod.hxx,basic/sbmod.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbobjmod.hxx,basic/sbobjmod.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbprop.hxx,basic/sbprop.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbstar.hxx,basic/sbstar.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbstdobj.hxx,basic/sbstdobj.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbuno.hxx,basic/sbuno.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbxbase.hxx,basic/sbxbase.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbxcore.hxx,basic/sbxcore.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbxdef.hxx,basic/sbxdef.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbxfac.hxx,basic/sbxfac.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbxform.hxx,basic/sbxform.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbx.hxx,basic/sbx.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbxmeth.hxx,basic/sbxmeth.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbxmstrm.hxx,basic/sbxmstrm.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbxobj.hxx,basic/sbxobj.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbxprop.hxx,basic/sbxprop.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/sbxvar.hxx,basic/sbxvar.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/svtmsg.hrc,basic/svtmsg.hrc))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/testtool.hrc,basic/testtool.hrc))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/testtool.hxx,basic/testtool.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/ttglobal.hrc,basic/ttglobal.hrc))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/ttmsg.hrc,basic/ttmsg.hrc))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/ttstrhlp.hxx,basic/ttstrhlp.hxx))
+$(eval $(call gb_Package_add_file,basic_inc,inc/basic/vbahelper.hxx,basic/vbahelper.hxx))
+
+# vim: set noet sw=4:
diff --git a/basic/StaticLibrary_app.mk b/basic/StaticLibrary_app.mk
new file mode 100644
index 000000000000..5cce0b52da24
--- /dev/null
+++ b/basic/StaticLibrary_app.mk
@@ -0,0 +1,64 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,app))
+
+$(eval $(call gb_StaticLibrary_add_package_headers,app,basic_inc))
+
+$(eval $(call gb_StaticLibrary_add_precompiled_header,app,$(SRCDIR)/basic/inc/pch/precompiled_basic))
+
+$(eval $(call gb_StaticLibrary_set_include,app,\
+ $$(INCLUDE) \
+ -I$(realpath $(SRCDIR)/basic/inc) \
+ -I$(realpath $(SRCDIR)/basic/inc/pch) \
+ -I$(realpath $(SRCDIR)/basic/source/inc) \
+))
+
+$(eval $(call gb_StaticLibrary_add_api,app,\
+ udkapi \
+ offapi \
+))
+
+$(eval $(call gb_StaticLibrary_add_exception_objects,app,\
+ basic/source/app/appbased \
+ basic/source/app/app \
+ basic/source/app/appedit \
+ basic/source/app/apperror \
+ basic/source/app/appwin \
+ basic/source/app/basicrt \
+ basic/source/app/brkpnts \
+ basic/source/app/dialogs \
+ basic/source/app/msgedit \
+ basic/source/app/mybasic \
+ basic/source/app/printer \
+ basic/source/app/process \
+ basic/source/app/processw \
+ basic/source/app/status \
+ basic/source/app/textedit \
+))
+
+# vim: set noet sw=4:
diff --git a/basic/StaticLibrary_sample.mk b/basic/StaticLibrary_sample.mk
new file mode 100644
index 000000000000..e824be94e5fc
--- /dev/null
+++ b/basic/StaticLibrary_sample.mk
@@ -0,0 +1,50 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2011 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,sample))
+
+$(eval $(call gb_StaticLibrary_add_package_headers,sample,basic_inc))
+
+$(eval $(call gb_StaticLibrary_add_precompiled_header,sample,$(SRCDIR)/basic/inc/pch/precompiled_basic))
+
+$(eval $(call gb_StaticLibrary_set_include,sample,\
+ $$(INCLUDE) \
+ -I$(realpath $(SRCDIR)/basic/inc/pch) \
+ -I$(realpath $(SRCDIR)/basic/source/inc) \
+))
+
+$(eval $(call gb_StaticLibrary_add_api,sample,\
+ udkapi \
+ offapi \
+))
+
+$(eval $(call gb_StaticLibrary_add_exception_objects,sample,\
+ basic/source/sample/collelem \
+ basic/source/sample/object \
+))
+
+# vim: set noet sw=4:
diff --git a/basic/inc/basic/basicdllapi.h b/basic/inc/basic/basicdllapi.h
new file mode 100644
index 000000000000..922a4d7a5aac
--- /dev/null
+++ b/basic/inc/basic/basicdllapi.h
@@ -0,0 +1,16 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+#ifndef INCLUDED_BASICDLLAPI_H
+#define INCLUDED_BASICDLLAPI_H
+
+#include "sal/types.h"
+
+#if defined(BASIC_DLLIMPLEMENTATION)
+#define BASIC_DLLPUBLIC SAL_DLLPUBLIC_EXPORT
+#else
+#define BASIC_DLLPUBLIC SAL_DLLPUBLIC_IMPORT
+#endif
+#define BASIC_DLLPRIVATE SAL_DLLPRIVATE
+
+#endif /* INCLUDED_BASICDLLAPI_H */
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basic/inc/basic/basicmanagerrepository.hxx b/basic/inc/basic/basicmanagerrepository.hxx
index e486c3880f41..0b25412e702b 100644
--- a/basic/inc/basic/basicmanagerrepository.hxx
+++ b/basic/inc/basic/basicmanagerrepository.hxx
@@ -33,6 +33,7 @@
#include <com/sun/star/frame/XModel.hpp>
#include <com/sun/star/embed/XStorage.hpp>
/** === end UNO includes === **/
+#include "basicdllapi.h"
class BasicManager;
@@ -47,7 +48,7 @@ namespace basic
/** specifies a callback for instances which are interested in BasicManagers
created by the BasicManagerRepository.
*/
- class SAL_NO_VTABLE BasicManagerCreationListener
+ class BASIC_DLLPUBLIC SAL_NO_VTABLE BasicManagerCreationListener
{
public:
/** is called when a BasicManager has been created
@@ -69,7 +70,7 @@ namespace basic
//====================================================================
//= BasicManagerRepository
//====================================================================
- class BasicManagerRepository
+ class BASIC_DLLPUBLIC BasicManagerRepository
{
public:
/** returns the BasicManager belonging to the given document
diff --git a/basic/inc/basic/basicrt.hxx b/basic/inc/basic/basicrt.hxx
index 2d39eb79ca02..143a781c822d 100644
--- a/basic/inc/basic/basicrt.hxx
+++ b/basic/inc/basic/basicrt.hxx
@@ -30,11 +30,12 @@
#include <tools/string.hxx>
#include <basic/sbxdef.hxx>
+#include "basicdllapi.h"
class SbiRuntime;
class SbErrorStackEntry;
-class BasicRuntime
+class BASIC_DLLPUBLIC BasicRuntime
{
SbiRuntime* pRun;
public:
@@ -50,7 +51,7 @@ public:
BasicRuntime GetNextRuntime();
};
-class BasicErrorStackEntry
+class BASIC_DLLPUBLIC BasicErrorStackEntry
{
SbErrorStackEntry *pEntry;
public:
@@ -63,7 +64,7 @@ public:
xub_StrLen GetCol2();
};
-class BasicRuntimeAccess
+class BASIC_DLLPUBLIC BasicRuntimeAccess
{
public:
static BasicRuntime GetRuntime();
diff --git a/basic/inc/basic/basmgr.hxx b/basic/inc/basic/basmgr.hxx
index fec6bb89f201..287a0b3bbda0 100644
--- a/basic/inc/basic/basmgr.hxx
+++ b/basic/inc/basic/basmgr.hxx
@@ -33,10 +33,11 @@
#include <basic/sbstar.hxx>
#include <com/sun/star/script/XStorageBasedLibraryContainer.hpp>
#include <com/sun/star/script/XStarBasicAccess.hpp>
+#include "basicdllapi.h"
// Basic XML Import/Export
-com::sun::star::uno::Reference< com::sun::star::script::XStarBasicAccess >
+BASIC_DLLPUBLIC com::sun::star::uno::Reference< com::sun::star::script::XStarBasicAccess >
getStarBasicAccess( BasicManager* pMgr );
@@ -65,7 +66,7 @@ class SotStorage;
#define BASERR_REASON_STDLIB 0x0100
-class BasicError
+class BASIC_DLLPUBLIC BasicError
{
private:
sal_uIntPtr nErrorId;
@@ -95,7 +96,7 @@ class BasicErrorManager;
namespace basic { class BasicManagerCleaner; }
// Library password handling for 5.0 documents
-class OldBasicPassword
+class BASIC_DLLPUBLIC OldBasicPassword
{
public:
virtual void setLibraryPassword( const String& rLibraryName, const String& rPassword ) = 0;
@@ -132,7 +133,7 @@ struct BasicManagerImpl;
#define LIB_NOTFOUND 0xFFFF
-class BasicManager : public SfxBroadcaster
+class BASIC_DLLPUBLIC BasicManager : public SfxBroadcaster
{
friend class LibraryContainer_Impl;
friend class StarBasicAccess_Impl;
@@ -150,7 +151,7 @@ private:
BasicManagerImpl* mpImpl;
- void Init();
+ BASIC_DLLPRIVATE void Init();
protected:
sal_Bool ImpLoadLibary( BasicLibInfo* pLibInfo ) const;
@@ -243,25 +244,25 @@ public:
ErrCode ExecuteMacro( String const& i_fullyQualifiedName, String const& i_commaSeparatedArgs, SbxValue* i_retValue );
private:
- sal_Bool IsReference( sal_uInt16 nLib );
+ BASIC_DLLPRIVATE sal_Bool IsReference( sal_uInt16 nLib );
- sal_Bool SetLibName( sal_uInt16 nLib, const String& rName );
+ BASIC_DLLPRIVATE sal_Bool SetLibName( sal_uInt16 nLib, const String& rName );
- StarBASIC* GetStdLib() const;
- StarBASIC* AddLib( SotStorage& rStorage, const String& rLibName, sal_Bool bReference );
- sal_Bool RemoveLib( sal_uInt16 nLib );
- sal_Bool HasLib( const String& rName ) const;
+ BASIC_DLLPRIVATE StarBASIC* GetStdLib() const;
+ BASIC_DLLPRIVATE StarBASIC* AddLib( SotStorage& rStorage, const String& rLibName, sal_Bool bReference );
+ BASIC_DLLPRIVATE sal_Bool RemoveLib( sal_uInt16 nLib );
+ BASIC_DLLPRIVATE sal_Bool HasLib( const String& rName ) const;
- StarBASIC* CreateLibForLibContainer( const String& rLibName,
+ BASIC_DLLPRIVATE StarBASIC* CreateLibForLibContainer( const String& rLibName,
const com::sun::star::uno::Reference< com::sun::star::script::XLibraryContainer >&
xScriptCont );
// For XML import/export:
- StarBASIC* CreateLib( const String& rLibName );
- StarBASIC* CreateLib( const String& rLibName, const String& Password,
+ BASIC_DLLPRIVATE StarBASIC* CreateLib( const String& rLibName );
+ BASIC_DLLPRIVATE StarBASIC* CreateLib( const String& rLibName, const String& Password,
const String& LinkTargetURL );
};
-void SetAppBasicManager( BasicManager* pBasMgr );
+BASIC_DLLPUBLIC void SetAppBasicManager( BasicManager* pBasMgr );
#endif //_BASMGR_HXX
diff --git a/basic/inc/basic/basrdll.hxx b/basic/inc/basic/basrdll.hxx
index b11607201bb5..72e32d743d9d 100644
--- a/basic/inc/basic/basrdll.hxx
+++ b/basic/inc/basic/basrdll.hxx
@@ -32,8 +32,9 @@
class ResMgr;
#include <vcl/accel.hxx>
+#include "basicdllapi.h"
-class BasicDLL
+class BASIC_DLLPUBLIC BasicDLL
{
private:
ResMgr* pSttResMgr;
diff --git a/basic/inc/basic/modsizeexceeded.hxx b/basic/inc/basic/modsizeexceeded.hxx
index 414b7aff72e0..664920129162 100644
--- a/basic/inc/basic/modsizeexceeded.hxx
+++ b/basic/inc/basic/modsizeexceeded.hxx
@@ -31,8 +31,9 @@
#include <com/sun/star/task/XInteractionHandler.hpp>
#include <cppuhelper/implbase1.hxx>
+#include "basicdllapi.h"
-class ModuleSizeExceeded : public ::cppu::WeakImplHelper1< ::com::sun::star::task::XInteractionRequest >
+class BASIC_DLLPUBLIC ModuleSizeExceeded : public ::cppu::WeakImplHelper1< ::com::sun::star::task::XInteractionRequest >
{
// C++ interface
public:
diff --git a/basic/inc/basic/mybasic.hxx b/basic/inc/basic/mybasic.hxx
index 3a2ab068d4c4..ffc35b6dacfa 100644
--- a/basic/inc/basic/mybasic.hxx
+++ b/basic/inc/basic/mybasic.hxx
@@ -31,6 +31,7 @@
#include <basic/sbstar.hxx>
#include <vector>
+#include "basicdllapi.h"
class BasicApp;
class AppBasEd;
@@ -40,7 +41,7 @@ class ErrorEntry;
#define SBXCR_TEST 0x54534554 // TEST
//-----------------------------------------------------------------------------
-class BasicError {
+class BASIC_DLLPUBLIC BasicError {
AppBasEd* pWin;
sal_uInt16 nLine, nCol1, nCol2;
String aText;
@@ -50,7 +51,7 @@ public:
};
//-----------------------------------------------------------------------------
-class MyBasic : public StarBASIC
+class BASIC_DLLPUBLIC MyBasic : public StarBASIC
{
SbError nError;
virtual sal_Bool ErrorHdl();
diff --git a/basic/inc/basic/process.hxx b/basic/inc/basic/process.hxx
index b88391b412ca..f1f60189f0c4 100644
--- a/basic/inc/basic/process.hxx
+++ b/basic/inc/basic/process.hxx
@@ -31,13 +31,14 @@
#include <tools/string.hxx>
#include <osl/process.h>
+#include "basicdllapi.h"
#include <map>
typedef std::map< String, String > Environment;
typedef Environment::value_type EnvironmentVariable;
-class Process
+class BASIC_DLLPUBLIC Process
{
// Internal members and methods
sal_uInt32 m_nArgumentCount;
@@ -46,8 +47,8 @@ class Process
rtl_uString **m_pEnvList;
rtl::OUString m_aProcessName;
oslProcess m_pProcess;
- sal_Bool ImplIsRunning();
- long ImplGetExitCode();
+ BASIC_DLLPRIVATE sal_Bool ImplIsRunning();
+ BASIC_DLLPRIVATE long ImplGetExitCode();
sal_Bool bWasGPF;
sal_Bool bHasBeenStarted;
diff --git a/basic/inc/basic/sbdef.hxx b/basic/inc/basic/sbdef.hxx
index 7877ea5f9060..90ef1d403fa1 100644
--- a/basic/inc/basic/sbdef.hxx
+++ b/basic/inc/basic/sbdef.hxx
@@ -32,6 +32,7 @@
#include <basic/sbxdef.hxx>
#include <svl/svarray.hxx>
#include <rtl/ustring.hxx>
+#include "basicdllapi.h"
using rtl::OUString;
@@ -66,24 +67,65 @@ struct SbTextPortion
SbTextType eType; // Type of the portion
};
-SV_DECL_VARARR(SbTextPortions, SbTextPortion,16,16)
+typedef sal_Bool (*FnForEach_SbTextPortions)( const SbTextPortion &, void* );
+class BASIC_DLLPUBLIC SbTextPortions
+{
+protected:
+ SbTextPortion *pData;
+ sal_uInt16 nFree;
+ sal_uInt16 nA;
+
+ void _resize(size_t n);
+
+public:
+ SbTextPortions( sal_uInt16= 16, sal_uInt8= 16 );
+ ~SbTextPortions() { rtl_freeMemory( pData ); }
+
+ _SVVARARR_DEF_GET_OP_INLINE(SbTextPortions, SbTextPortion )
+ SbTextPortion & GetObject(sal_uInt16 nP) const { return (*this)[nP]; }
+
+ void Insert( const SbTextPortion & aE, sal_uInt16 nP );
+ void Insert( const SbTextPortion *pE, sal_uInt16 nL, sal_uInt16 nP );
+ void Remove( sal_uInt16 nP, sal_uInt16 nL = 1 );
+ void Replace( const SbTextPortion & aE, sal_uInt16 nP );
+ void Replace( const SbTextPortion *pE, sal_uInt16 nL, sal_uInt16 nP );
+ sal_uInt16 Count() const { return nA; }
+ const SbTextPortion* GetData() const { return (const SbTextPortion*)pData; }
+
+ void ForEach( CONCAT( FnForEach_, SbTextPortions ) fnForEach, void* pArgs = 0 )
+ {
+ _ForEach( 0, nA, fnForEach, pArgs );
+ }
+ void ForEach( sal_uInt16 nS, sal_uInt16 nE,
+ CONCAT( FnForEach_, SbTextPortions ) fnForEach, void* pArgs = 0 )
+ {
+ _ForEach( nS, nE, fnForEach, pArgs );
+ }
+
+ void _ForEach( sal_uInt16 nStt, sal_uInt16 nE,
+ CONCAT( FnForEach_, SbTextPortions ) fnCall, void* pArgs = 0 );
+private:
+ BASIC_DLLPRIVATE SbTextPortions( const SbTextPortions& );
+ BASIC_DLLPRIVATE SbTextPortions& operator=( const SbTextPortions& );
+};
+
#else
class SbTextPortions;
#endif
// Returns type name for Basic type, array flag is ignored
// implementation: basic/source/runtime/methods.cxx
-String getBasicTypeName( SbxDataType eType );
+BASIC_DLLPUBLIC String getBasicTypeName( SbxDataType eType );
// Returns type name for Basic objects, especially
// important for SbUnoObj instances
// implementation: basic/source/classes/sbunoobj.cxx
class SbxObject;
-::rtl::OUString getBasicObjectTypeName( SbxObject* pObj );
+BASIC_DLLPUBLIC ::rtl::OUString getBasicObjectTypeName( SbxObject* pObj );
// Allows Basic IDE to set watch mode to suppress errors
// implementation: basic/source/runtime/runtime.cxx
-void setBasicWatchMode( bool bOn );
+BASIC_DLLPUBLIC void setBasicWatchMode( bool bOn );
// Debug Flags:
#define SbDEBUG_BREAK 0x0001 // Break-Callback
diff --git a/basic/inc/basic/sbmeth.hxx b/basic/inc/basic/sbmeth.hxx
index 4c8deafef29c..03de66f68d46 100644
--- a/basic/inc/basic/sbmeth.hxx
+++ b/basic/inc/basic/sbmeth.hxx
@@ -32,11 +32,12 @@
#include <tools/errcode.hxx>
#include <basic/sbxmeth.hxx>
#include <basic/sbdef.hxx>
+#include "basicdllapi.h"
class SbModule;
class SbMethodImpl;
-class SbMethod : public SbxMethod
+class BASIC_DLLPUBLIC SbMethod : public SbxMethod
{
friend class SbiRuntime;
friend class SbiFactory;
@@ -54,8 +55,8 @@ class SbMethod : public SbxMethod
sal_uInt32 nStart;
sal_Bool bInvalid;
SbxArrayRef refStatics;
- SbMethod( const String&, SbxDataType, SbModule* );
- SbMethod( const SbMethod& );
+ BASIC_DLLPRIVATE SbMethod( const String&, SbxDataType, SbModule* );
+ BASIC_DLLPRIVATE SbMethod( const SbMethod& );
virtual sal_Bool LoadData( SvStream&, sal_uInt16 );
virtual sal_Bool StoreData( SvStream& ) const;
virtual ~SbMethod();
@@ -83,7 +84,7 @@ public:
SV_DECL_IMPL_REF(SbMethod)
#endif
-class SbIfaceMapperMethod : public SbMethod
+class BASIC_DLLPUBLIC SbIfaceMapperMethod : public SbMethod
{
friend class SbiRuntime;
diff --git a/basic/inc/basic/sbmod.hxx b/basic/inc/basic/sbmod.hxx
index cba5714b9c36..d7b3d44f4b00 100644
--- a/basic/inc/basic/sbmod.hxx
+++ b/basic/inc/basic/sbmod.hxx
@@ -37,6 +37,7 @@
#include <vector>
#include <deque>
+#include "basicdllapi.h"
class SbMethod;
class SbProperty;
@@ -52,7 +53,7 @@ struct ClassModuleRunInitItem;
struct SbClassData;
class SbModuleImpl;
-class SbModule : public SbxObject
+class BASIC_DLLPUBLIC SbModule : public SbxObject
{
friend class TestToolObj; // allows module initialisation at runtime
friend class SbiCodeGen;
@@ -63,10 +64,10 @@ class SbModule : public SbxObject
SbModuleImpl* mpSbModuleImpl; // Impl data
std::vector< String > mModuleVariableNames;
- SbModule();
- SbModule(const SbModule&);
+ BASIC_DLLPRIVATE SbModule();
+ BASIC_DLLPRIVATE SbModule(const SbModule&);
- void implClearIfVarDependsOnDeletedBasic( SbxVariable* pVar, StarBASIC* pDeletedBasic );
+ BASIC_DLLPRIVATE void implClearIfVarDependsOnDeletedBasic( SbxVariable* pVar, StarBASIC* pDeletedBasic );
protected:
com::sun::star::uno::Reference< com::sun::star::script::XInvocation > mxWrapper;
@@ -164,7 +165,7 @@ SV_DECL_IMPL_REF(SbModule)
class SbClassModuleImpl;
// Object class for instances of class modules
-class SbClassModuleObject : public SbModule
+class BASIC_DLLPUBLIC SbClassModuleObject : public SbModule
{
SbClassModuleImpl* mpSbClassModuleImpl;
diff --git a/basic/inc/basic/sbobjmod.hxx b/basic/inc/basic/sbobjmod.hxx
index af602191cdd5..ba4f6237c28e 100644
--- a/basic/inc/basic/sbobjmod.hxx
+++ b/basic/inc/basic/sbobjmod.hxx
@@ -38,15 +38,16 @@
#include <com/sun/star/lang/XEventListener.hpp>
#include <com/sun/star/awt/XDialog.hpp>
#include <com/sun/star/frame/XModel.hpp>
+#include "basicdllapi.h"
namespace css = ::com::sun::star;
// Basic-Module for excel object.
-class SbObjModule : public SbModule
+class BASIC_DLLPUBLIC SbObjModule : public SbModule
{
- SbObjModule( const SbObjModule& );
- SbObjModule();
+ BASIC_DLLPRIVATE SbObjModule( const SbObjModule& );
+ BASIC_DLLPRIVATE SbObjModule();
protected:
virtual ~SbObjModule();
@@ -66,7 +67,7 @@ public:
class FormObjEventListenerImpl;
-class SbUserFormModule : public SbObjModule
+class BASIC_DLLPUBLIC SbUserFormModule : public SbObjModule
{
com::sun::star::script::ModuleInfo m_mInfo;
::rtl::Reference< FormObjEventListenerImpl > m_DialogListener;
@@ -74,8 +75,8 @@ class SbUserFormModule : public SbObjModule
css::uno::Reference<css::frame::XModel> m_xModel;
String sFormName;
bool mbInit;
- SbUserFormModule( const SbUserFormModule& );
- SbUserFormModule();
+ BASIC_DLLPRIVATE SbUserFormModule( const SbUserFormModule& );
+ BASIC_DLLPRIVATE SbUserFormModule();
//protected:
virtual void InitObject();
@@ -104,7 +105,7 @@ public:
class SbUserFormModuleInstance* CreateInstance();
};
-class SbUserFormModuleInstance : public SbUserFormModule
+class BASIC_DLLPUBLIC SbUserFormModuleInstance : public SbUserFormModule
{
SbUserFormModule* m_pParentModule;
diff --git a/basic/inc/basic/sbprop.hxx b/basic/inc/basic/sbprop.hxx
index 730ee6fa0aa7..7b1fcd6979e3 100644
--- a/basic/inc/basic/sbprop.hxx
+++ b/basic/inc/basic/sbprop.hxx
@@ -31,17 +31,18 @@
#include <basic/sbxprop.hxx>
#include <basic/sbdef.hxx>
+#include "basicdllapi.h"
class SbModule;
-class SbProperty : public SbxProperty
+class BASIC_DLLPUBLIC SbProperty : public SbxProperty
{
friend class SbiFactory;
friend class SbModule;
friend class SbProcedureProperty;
SbModule* pMod;
sal_Bool bInvalid;
- SbProperty( const String&, SbxDataType, SbModule* );
+ BASIC_DLLPRIVATE SbProperty( const String&, SbxDataType, SbModule* );
virtual ~SbProperty();
public:
SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_BASICPROP,1);
@@ -54,7 +55,7 @@ public:
SV_DECL_IMPL_REF(SbProperty)
#endif
-class SbProcedureProperty : public SbxProperty
+class BASIC_DLLPUBLIC SbProcedureProperty : public SbxProperty
{
bool mbSet; // Flag for set command
diff --git a/basic/inc/basic/sbstar.hxx b/basic/inc/basic/sbstar.hxx
index 5ac9aee34742..1b3ee5e82843 100644
--- a/basic/inc/basic/sbstar.hxx
+++ b/basic/inc/basic/sbstar.hxx
@@ -38,6 +38,7 @@
#include <basic/sberrors.hxx>
#include <com/sun/star/script/ModuleInfo.hpp>
#include <com/sun/star/frame/XModel.hpp>
+#include "basicdllapi.h"
class SbModule; // completed module
class SbiInstance; // runtime instance
@@ -51,7 +52,7 @@ class DocBasicItem;
class StarBASICImpl;
-class StarBASIC : public SbxObject
+class BASIC_DLLPUBLIC StarBASIC : public SbxObject
{
friend class SbiScanner;
friend class SbiExpression; // Access to RTL
@@ -77,17 +78,17 @@ class StarBASIC : public SbxObject
sal_Bool bQuit;
SbxObjectRef pVBAGlobals;
- SbxObject* getVBAGlobals( );
+ BASIC_DLLPRIVATE SbxObject* getVBAGlobals( );
- void implClearDependingVarsOnDelete( StarBASIC* pDeletedBasic );
+ BASIC_DLLPRIVATE void implClearDependingVarsOnDelete( StarBASIC* pDeletedBasic );
protected:
sal_Bool CError( SbError, const String&, xub_StrLen, xub_StrLen, xub_StrLen );
private:
- sal_Bool RTError( SbError, xub_StrLen, xub_StrLen, xub_StrLen );
- sal_Bool RTError( SbError, const String& rMsg, xub_StrLen, xub_StrLen, xub_StrLen );
- sal_uInt16 BreakPoint( xub_StrLen nLine, xub_StrLen nCol1, xub_StrLen nCol2 );
- sal_uInt16 StepPoint( xub_StrLen nLine, xub_StrLen nCol1, xub_StrLen nCol2 );
+ BASIC_DLLPRIVATE sal_Bool RTError( SbError, xub_StrLen, xub_StrLen, xub_StrLen );
+ BASIC_DLLPRIVATE sal_Bool RTError( SbError, const String& rMsg, xub_StrLen, xub_StrLen, xub_StrLen );
+ BASIC_DLLPRIVATE sal_uInt16 BreakPoint( xub_StrLen nLine, xub_StrLen nCol1, xub_StrLen nCol2 );
+ BASIC_DLLPRIVATE sal_uInt16 StepPoint( xub_StrLen nLine, xub_StrLen nCol1, xub_StrLen nCol2 );
virtual sal_Bool LoadData( SvStream&, sal_uInt16 );
virtual sal_Bool StoreData( SvStream& ) const;
diff --git a/basic/inc/basic/sbstdobj.hxx b/basic/inc/basic/sbstdobj.hxx
index 8120e6d25631..7e8ebb43c35a 100644
--- a/basic/inc/basic/sbstdobj.hxx
+++ b/basic/inc/basic/sbstdobj.hxx
@@ -32,13 +32,15 @@
#include <basic/sbxobj.hxx>
#include <vcl/graph.hxx>
#include <basic/sbxfac.hxx>
+#include "basicdllapi.h"
+
class StarBASIC;
class SbStdFactory;
//--------------------
// class SbStdFactory
//--------------------
-class SbStdFactory : public SbxFactory
+class BASIC_DLLPUBLIC SbStdFactory : public SbxFactory
{
public:
SbStdFactory();
@@ -49,7 +51,7 @@ public:
//--------------------
// class SbStdPicture
//--------------------
-class SbStdPicture : public SbxObject
+class BASIC_DLLPUBLIC SbStdPicture : public SbxObject
{
protected:
Graphic aGraphic;
@@ -75,7 +77,7 @@ public:
//-----------------
// class SbStdFont
//-----------------
-class SbStdFont : public SbxObject
+class BASIC_DLLPUBLIC SbStdFont : public SbxObject
{
protected:
sal_Bool bBold;
@@ -119,7 +121,7 @@ public:
//----------------------
// class SbStdClipboard
//----------------------
-class SbStdClipboard : public SbxObject
+class BASIC_DLLPUBLIC SbStdClipboard : public SbxObject
{
protected:
diff --git a/basic/inc/basic/sbuno.hxx b/basic/inc/basic/sbuno.hxx
index faeb99ef2160..8e2c15b9650b 100644
--- a/basic/inc/basic/sbuno.hxx
+++ b/basic/inc/basic/sbuno.hxx
@@ -30,20 +30,21 @@
#define _SB_SBUNO_HXX
#include <basic/sbxobj.hxx>
+#include "basicdllapi.h"
namespace com { namespace sun { namespace star { namespace uno { class Any; }}}}
// Returns a SbxObject that wrapps an Uno Interface
// Implementation in basic/source/classes/sbunoobj.cxx
-SbxObjectRef GetSbUnoObject( const ::rtl::OUString& aName, const com::sun::star::uno::Any& aUnoObj_ );
+BASIC_DLLPUBLIC SbxObjectRef GetSbUnoObject( const ::rtl::OUString& aName, const com::sun::star::uno::Any& aUnoObj_ );
// Force creation of all properties for debugging
-void createAllObjectProperties( SbxObject* pObj );
-void SetSbUnoObjectDfltPropName( SbxObject* pObj );
+BASIC_DLLPUBLIC void createAllObjectProperties( SbxObject* pObj );
+BASIC_DLLPUBLIC void SetSbUnoObjectDfltPropName( SbxObject* pObj );
-::com::sun::star::uno::Any sbxToUnoValue( SbxVariable* pVar );
+BASIC_DLLPUBLIC ::com::sun::star::uno::Any sbxToUnoValue( SbxVariable* pVar );
-void unoToSbxValue( SbxVariable* pVar, const ::com::sun::star::uno::Any& aValue );
+BASIC_DLLPUBLIC void unoToSbxValue( SbxVariable* pVar, const ::com::sun::star::uno::Any& aValue );
#endif
diff --git a/basic/inc/basic/sbx.hxx b/basic/inc/basic/sbx.hxx
index ea8cc1e4f24e..219c8025d9bb 100644
--- a/basic/inc/basic/sbx.hxx
+++ b/basic/inc/basic/sbx.hxx
@@ -39,6 +39,7 @@
#include <basic/sbxobj.hxx>
#include <basic/sbxprop.hxx>
#include <basic/sbxmeth.hxx>
+#include "basicdllapi.h"
class String;
class UniString;
@@ -80,7 +81,7 @@ SV_DECL_PTRARR_DEL(SbxParams,SbxParamInfo*,4,4)
#ifndef __SBX_SBXINFO
#define __SBX_SBXINFO
-class SbxInfo : public SvRefBase
+class BASIC_DLLPUBLIC SbxInfo : public SvRefBase
{
friend class SbxVariable;
friend class SbMethod;
@@ -115,7 +116,7 @@ public:
#ifndef __SBX_SBXHINT_HXX
#define __SBX_SBXHINT_HXX
-class SbxHint : public SfxSimpleHint
+class BASIC_DLLPUBLIC SbxHint : public SfxSimpleHint
{
SbxVariable* pVar;
public:
@@ -130,7 +131,7 @@ public:
#define __SBX_SBXALIAS_HXX
// SbxAlias is an alias for a var or object
-class SbxAlias : public SbxVariable, public SfxListener
+class BASIC_DLLPUBLIC SbxAlias : public SbxVariable, public SfxListener
{
SbxVariableRef xAlias;
virtual ~SbxAlias();
@@ -157,13 +158,13 @@ class SbxVariableRef;
class SbxArrayImpl;
-class SbxArray : public SbxBase
+class BASIC_DLLPUBLIC SbxArray : public SbxBase
{
// #100883 Method to set method directly to parameter array
friend class SbMethod;
friend class SbClassModuleObject;
friend SbxObject* cloneTypeObjectImpl( const SbxObject& rTypeObj );
- void PutDirect( SbxVariable* pVar, sal_uInt32 nIdx );
+ BASIC_DLLPRIVATE void PutDirect( SbxVariable* pVar, sal_uInt32 nIdx );
SbxArrayImpl* mpSbxArrayImpl; // Impl data
SbxVarRefs* pData; // The variables
@@ -215,13 +216,13 @@ struct SbxDim;
class SbxDimArrayImpl;
-class SbxDimArray : public SbxArray
+class BASIC_DLLPUBLIC SbxDimArray : public SbxArray
{
SbxDimArrayImpl* mpSbxDimArrayImpl; // Impl data
SbxDim* pFirst, *pLast; // Links to Dimension table
short nDim; // Number of dimensions
- void AddDimImpl32( sal_Int32, sal_Int32, sal_Bool bAllowSize0 );
+ BASIC_DLLPRIVATE void AddDimImpl32( sal_Int32, sal_Int32, sal_Bool bAllowSize0 );
bool mbHasFixedSize;
protected:
sal_uInt16 Offset( const short* );
@@ -271,9 +272,9 @@ public:
#ifndef __SBX_SBXCOLLECTION_HXX
#define __SBX_SBXCOLLECTION_HXX
-class SbxCollection : public SbxObject
+class BASIC_DLLPUBLIC SbxCollection : public SbxObject
{
- void Initialize();
+ BASIC_DLLPRIVATE void Initialize();
protected:
virtual ~SbxCollection();
virtual sal_Bool LoadData( SvStream&, sal_uInt16 );
@@ -300,7 +301,7 @@ public:
#ifndef __SBX_SBXSTDCOLLECTION_HXX
#define __SBX_SBXSTDCOLLECTION_HXX
-class SbxStdCollection : public SbxCollection
+class BASIC_DLLPUBLIC SbxStdCollection : public SbxCollection
{
protected:
String aElemClass;
diff --git a/basic/inc/basic/sbxbase.hxx b/basic/inc/basic/sbxbase.hxx
index 057b4e0a261b..e38c2ec5d5fc 100644
--- a/basic/inc/basic/sbxbase.hxx
+++ b/basic/inc/basic/sbxbase.hxx
@@ -32,6 +32,7 @@
#include <i18npool/lang.h>
#include "svl/svarray.hxx"
#include <basic/sbxdef.hxx>
+#include "basicdllapi.h"
class SbxFactory;
class SbxVariable;
@@ -53,7 +54,7 @@ struct SbxAppData
~SbxAppData();
};
-SbxAppData* GetSbxData_Impl();
+BASIC_DLLPUBLIC SbxAppData* GetSbxData_Impl();
#endif
diff --git a/basic/inc/basic/sbxcore.hxx b/basic/inc/basic/sbxcore.hxx
index f16bcde9449d..085fe10d52bb 100644
--- a/basic/inc/basic/sbxcore.hxx
+++ b/basic/inc/basic/sbxcore.hxx
@@ -34,6 +34,7 @@
#include <tools/debug.hxx>
#include <basic/sbxdef.hxx>
+#include "basicdllapi.h"
class SvStream;
class String;
@@ -79,7 +80,7 @@ DBG_NAMEEX(SbxBase)
class SbxBaseImpl;
-class SbxBase : virtual public SvRefBase
+class BASIC_DLLPUBLIC SbxBase : virtual public SvRefBase
{
SbxBaseImpl* mpSbxBaseImpl; // Impl data
diff --git a/basic/inc/basic/sbxfac.hxx b/basic/inc/basic/sbxfac.hxx
index 8597458c5ec2..494b912911d3 100644
--- a/basic/inc/basic/sbxfac.hxx
+++ b/basic/inc/basic/sbxfac.hxx
@@ -30,13 +30,14 @@
#define __SBX_SBX_FACTORY_HXX
#include <basic/sbxdef.hxx>
+#include "basicdllapi.h"
class SbxBase;
class SbxObject;
class String;
class UniString;
-class SbxFactory
+class BASIC_DLLPUBLIC SbxFactory
{
sal_Bool bHandleLast; // sal_True: Factory is asked at last because of its expensiveness
public:
diff --git a/basic/inc/basic/sbxform.hxx b/basic/inc/basic/sbxform.hxx
index 27d372d8ccf1..7343efc6b555 100644
--- a/basic/inc/basic/sbxform.hxx
+++ b/basic/inc/basic/sbxform.hxx
@@ -85,8 +85,9 @@
#define _with_sprintf // use a)
#include <tools/string.hxx>
+#include "basicdllapi.h"
-class SbxBasicFormater {
+class BASIC_DLLPUBLIC SbxBasicFormater {
public:
// Constructor takes signs for decimal point, thousand separation sign
// and necessary resource strings.
@@ -115,33 +116,33 @@ class SbxBasicFormater {
static sal_Bool isBasicFormat( String sFormatStrg );
private:
- inline void ShiftString( String& sStrg, sal_uInt16 nStartPos );
- inline void StrAppendChar( String& sStrg, sal_Unicode ch );
- void AppendDigit( String& sStrg, short nDigit );
- void LeftShiftDecimalPoint( String& sStrg );
- void StrRoundDigit( String& sStrg, short nPos, sal_Bool& bOverflow );
- void StrRoundDigit( String& sStrg, short nPos );
- void ParseBack( String& sStrg, const String& sFormatStrg,
+ BASIC_DLLPRIVATE inline void ShiftString( String& sStrg, sal_uInt16 nStartPos );
+ BASIC_DLLPRIVATE inline void StrAppendChar( String& sStrg, sal_Unicode ch );
+ BASIC_DLLPRIVATE void AppendDigit( String& sStrg, short nDigit );
+ BASIC_DLLPRIVATE void LeftShiftDecimalPoint( String& sStrg );
+ BASIC_DLLPRIVATE void StrRoundDigit( String& sStrg, short nPos, sal_Bool& bOverflow );
+ BASIC_DLLPRIVATE void StrRoundDigit( String& sStrg, short nPos );
+ BASIC_DLLPRIVATE void ParseBack( String& sStrg, const String& sFormatStrg,
short nFormatPos );
#ifdef _with_sprintf
// Methods for string conversion with sprintf():
- void InitScan( double _dNum );
- void InitExp( double _dNewExp );
- short GetDigitAtPosScan( short nPos, sal_Bool& bFoundFirstDigit );
- short GetDigitAtPosExpScan( double dNewExponent, short nPos,
+ BASIC_DLLPRIVATE void InitScan( double _dNum );
+ BASIC_DLLPRIVATE void InitExp( double _dNewExp );
+ BASIC_DLLPRIVATE short GetDigitAtPosScan( short nPos, sal_Bool& bFoundFirstDigit );
+ BASIC_DLLPRIVATE short GetDigitAtPosExpScan( double dNewExponent, short nPos,
sal_Bool& bFoundFirstDigit );
- short GetDigitAtPosExpScan( short nPos, sal_Bool& bFoundFirstDigit );
+ BASIC_DLLPRIVATE short GetDigitAtPosExpScan( short nPos, sal_Bool& bFoundFirstDigit );
#else
// Methods for direct 'calculation' with log10() and pow():
- short GetDigitAtPos( double dNumber, short nPos, double& dNextNumber,
+ BASIC_DLLPRIVATE short GetDigitAtPos( double dNumber, short nPos, double& dNextNumber,
sal_Bool& bFoundFirstDigit );
- short RoundDigit( double dNumber );
+ BASIC_DLLPRIVATE short RoundDigit( double dNumber );
#endif
- String GetPosFormatString( const String& sFormatStrg, sal_Bool & bFound );
- String GetNegFormatString( const String& sFormatStrg, sal_Bool & bFound );
- String Get0FormatString( const String& sFormatStrg, sal_Bool & bFound );
- String GetNullFormatString( const String& sFormatStrg, sal_Bool & bFound );
- short AnalyseFormatString( const String& sFormatStrg,
+ BASIC_DLLPRIVATE String GetPosFormatString( const String& sFormatStrg, sal_Bool & bFound );
+ BASIC_DLLPRIVATE String GetNegFormatString( const String& sFormatStrg, sal_Bool & bFound );
+ BASIC_DLLPRIVATE String Get0FormatString( const String& sFormatStrg, sal_Bool & bFound );
+ BASIC_DLLPRIVATE String GetNullFormatString( const String& sFormatStrg, sal_Bool & bFound );
+ BASIC_DLLPRIVATE short AnalyseFormatString( const String& sFormatStrg,
short& nNoOfDigitsLeft, short& nNoOfDigitsRight,
short& nNoOfOptionalDigitsLeft,
short& nNoOfExponentDigits,
@@ -149,7 +150,7 @@ class SbxBasicFormater {
sal_Bool& bPercent, sal_Bool& bCurrency, sal_Bool& bScientific,
sal_Bool& bGenerateThousandSeparator,
short& nMultipleThousandSeparators );
- void ScanFormatString( double dNumber, const String& sFormatStrg,
+ BASIC_DLLPRIVATE void ScanFormatString( double dNumber, const String& sFormatStrg,
String& sReturnStrg, sal_Bool bCreateSign );
//*** Data ***
diff --git a/basic/inc/basic/sbxmeth.hxx b/basic/inc/basic/sbxmeth.hxx
index 31b07fdca18d..4aa13414e531 100644
--- a/basic/inc/basic/sbxmeth.hxx
+++ b/basic/inc/basic/sbxmeth.hxx
@@ -30,10 +30,11 @@
#define __SBX_SBXMETHOD_HXX
#include <basic/sbxvar.hxx>
+#include "basicdllapi.h"
class SbxMethodImpl;
-class SbxMethod : public SbxVariable
+class BASIC_DLLPUBLIC SbxMethod : public SbxVariable
{
SbxMethodImpl* mpSbxMethodImpl; // Impl data
diff --git a/basic/inc/basic/sbxmstrm.hxx b/basic/inc/basic/sbxmstrm.hxx
index d3197bff883d..12e17957a3e3 100644
--- a/basic/inc/basic/sbxmstrm.hxx
+++ b/basic/inc/basic/sbxmstrm.hxx
@@ -32,10 +32,11 @@
#include <tools/stream.hxx>
#include <basic/sbxdef.hxx>
#include <basic/sbxcore.hxx>
+#include "basicdllapi.h"
SV_DECL_REF(SbxMemoryStream)
-class SbxMemoryStream : public SbxBase, public SvMemoryStream
+class BASIC_DLLPUBLIC SbxMemoryStream : public SbxBase, public SvMemoryStream
{
public:
SbxMemoryStream(sal_uIntPtr nInitSize_=512, sal_uIntPtr nResize_=64) :
diff --git a/basic/inc/basic/sbxobj.hxx b/basic/inc/basic/sbxobj.hxx
index ab2b46422209..0a4e8754a1fa 100644
--- a/basic/inc/basic/sbxobj.hxx
+++ b/basic/inc/basic/sbxobj.hxx
@@ -31,6 +31,7 @@
#include <svl/lstner.hxx>
#include <basic/sbxvar.hxx>
+#include "basicdllapi.h"
class SbxProperty;
@@ -38,13 +39,13 @@ class SvDispatch;
class SbxObjectImpl;
-class SbxObject : public SbxVariable, public SfxListener
+class BASIC_DLLPUBLIC SbxObject : public SbxVariable, public SfxListener
{
SbxObjectImpl* mpSbxObjectImpl; // Impl data
- SbxArray* FindVar( SbxVariable*, sal_uInt16& );
+ BASIC_DLLPRIVATE SbxArray* FindVar( SbxVariable*, sal_uInt16& );
// AB 23.3.1997, special method for VCPtrRemove (see below)
- SbxArray* VCPtrFindVar( SbxVariable*, sal_uInt16& );
+ BASIC_DLLPRIVATE SbxArray* VCPtrFindVar( SbxVariable*, sal_uInt16& );
protected:
SbxArrayRef pMethods; // Methods
SbxArrayRef pProps; // Properties
diff --git a/basic/inc/basic/sbxprop.hxx b/basic/inc/basic/sbxprop.hxx
index 25c875df9222..223bb44b126c 100644
--- a/basic/inc/basic/sbxprop.hxx
+++ b/basic/inc/basic/sbxprop.hxx
@@ -30,10 +30,11 @@
#define __SBX_SBXPROPERTY_HXX
#include <basic/sbxvar.hxx>
+#include "basicdllapi.h"
class SbxPropertyImpl;
-class SbxProperty : public SbxVariable
+class BASIC_DLLPUBLIC SbxProperty : public SbxVariable
{
SbxPropertyImpl* mpSbxPropertyImpl; // Impl data
diff --git a/basic/inc/basic/sbxvar.hxx b/basic/inc/basic/sbxvar.hxx
index 7f0e5d878225..4c5949720b89 100644
--- a/basic/inc/basic/sbxvar.hxx
+++ b/basic/inc/basic/sbxvar.hxx
@@ -33,6 +33,7 @@
#include <tools/string.hxx>
#include <com/sun/star/bridge/oleautomation/Decimal.hpp>
#include <basic/sbxcore.hxx>
+#include "basicdllapi.h"
#ifndef __SBX_SBXVALUES_HXX
#define __SBX_SBXVALUES_HXX
@@ -107,13 +108,13 @@ struct SbxValues;
class SbxValueImpl;
-class SbxValue : public SbxBase
+class BASIC_DLLPUBLIC SbxValue : public SbxBase
{
SbxValueImpl* mpSbxValueImplImpl; // Impl data
// #55226 Transport additional infos
- SbxValue* TheRealValue( sal_Bool bObjInObjError ) const;
- SbxValue* TheRealValue() const;
+ BASIC_DLLPRIVATE SbxValue* TheRealValue( sal_Bool bObjInObjError ) const;
+ BASIC_DLLPRIVATE SbxValue* TheRealValue() const;
protected:
SbxValues aData; // Data
::rtl::OUString aPic; // Picture-String
@@ -320,7 +321,7 @@ class SfxBroadcaster;
class SbxVariableImpl;
class StarBASIC;
-class SbxVariable : public SbxValue
+class BASIC_DLLPUBLIC SbxVariable : public SbxValue
{
friend class SbMethod;
@@ -330,7 +331,7 @@ class SbxVariable : public SbxValue
SbxArrayRef mpPar; // Parameter-Array, if set
sal_uInt16 nHash; // Hash-ID for search
- SbxVariableImpl* getImpl( void );
+ BASIC_DLLPRIVATE SbxVariableImpl* getImpl( void );
protected:
SbxInfoRef pInfo; // Probably called information
diff --git a/basic/inc/basic/testtool.hxx b/basic/inc/basic/testtool.hxx
index b7de4a88b007..13e8216f4493 100644
--- a/basic/inc/basic/testtool.hxx
+++ b/basic/inc/basic/testtool.hxx
@@ -30,6 +30,7 @@
#include <svl/smplhint.hxx>
#include <tools/string.hxx>
+#include "basicdllapi.h"
#define TESTTOOL_DEFAULT_PORT 12479
#define UNO_DEFAULT_PORT 12480
@@ -41,7 +42,7 @@
// Due to a tab in TT_SIGNATURE_FOR_UNICODE_TEXTFILES which is changed to blanks by some editors
// this routine became necessary
-sal_Bool IsTTSignatureForUnicodeTextfile( String aLine );
+BASIC_DLLPUBLIC sal_Bool IsTTSignatureForUnicodeTextfile( String aLine );
#define ADD_ERROR_QUIET(nNr, aStr) \
{ \
@@ -129,7 +130,7 @@ public:
#define TT_EXECUTION_SHOW_ACTION 0x03
#define TT_EXECUTION_HIDE_ACTION 0x04
-class TTExecutionStatusHint : public SfxSimpleHint
+class BASIC_DLLPUBLIC TTExecutionStatusHint : public SfxSimpleHint
{
private:
sal_uInt16 mnType;
diff --git a/basic/inc/basic/ttstrhlp.hxx b/basic/inc/basic/ttstrhlp.hxx
index adf9068fbdf7..19d6d156d9df 100644
--- a/basic/inc/basic/ttstrhlp.hxx
+++ b/basic/inc/basic/ttstrhlp.hxx
@@ -29,6 +29,7 @@
#define _BASIC_TTSTRHLP_HXX
#include <tools/string.hxx>
+#include "basicdllapi.h"
#define CByteString( constAsciiStr ) ByteString( RTL_CONSTASCII_STRINGPARAM ( constAsciiStr ) )
#define CUniString( constAsciiStr ) UniString( RTL_CONSTASCII_USTRINGPARAM ( constAsciiStr ) )
@@ -58,10 +59,10 @@
#define ResString(nNumber) MakeStringNumber(ResKenn,nNumber)
#define ArgString(nNumber, aText) MakeStringParam(ArgKenn(nNumber),aText)
-UniString GEN_RES_STR0( sal_uIntPtr nResId );
-UniString GEN_RES_STR1( sal_uIntPtr nResId, const String &Text1 );
-UniString GEN_RES_STR2( sal_uIntPtr nResId, const String &Text1, const String &Text2 );
-UniString GEN_RES_STR3( sal_uIntPtr nResId, const String &Text1, const String &Text2, const String &Text3 );
+BASIC_DLLPUBLIC UniString GEN_RES_STR0( sal_uIntPtr nResId );
+BASIC_DLLPUBLIC UniString GEN_RES_STR1( sal_uIntPtr nResId, const String &Text1 );
+BASIC_DLLPUBLIC UniString GEN_RES_STR2( sal_uIntPtr nResId, const String &Text1, const String &Text2 );
+BASIC_DLLPUBLIC UniString GEN_RES_STR3( sal_uIntPtr nResId, const String &Text1, const String &Text2, const String &Text3 );
#define GEN_RES_STR1c( nResId, Text1 ) GEN_RES_STR1( nResId, CUniString(Text1) )
#define GEN_RES_STR2c2( nResId, Text1, Text2 ) GEN_RES_STR2( nResId, Text1, CUniString(Text2) )
diff --git a/basic/inc/basic/vbahelper.hxx b/basic/inc/basic/vbahelper.hxx
index f83548f7e02c..1586c1fe10a6 100644
--- a/basic/inc/basic/vbahelper.hxx
+++ b/basic/inc/basic/vbahelper.hxx
@@ -31,6 +31,7 @@
#include <com/sun/star/container/XEnumeration.hpp>
#include <com/sun/star/frame/XModel.hpp>
#include <rtl/ustring.hxx>
+#include "basicdllapi.h"
namespace basic {
namespace vba {
@@ -51,7 +52,7 @@ namespace vba {
@param rxModel
A document model determining the type of the documents.
*/
-::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > createDocumentsEnumeration(
+BASIC_DLLPUBLIC ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > createDocumentsEnumeration(
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& rxModel );
// ============================================================================
@@ -70,7 +71,7 @@ namespace vba {
@param bLockControllers
Passing true will lock all controllers, passing false will unlock them.
*/
-void lockControllersOfAllDocuments(
+BASIC_DLLPUBLIC void lockControllersOfAllDocuments(
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& rxModel,
sal_Bool bLockControllers );
@@ -91,7 +92,7 @@ void lockControllersOfAllDocuments(
Passing true will enable all container windows of all controllers,
passing false will disable them.
*/
-void enableContainerWindowsOfAllDocuments(
+BASIC_DLLPUBLIC void enableContainerWindowsOfAllDocuments(
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& rxModel,
sal_Bool bEnableWindows );
@@ -107,7 +108,7 @@ void enableContainerWindowsOfAllDocuments(
@param rPath
The new working directory.
*/
-void registerCurrentDirectory(
+BASIC_DLLPUBLIC void registerCurrentDirectory(
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& rxModel,
const ::rtl::OUString& rPath );
@@ -124,7 +125,7 @@ void registerCurrentDirectory(
The working directory of the specified application, or an empty string
on error (e.g. if the passed document reference is empty).
*/
-::rtl::OUString getCurrentDirectory(
+BASIC_DLLPUBLIC ::rtl::OUString getCurrentDirectory(
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& rxModel );
// ============================================================================
diff --git a/basic/prj/build.lst b/basic/prj/build.lst
index d097760283e1..81f7ef51ad5f 100644
--- a/basic/prj/build.lst
+++ b/basic/prj/build.lst
@@ -1,13 +1,3 @@
sb basic : TRANSLATIONS:translations offapi oovbaapi svtools xmlscript framework salhelper LIBXSLT:libxslt NULL
sb basic usr1 - all sb_mkout NULL
-sb basic\inc nmake - all sb_inc NULL
-sb basic\source\app nmake - all sb_app sb_class sb_inc NULL
-sb basic\source\basmgr nmake - all sb_mgr sb_inc NULL
-sb basic\source\classes nmake - all sb_class sb_inc NULL
-sb basic\source\comp nmake - all sb_comp sb_inc NULL
-sb basic\source\runtime nmake - all sb_rt sb_inc sb_class NULL
-sb basic\source\sample nmake - all sb_samp sb_inc NULL
-sb basic\source\sbx nmake - all sb_sbx sb_inc NULL
-sb basic\source\uno nmake - all sb_uno sb_inc NULL
-sb basic\util nmake - all sb_util sb_app sb_class sb_comp sb_mgr sb_rt sb_samp sb_sbx sb_uno NULL
-
+sb basic\prj nmake - all sb_prj NULL
diff --git a/basic/prj/d.lst b/basic/prj/d.lst
index 8aa0b8399c78..e69de29bb2d1 100644
--- a/basic/prj/d.lst
+++ b/basic/prj/d.lst
@@ -1,29 +0,0 @@
-mkdir: %COMMON_DEST%\bin\hid
-mkdir: %COMMON_DEST%\res
-
-..\%COMMON_OUTDIR%\misc\*.hid %COMMON_DEST%\bin\hid\*.hid
-..\%__SRC%\lib\basic.lib %_DEST%\lib\basic.lib
-..\%__SRC%\lib\lib*.so %_DEST%\lib
-..\%__SRC%\lib\*.dylib %_DEST%\lib\*.dylib
-..\%__SRC%\lib\*.a %_DEST%\lib\*.a
-..\%__SRC%\slb\sb.lib %_DEST%\lib\xsb.lib
-..\%__SRC%\srs\classes.srs %_DEST%\res\basic.srs
-..\%COMMON_OUTDIR%\srs\classes_srs.hid %COMMON_DEST%\res\basic_srs.hid
-..\%__SRC%\bin\sb?????.dll %_DEST%\bin\sb?????.dll
-..\%__SRC%\bin\sb?????.sym %_DEST%\bin\sb?????.sym
-..\%__SRC%\misc\sb?????.map %_DEST%\bin\sb?????.map
-..\%__SRC%\bin\stt*.res %_DEST%\bin\stt*.res
-..\%__SRC%\bin\sb*.res %_DEST%\bin\sb*.res
-..\%__SRC%\lib\app.lib %_DEST%\lib\app.lib
-..\%__SRC%\lib\libapp.a %_DEST%\lib\libapp.a
-..\%__SRC%\lib\sample.lib %_DEST%\lib\sample.lib
-..\%__SRC%\lib\libsample.a %_DEST%\lib\libsample.a
-
-mkdir: %_DEST%\inc\basic
-..\inc\basic\*.hxx %_DEST%\inc\basic\*.hxx
-..\inc\basic\*.hrc %_DEST%\inc\basic\*.hrc
-..\inc\basic\*.h %_DEST%\inc\basic\*.h
-
-..\inc\modsizeexceeded.hxx %_DEST%\inc\basic\modsizeexceeded.hxx
-..\%__SRC%\misc\sb.component %_DEST%\xml\sb.component
-
diff --git a/basic/inc/makefile.mk b/basic/prj/makefile.mk
index 1b56b6774806..d30ff8a47e6b 100755..100644
--- a/basic/inc/makefile.mk
+++ b/basic/prj/makefile.mk
@@ -1,7 +1,7 @@
#*************************************************************************
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
+#
# Copyright 2000, 2010 Oracle and/or its affiliates.
#
# OpenOffice.org - a multi-platform office productivity suite
@@ -24,24 +24,17 @@
# for a copy of the LGPLv3 License.
#
#*************************************************************************
-PRJ=..
-
-PRJNAME=basic
-TARGET=inc
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-# --- Targets -------------------------------------------------------
+PRJ=..
+TARGET=prj
-.INCLUDE : target.mk
+.INCLUDE : settings.mk
-.IF "$(ENABLE_PCH)"!=""
-ALLTAR : \
- $(SLO)$/precompiled.pch \
- $(SLO)$/precompiled_ex.pch
-
-.ENDIF # "$(ENABLE_PCH)"!=""
+.IF "$(VERBOSE)"!=""
+VERBOSEFLAG :=
+.ELSE
+VERBOSEFLAG := -s
+.ENDIF
+all:
+ cd $(PRJ) && $(GNUMAKE) $(VERBOSEFLAG) -r -j$(MAXPROCESS) $(gb_MAKETARGET) && $(GNUMAKE) $(VERBOSEFLAG) -r deliverlog
diff --git a/basic/source/app/dialogs.cxx b/basic/source/app/dialogs.cxx
index f326c5321552..1d674836ca8d 100644
--- a/basic/source/app/dialogs.cxx
+++ b/basic/source/app/dialogs.cxx
@@ -63,7 +63,6 @@
#include "app.hxx"
#include "basrid.hxx"
-#include "_version.h"
AboutDialog::AboutDialog( Window* pParent, const ResId& id )
: ModalDialog( pParent, id )
diff --git a/basic/source/app/makefile.mk b/basic/source/app/makefile.mk
deleted file mode 100755
index e62b11c0beb4..000000000000
--- a/basic/source/app/makefile.mk
+++ /dev/null
@@ -1,77 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..
-
-PRJNAME=basic
-TARGET=app
-
-LIBTARGET = NO
-
-# --- Settings ------------------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Common ------------------------------------------------------------
-
-EXCEPTIONSFILES = \
- $(OBJ)$/app.obj \
- $(OBJ)$/appbased.obj \
- $(OBJ)$/appedit.obj \
- $(OBJ)$/apperror.obj \
- $(OBJ)$/appwin.obj \
- $(OBJ)$/basicrt.obj \
- $(OBJ)$/brkpnts.obj \
- $(OBJ)$/dialogs.obj \
- $(OBJ)$/msgedit.obj \
- $(OBJ)$/mybasic.obj \
- $(OBJ)$/printer.obj \
- $(OBJ)$/process.obj \
- $(OBJ)$/status.obj \
- $(OBJ)$/textedit.obj
-
-SRS1NAME=$(TARGET)
-SRC1FILES = \
- basic.src \
- ttmsg.src \
- basmsg.src \
- svtmsg.src \
- testtool.src
-
-LIB1TARGET=$(LB)$/app.lib
-LIB1ARCHIV=$(LB)$/libapp.a
-LIB1OBJFILES = \
- $(EXCEPTIONSFILES) \
- $(OBJ)$/processw.obj \
- $(OBJ)$/sbintern.obj
-
-# --- Targets ------------------------------------------------------------
-
-.INCLUDE : target.mk
-
-$(OBJ)$/dialogs.obj : $(INCCOM)$/_version.h
-
diff --git a/basic/source/app/testbasi.cxx b/basic/source/app/testbasi.cxx
deleted file mode 100644
index 05818806c8a8..000000000000
--- a/basic/source/app/testbasi.cxx
+++ /dev/null
@@ -1,34 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_basic.hxx"
-#define testtool
-#include "mybasic.cxx"
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basic/source/app/ttbasic.cxx b/basic/source/app/ttbasic.cxx
deleted file mode 100644
index cfc12a85dcc4..000000000000
--- a/basic/source/app/ttbasic.cxx
+++ /dev/null
@@ -1,39 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_basic.hxx"
-#include <basic/mybasic.hxx>
-#include "ttbasic.hxx"
-
-MyBasic* TTBasic::CreateMyBasic()
-{
- return new MyBasic;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basic/source/classes/makefile.mk b/basic/source/classes/makefile.mk
deleted file mode 100755
index e00ed4674cc1..000000000000
--- a/basic/source/classes/makefile.mk
+++ /dev/null
@@ -1,76 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..
-
-PRJNAME=basic
-TARGET=classes
-LIBTARGET=NO
-
-# --- Settings -----------------------------------------------------------
-
-ENABLE_EXCEPTIONS=TRUE
-
-.INCLUDE : settings.mk
-
-ALLTAR .SEQUENTIAL : \
- $(MISC)$/$(TARGET).don \
- $(MISC)$/$(TARGET).slo
-
-$(MISC)$/$(TARGET).don : $(SOLARBINDIR)$/oovbaapi.rdb
- +$(CPPUMAKER) -O$(OUT)$/inc -BUCR $(SOLARBINDIR)$/oovbaapi.rdb -X$(SOLARBINDIR)$/types.rdb && echo > $@
- echo $@
-
-$(MISC)$/$(TARGET).slo : $(SLOTARGET)
- echo $@
-
-# --- Allgemein -----------------------------------------------------------
-
-SLOFILES= \
- $(SLO)$/sb.obj \
- $(SLO)$/sbxmod.obj \
- $(SLO)$/image.obj \
- $(SLO)$/sbintern.obj \
- $(SLO)$/sbunoobj.obj \
- $(SLO)$/propacc.obj \
- $(SLO)$/disas.obj \
- $(SLO)$/errobject.obj \
- $(SLO)$/eventatt.obj
-
-OBJFILES= \
- $(OBJ)$/sbintern.obj
-
-SRS1NAME=$(TARGET)
-SRC1FILES= sb.src
-
-LIB1TARGET= $(SLB)$/$(TARGET).lib
-LIB1OBJFILES = $(SLOFILES)
-
-# --- Targets -------------------------------------------------------------
-
-.INCLUDE : target.mk
-
diff --git a/basic/source/comp/makefile.mk b/basic/source/comp/makefile.mk
deleted file mode 100755
index 146c832df97e..000000000000
--- a/basic/source/comp/makefile.mk
+++ /dev/null
@@ -1,57 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..
-
-PRJNAME=basic
-TARGET=comp
-
-# --- Settings ------------------------------------------------------------
-
-.INCLUDE : settings.mk
-
-SLOFILES= \
- $(EXCEPTIONSFILES) \
- $(SLO)$/buffer.obj \
- $(SLO)$/exprgen.obj \
- $(SLO)$/exprnode.obj \
- $(SLO)$/io.obj \
- $(SLO)$/loops.obj \
- $(SLO)$/symtbl.obj \
- $(SLO)$/token.obj
-
-EXCEPTIONSFILES= \
- $(SLO)$/codegen.obj \
- $(SLO)$/dim.obj \
- $(SLO)$/exprtree.obj \
- $(SLO)$/parser.obj \
- $(SLO)$/scanner.obj \
- $(SLO)$/sbcomp.obj
-
-# --- Targets --------------------------------------------------------------
-
-.INCLUDE : target.mk
diff --git a/basic/source/inc/sbintern.hxx b/basic/source/inc/sbintern.hxx
index 34d08f6e8c21..501b278c4e52 100644
--- a/basic/source/inc/sbintern.hxx
+++ b/basic/source/inc/sbintern.hxx
@@ -29,6 +29,7 @@
#ifndef _SB_INTERN_HXX
#define _SB_INTERN_HXX
+#include <basic/basicdllapi.h>
#include <basic/sbxfac.hxx>
#include <unotools/transliterationwrapper.hxx>
#include "sb.hxx"
@@ -69,7 +70,7 @@ struct SbClassData
// #115824: Factory class to create class objects (type command)
// Implementation: sb.cxx
-class SbClassFactory : public SbxFactory
+class BASIC_DLLPUBLIC SbClassFactory : public SbxFactory
{
SbxObjectRef xClassModules;
@@ -87,7 +88,7 @@ public:
};
// Stack fuer die im Fehlerfall abgebaute SbiRuntime Kette
-class SbErrorStackEntry
+class BASIC_DLLPUBLIC SbErrorStackEntry
{
public:
SbErrorStackEntry(SbMethodRef aM, xub_StrLen nL, xub_StrLen nC1, xub_StrLen nC2)
@@ -97,8 +98,57 @@ public:
xub_StrLen nCol1, nCol2;
};
-SV_DECL_PTRARR_DEL(SbErrorStack, SbErrorStackEntry*, 1, 1)
-
+typedef sal_Bool (*FnForEach_SbErrorStack)( const SbErrorStackEntry* &, void* );
+class BASIC_DLLPUBLIC SbErrorStack: public SvPtrarr
+{
+public:
+ SbErrorStack( sal_uInt16 nIni=1, sal_uInt8 nG=1 )
+ : SvPtrarr(nIni,nG) {}
+ ~SbErrorStack() { DeleteAndDestroy( 0, Count() ); }
+ void Insert( const SbErrorStack *pI, sal_uInt16 nP,
+ sal_uInt16 nS = 0, sal_uInt16 nE = USHRT_MAX ) {
+ SvPtrarr::Insert((const SvPtrarr*)pI, nP, nS, nE);
+ }
+ void Insert( const SbErrorStackEntry* & aE, sal_uInt16 nP ) {
+ SvPtrarr::Insert((const VoidPtr &)aE, nP );
+ }
+ void Insert( const SbErrorStackEntry* *pE, sal_uInt16 nL, sal_uInt16 nP ) {
+ SvPtrarr::Insert( (const VoidPtr *)pE, nL, nP );
+ }
+ void Replace( const SbErrorStackEntry* & aE, sal_uInt16 nP ) {
+ SvPtrarr::Replace( (const VoidPtr &)aE, nP );
+ }
+ void Replace( const SbErrorStackEntry* *pE, sal_uInt16 nL, sal_uInt16 nP ) {
+ SvPtrarr::Replace( (const VoidPtr*)pE, nL, nP );
+ }
+ void Remove( sal_uInt16 nP, sal_uInt16 nL = 1) {
+ SvPtrarr::Remove(nP,nL);
+ }
+ const SbErrorStackEntry** GetData() const {
+ return (const SbErrorStackEntry**)SvPtrarr::GetData();
+ }
+ void ForEach( CONCAT( FnForEach_, SbErrorStack ) fnForEach, void* pArgs = 0 )
+ {
+ _ForEach( 0, nA, (FnForEach_SvPtrarr)fnForEach, pArgs );
+ }
+ void ForEach( sal_uInt16 nS, sal_uInt16 nE,
+ CONCAT( FnForEach_, SbErrorStack ) fnForEach, void* pArgs = 0 )
+ {
+ _ForEach( nS, nE, (FnForEach_SvPtrarr)fnForEach, pArgs );
+ }
+ SbErrorStackEntry* operator[]( sal_uInt16 nP )const {
+ return (SbErrorStackEntry*)SvPtrarr::operator[](nP); }
+ SbErrorStackEntry* GetObject( sal_uInt16 nP )const {
+ return (SbErrorStackEntry*)SvPtrarr::GetObject(nP); }
+
+ sal_uInt16 GetPos( const SbErrorStackEntry* & aE ) const {
+ return SvPtrarr::GetPos((const VoidPtr &)aE);
+ }
+ void DeleteAndDestroy( sal_uInt16 nP, sal_uInt16 nL=1 );
+private:
+ BASIC_DLLPRIVATE SbErrorStack( const SbErrorStack& );
+ BASIC_DLLPRIVATE SbErrorStack& operator=( const SbErrorStack& );
+};
struct SbiGlobals
@@ -135,7 +185,7 @@ struct SbiGlobals
// Utility-Makros und -Routinen
-SbiGlobals* GetSbData();
+BASIC_DLLPUBLIC SbiGlobals* GetSbData();
#define pINST GetSbData()->pInst
#define pMOD GetSbData()->pMod
diff --git a/basic/source/runtime/makefile.mk b/basic/source/runtime/makefile.mk
deleted file mode 100755
index 80066425e3c1..000000000000
--- a/basic/source/runtime/makefile.mk
+++ /dev/null
@@ -1,84 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..
-
-PRJNAME=basic
-TARGET=runtime
-
-ENABLE_EXCEPTIONS = TRUE
-
-# --- Settings -----------------------------------------------------------
-
-.INCLUDE : settings.mk
-
-
-# --- Allgemein -----------------------------------------------------------
-
-SLOFILES= \
- $(SLO)$/basrdll.obj \
- $(SLO)$/comenumwrapper.obj \
- $(SLO)$/inputbox.obj\
- $(SLO)$/runtime.obj \
- $(SLO)$/step0.obj \
- $(SLO)$/step1.obj \
- $(SLO)$/step2.obj \
- $(SLO)$/iosys.obj \
- $(SLO)$/stdobj.obj \
- $(SLO)$/stdobj1.obj \
- $(SLO)$/methods.obj \
- $(SLO)$/methods1.obj\
- $(SLO)$/props.obj \
- $(SLO)$/ddectrl.obj \
- $(SLO)$/sbdiagnose.obj
-
-.IF "$(GUI)$(CPU)" == "WNTI"
-SLOFILES+= \
- $(SLO)$/dllmgr-x86.obj
-.ELIF "$(GUI)$(CPU)" == "WNTX"
-SLOFILES+= \
- $(SLO)$/dllmgr-x64.obj
-.ELSE
-SLOFILES+= \
- $(SLO)$/dllmgr-none.obj
-.ENDIF
-.IF "$(GUI)$(COM)$(CPU)" == "WNTMSCI"
-SLOFILES+= \
- $(SLO)$/wnt-x86.obj
-.ELIF "$(GUI)$(COM)$(CPU)" == "WNTGCCI"
-SLOFILES+= \
- $(SLO)$/wnt-mingw.obj
-.ENDIF
-
-# --- Targets -------------------------------------------------------------
-
-.INCLUDE : target.mk
-
-$(SLO)$/%.obj: %.s
-#kendy: Cut'n'paste from bridges/source/cpp_uno/mingw_intel/makefile.mk
- $(CC) -c -o $(SLO)$/$(@:b).obj $<
- touch $@
diff --git a/basic/source/sbx/makefile.mk b/basic/source/sbx/makefile.mk
deleted file mode 100755
index 332c6a0d426d..000000000000
--- a/basic/source/sbx/makefile.mk
+++ /dev/null
@@ -1,77 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..
-
-PRJNAME=basic
-TARGET=sbx
-
-# --- Settings -----------------------------------------------------------
-
-.INCLUDE : settings.mk
-
-
-# --- Allgemein -----------------------------------------------------------
-
-SRS1NAME=$(TARGET)
-SRC1FILES= format.src
-
-SLOFILES= \
- $(EXCEPTIONSFILES) \
- $(SLO)$/sbxbase.obj \
- $(SLO)$/sbxbool.obj \
- $(SLO)$/sbxbyte.obj \
- $(SLO)$/sbxchar.obj \
- $(SLO)$/sbxcoll.obj \
- $(SLO)$/sbxdec.obj \
- $(SLO)$/sbxform.obj \
- $(SLO)$/sbxint.obj \
- $(SLO)$/sbxlng.obj \
- $(SLO)$/sbxmstrm.obj \
- $(SLO)$/sbxobj.obj \
- $(SLO)$/sbxres.obj \
- $(SLO)$/sbxsng.obj \
- $(SLO)$/sbxuint.obj \
- $(SLO)$/sbxulng.obj \
- $(SLO)$/sbxvar.obj
-
-
-EXCEPTIONSFILES= \
- $(SLO)$/sbxarray.obj \
- $(SLO)$/sbxcurr.obj \
- $(SLO)$/sbxdate.obj \
- $(SLO)$/sbxdbl.obj \
- $(SLO)$/sbxexec.obj \
- $(SLO)$/sbxscan.obj \
- $(SLO)$/sbxstr.obj \
- $(SLO)$/sbxvalue.obj \
-
-# --- Targets -------------------------------------------------------------
-
-.INCLUDE : target.mk
-
-
diff --git a/basic/util/makefile.mk b/basic/util/makefile.mk
deleted file mode 100755
index ad3bd67e8f66..000000000000
--- a/basic/util/makefile.mk
+++ /dev/null
@@ -1,153 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..
-
-PRJNAME=basic
-TARGET=sb
-#basic.hid generieren
-GEN_HID=TRUE
-
-# --- Settings ---------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Allgemein ---------------------------------------------------
-
-LIB1TARGET=$(SLB)$/sb.lib
-LIB1FILES= \
- $(SLB)$/basicmgr.lib \
- $(SLB)$/classes.lib \
- $(SLB)$/comp.lib \
- $(SLB)$/uno.lib \
- $(SLB)$/runtime.lib \
- $(SLB)$/sbx.lib
-
-SHL1TARGET= sb$(DLLPOSTFIX)
-.IF "$(COM)" == "MSC"
-SHL1IMPLIB= basic
-.ELSE
-SHL1IMPLIB= sb$(DLLPOSTFIX)
-.ENDIF
-
-SHL1STDLIBS= \
- $(CPPULIB) \
- $(CPPUHELPERLIB) \
- $(TOOLSLIB) \
- $(SVTOOLLIB) \
- $(SVLLIB) \
- $(VCLLIB) \
- $(SALLIB) \
- $(SALHELPERLIB) \
- $(COMPHELPERLIB) \
- $(UNOTOOLSLIB) \
- $(SOTLIB) \
- $(XMLSCRIPTLIB)
-
-# Uncomment the following line if DBG_TRACE_PROFILING is active in source/inc/sbtrace.hxx
-# SHL1STDLIBS+=$(CANVASTOOLSLIB)
-
-.IF "$(GUI)"=="WNT"
-SHL1STDLIBS+= \
- $(UWINAPILIB) \
- $(OLEAUT32LIB)
-.ENDIF # WNT
-
-.IF "$(GUI)" != "UNX"
-.IF "$(COM)" != "GCC"
-SHL1OBJS= \
- $(SLO)$/sb.obj
-.ENDIF
-.ENDIF
-
-SHL1DEF= $(MISC)$/$(SHL1TARGET).def
-SHL1LIBS= $(SLB)$/sb.lib
-
-DEF1NAME =$(SHL1TARGET)
-DEF1DEPN = \
- $(MISC)$/$(SHL1TARGET).flt
-
-DEFLIB1NAME =sb
-DEF1DES =StarBasic
-
-
-RES1TARGET=$(PRJNAME)
-SRS1FILES= \
- $(SRS)$/classes.srs \
- $(SRS)$/sbx.srs
-
-# --- TESTTOOL IDE ------------------------------------------------------
-# The resources are linked here
-
-RESLIB1NAME=stt
-RESLIB1IMAGES=$(PRJ)$/res
-RESLIB1SRSFILES= \
- $(SRS)$/app.srs
-
-RESLIB2NAME=sb
-RESLIB2IMAGES=$(PRJ)$/res
-RESLIB2SRSFILES= \
- $(SRS)$/classes.srs \
- $(SRS)$/sbx.srs
-########## remove sbx.srx (and this line) when issue i53795 is fixed
-
-# --- Targets -----------------------------------------------------------
-
-.INCLUDE : target.mk
-
-#-------------------------------------------------------------------------
-# Windows NT
-#-------------------------------------------------------------------------
-#
-# default targets aus target.mk
-#
-
-# --- Basic-Filter-Datei ---
-
-$(MISC)$/$(SHL1TARGET).flt: makefile.mk
- @echo ------------------------------
- @echo Making: $@
- @echo WEP > $@
- @echo LIBMAIN >> $@
- @echo LibMain >> $@
- @echo Sbi >> $@
- @echo SvRTL >> $@
- @echo SbRtl_ >> $@
- @echo exception >> $@
- @echo bad_alloc >> $@
- @echo __CT >> $@
-
-$(SRS)$/basic.srs:
- $(TYPE) $(SRS)$/classes.srs + $(SRS)$/runtime.srs + $(SRS)$/sbx.srs > $@
-
-ALLTAR : $(MISC)/sb.component
-
-$(MISC)/sb.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
- sb.component
- $(XSLTPROC) --nonet --stringparam uri \
- '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
- $(SOLARENV)/bin/createcomponent.xslt sb.component