[Libreoffice-commits] core.git: Branch 'aoo/trunk' - codemaker/Ant_codemaker_test.mk codemaker/codemaker.pmk codemaker/Executable_cppumaker.mk codemaker/Executable_javamaker.mk codemaker/GoogleTest_cppumaker.mk codemaker/inc codemaker/Makefile codemaker/Module_codemaker.mk codemaker/Package_inc.mk codemaker/prj codemaker/source codemaker/StaticLibrary_codemaker.mk codemaker/StaticLibrary_commoncpp.mk codemaker/StaticLibrary_commonjava.mk codemaker/test Module_ooo.mk Repository.mk solenv/ant solenv/gbuild
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Thu Aug 23 22:09:29 UTC 2018
Module_ooo.mk | 1
Repository.mk | 2
codemaker/Ant_codemaker_test.mk | 15
codemaker/Executable_cppumaker.mk | 71 +
codemaker/Executable_javamaker.mk | 62 +
codemaker/GoogleTest_cppumaker.mk | 43
codemaker/Makefile | 22
codemaker/Module_codemaker.mk | 41
codemaker/Package_inc.mk | 34
codemaker/StaticLibrary_codemaker.mk | 51
codemaker/StaticLibrary_commoncpp.mk | 45
codemaker/StaticLibrary_commonjava.mk | 45
codemaker/codemaker.pmk | 49
codemaker/inc/pch/precompiled_commoncpp.cxx | 25
codemaker/inc/pch/precompiled_commoncpp.hxx | 28
codemaker/inc/pch/precompiled_commonjava.cxx | 25
codemaker/inc/pch/precompiled_commonjava.hxx | 28
codemaker/inc/pch/precompiled_cppumaker.cxx | 25
codemaker/inc/pch/precompiled_cppumaker.hxx | 28
codemaker/inc/pch/precompiled_javamaker.cxx | 25
codemaker/inc/pch/precompiled_javamaker.hxx | 28
codemaker/prj/build.lst | 10
codemaker/prj/d.lst | 14
codemaker/prj/makefile.mk | 27
codemaker/source/commoncpp/commoncpp.cxx | 2
codemaker/source/cppumaker/cppumaker.cxx | 2
codemaker/source/cppumaker/cppuoptions.cxx | 2
codemaker/source/cppumaker/cpputype.cxx | 2
codemaker/source/cppumaker/dumputils.cxx | 2
codemaker/source/cppumaker/includes.cxx | 2
codemaker/source/cppumaker/makefile.mk | 61 -
codemaker/source/javamaker/makefile.mk | 54
codemaker/test/cppumaker/makefile.mk | 71 -
codemaker/test/javamaker/build.xml | 45
codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/Javamaker_Test.java | 545 +++++-----
codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/java15/Java15Javamaker_Test.java | 46
codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/java15/types15.idl | 46
solenv/ant/idl.xml | 88 +
solenv/gbuild/Executable.mk | 1
solenv/gbuild/GoogleTest.mk | 1
solenv/gbuild/LinkTarget.mk | 38
solenv/gbuild/TargetLocations.mk | 1
42 files changed, 1104 insertions(+), 649 deletions(-)
New commits:
commit 8f7e4a048f7d37bc329f212bac66aa87b7772ad9
Author: Damjan Jovanovic <damjan at apache.org>
AuthorDate: Thu Aug 23 20:05:32 2018 +0000
Commit: Damjan Jovanovic <damjan at apache.org>
CommitDate: Thu Aug 23 20:05:32 2018 +0000
Port main/codemaker to gbuild.
Also ported the Java tests in codemaker to JUnit
instead of the internal test framework,
and enabled them during the subsequent test phase.
A gbuild API for building private UNO APIs using cppumaker was also added,
and used to run the C++ subsequent tests in codemaker.
Patch by: me
diff --git a/Module_ooo.mk b/Module_ooo.mk
index ff41468b3ef3..4ac3c74deac4 100644
--- a/Module_ooo.mk
+++ b/Module_ooo.mk
@@ -35,6 +35,7 @@ $(eval $(call gb_Module_add_moduledirs,ooo,\
basegfx \
binaryurp \
canvas \
+ codemaker \
comphelper \
configmgr \
cosv \
diff --git a/Repository.mk b/Repository.mk
index 51efa03c0438..a1bce69268cb 100644
--- a/Repository.mk
+++ b/Repository.mk
@@ -46,6 +46,8 @@ $(eval $(call gb_Helper_register_executables,OOO, \
$(eval $(call gb_Helper_register_executables,SDK, \
autodoc \
+ cppumaker \
+ javamaker \
regcompare \
uno-skeletonmaker \
))
diff --git a/codemaker/source/commoncpp/makefile.mk b/codemaker/Ant_codemaker_test.mk
similarity index 79%
rename from codemaker/source/commoncpp/makefile.mk
rename to codemaker/Ant_codemaker_test.mk
index 2519f9fde615..c4b1596a494a 100644
--- a/codemaker/source/commoncpp/makefile.mk
+++ b/codemaker/Ant_codemaker_test.mk
@@ -21,18 +21,7 @@
-PRJ := ..$/..
-PRJNAME := codemaker
-TARGET := commoncpp
+$(eval $(call gb_Ant_Ant,jurt,$(SRCDIR)/codemaker/test/javamaker/build.xml))
-ENABLE_EXCEPTIONS := TRUE
+# vim: set noet sw=4 ts=4:
-.INCLUDE: settings.mk
-
-SLOFILES = $(SLO)$/commoncpp.obj
-
-LIB1TARGET=$(LB)$/$(TARGET).lib
-LIB1ARCHIV=$(LB)$/lib$(TARGET).a
-LIB1OBJFILES=$(SLOFILES)
-
-.INCLUDE: target.mk
diff --git a/codemaker/Executable_cppumaker.mk b/codemaker/Executable_cppumaker.mk
new file mode 100644
index 000000000000..b876b6846fe2
--- /dev/null
+++ b/codemaker/Executable_cppumaker.mk
@@ -0,0 +1,71 @@
+#**************************************************************
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#**************************************************************
+
+
+
+$(eval $(call gb_Executable_Executable,cppumaker))
+
+$(eval $(call gb_Executable_set_targettype_gui,cppumaker,NO))
+
+$(eval $(call gb_StaticLibrary_add_package_headers,cppumaker,codemaker_inc))
+
+$(eval $(call gb_Library_add_precompiled_header,cppumaker,$(SRCDIR)/commoncpp/inc/pch/precompiled_cppumaker))
+
+$(eval $(call gb_Executable_set_include,cppumaker,\
+ $$(INCLUDE) \
+ -I$(SRCDIR)/codemaker/inc/ \
+ -I$(SRCDIR)/codemaker/inc/pch \
+))
+
+#$(eval $(call gb_Executable_add_defs,cppumaker,\
+# -D_TOOLS_STRINGLIST \
+#))
+
+$(eval $(call gb_Executable_add_linked_libs,cppumaker,\
+ reg \
+ sal \
+ salhelper \
+ stl \
+ $(gb_STDLIBS) \
+))
+
+$(eval $(call gb_Executable_add_linked_static_libs,cppumaker,\
+ codemaker \
+ commoncpp \
+))
+
+#$(eval $(call gb_Executable_add_private_apis,cppumaker,\
+# $(SRCDIR)/codemaker/test/cppumaker/types.idl \
+#))
+
+$(eval $(call gb_Executable_add_exception_objects,cppumaker,\
+ codemaker/source/cppumaker/cppumaker \
+ codemaker/source/cppumaker/cppuoptions \
+ codemaker/source/cppumaker/cpputype \
+ codemaker/source/cppumaker/dumputils \
+ codemaker/source/cppumaker/includes \
+))
+
+$(eval $(call gb_LinkTarget_set_cxx_optimization, \
+ cppumaker/source/cppumaker/cpputype, $(gb_COMPILERNOOPTFLAGS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/codemaker/Executable_javamaker.mk b/codemaker/Executable_javamaker.mk
new file mode 100644
index 000000000000..af180d8e0ea1
--- /dev/null
+++ b/codemaker/Executable_javamaker.mk
@@ -0,0 +1,62 @@
+#**************************************************************
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#**************************************************************
+
+
+
+$(eval $(call gb_Executable_Executable,javamaker))
+
+$(eval $(call gb_Executable_set_targettype_gui,javamaker,NO))
+
+$(eval $(call gb_StaticLibrary_add_package_headers,javamaker,codemaker_inc))
+
+$(eval $(call gb_Library_add_precompiled_header,javamaker,$(SRCDIR)/commoncpp/inc/pch/precompiled_javamaker))
+
+$(eval $(call gb_Executable_set_include,javamaker,\
+ $$(INCLUDE) \
+ -I$(SRCDIR)/codemaker/inc/ \
+ -I$(SRCDIR)/codemaker/inc/pch \
+))
+
+#$(eval $(call gb_Executable_add_defs,javamaker,\
+# -D_TOOLS_STRINGLIST \
+#))
+
+$(eval $(call gb_Executable_add_linked_libs,javamaker,\
+ reg \
+ sal \
+ salhelper \
+ stl \
+ $(gb_STDLIBS) \
+))
+
+$(eval $(call gb_Executable_add_linked_static_libs,javamaker,\
+ codemaker \
+ commonjava \
+))
+
+$(eval $(call gb_Executable_add_exception_objects,javamaker,\
+ codemaker/source/javamaker/classfile \
+ codemaker/source/javamaker/javamaker \
+ codemaker/source/javamaker/javaoptions \
+ codemaker/source/javamaker/javatype \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/codemaker/source/codemaker/makefile.mk b/codemaker/GoogleTest_cppumaker.mk
similarity index 54%
rename from codemaker/source/codemaker/makefile.mk
rename to codemaker/GoogleTest_cppumaker.mk
index b5a3c366963d..3765ad4c7362 100644
--- a/codemaker/source/codemaker/makefile.mk
+++ b/codemaker/GoogleTest_cppumaker.mk
@@ -1,4 +1,4 @@
-#**************************************************************
+###############################################################
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
@@ -17,31 +17,30 @@
# specific language governing permissions and limitations
# under the License.
#
-#**************************************************************
+###############################################################
+$(eval $(call gb_GoogleTest_GoogleTest,cppumaker_test))
-PRJ := ..$/..
-PRJNAME := codemaker
-TARGET := codemaker
+$(eval $(call gb_GoogleTest_add_exception_objects,cppumaker_test, \
+ codemaker/test/cppumaker/test_codemaker_cppumaker \
+))
-ENABLE_EXCEPTIONS := TRUE
+$(eval $(call gb_GoogleTest_set_include,cppumaker_test,\
+ $$(INCLUDE) \
+ -I$(SRCDIR)/codemaker/inc \
+ -I$(SRCDIR)/codemaker/inc/pch \
+))
-.INCLUDE: settings.mk
+$(eval $(call gb_GoogleTest_set_private_api,cppumaker_test,\
+ $(SRCDIR)/codemaker/test/cppumaker/types.idl \
+))
-SLOFILES = \
- $(SLO)$/dependencies.obj \
- $(SLO)$/exceptiontree.obj \
- $(SLO)$/global.obj \
- $(SLO)$/options.obj \
- $(SLO)$/typemanager.obj \
- $(SLO)$/unotype.obj \
- $(SLO)$/codemaker.obj
+$(eval $(call gb_GoogleTest_add_linked_libs,cppumaker_test, \
+ cppu \
+ sal \
+ stl \
+ $(gb_STDLIBS) \
+))
-LIB1TARGET=$(LB)$/$(TARGET).lib
-.IF "$(GUI)" != "OS2"
-LIB1ARCHIV=$(LB)$/lib$(TARGET).a
-.ENDIF
-LIB1OBJFILES=$(SLOFILES)
-
-.INCLUDE: target.mk
+# vim: set noet sw=4 ts=4:
diff --git a/codemaker/source/commonjava/makefile.mk b/codemaker/Makefile
similarity index 76%
rename from codemaker/source/commonjava/makefile.mk
rename to codemaker/Makefile
index 04ce3d91d21f..c1d144cbd4c9 100644
--- a/codemaker/source/commonjava/makefile.mk
+++ b/codemaker/Makefile
@@ -19,20 +19,14 @@
#
#**************************************************************
+ifeq ($(strip $(SOLARENV)),)
+$(error No environment set!)
+endif
+gb_PARTIALBUILD := T
+GBUILDDIR := $(SOLARENV)/gbuild
+include $(GBUILDDIR)/gbuild.mk
-PRJ := ..$/..
-PRJNAME := codemaker
-TARGET := commonjava
+$(eval $(call gb_Module_make_global_targets,$(shell ls $(dir $(realpath $(firstword $(MAKEFILE_LIST))))/Module*.mk)))
-ENABLE_EXCEPTIONS := TRUE
-
-.INCLUDE: settings.mk
-
-SLOFILES = $(SLO)$/commonjava.obj
-
-LIB1TARGET=$(LB)$/$(TARGET).lib
-LIB1ARCHIV=$(LB)$/lib$(TARGET).a
-LIB1OBJFILES=$(SLOFILES)
-
-.INCLUDE: target.mk
+# vim: set noet sw=4 ts=4:
diff --git a/codemaker/inc/makefile.mk b/codemaker/Module_codemaker.mk
similarity index 67%
rename from codemaker/inc/makefile.mk
rename to codemaker/Module_codemaker.mk
index fce6bfe0a2de..8c98b5411084 100644
--- a/codemaker/inc/makefile.mk
+++ b/codemaker/Module_codemaker.mk
@@ -20,24 +20,25 @@
#**************************************************************
-PRJ=..
-
-PRJNAME=codemaker
-TARGET=inc
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-# --- Targets -------------------------------------------------------
-
-.INCLUDE : target.mk
-
-.IF "$(ENABLE_PCH)"!=""
-ALLTAR : \
- $(SLO)$/precompiled.pch \
- $(SLO)$/precompiled_ex.pch
-
-.ENDIF # "$(ENABLE_PCH)"!=""
+$(eval $(call gb_Module_Module,codemaker))
+
+$(eval $(call gb_Module_add_targets,codemaker,\
+ Executable_cppumaker \
+ Executable_javamaker \
+ StaticLibrary_codemaker \
+ StaticLibrary_commoncpp \
+ StaticLibrary_commonjava \
+ Package_inc \
+))
+
+ifeq ($(ENABLE_UNIT_TESTS),YES)
+ifneq ($(strip $(OOO_SUBSEQUENT_TESTS)),)
+$(eval $(call gb_Module_add_targets,codemaker,\
+ Ant_codemaker_test \
+ GoogleTest_cppumaker \
+))
+endif
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/codemaker/Package_inc.mk b/codemaker/Package_inc.mk
new file mode 100644
index 000000000000..f4a5252f4df1
--- /dev/null
+++ b/codemaker/Package_inc.mk
@@ -0,0 +1,34 @@
+#**************************************************************
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#**************************************************************
+
+
+
+$(eval $(call gb_Package_Package,codemaker_inc,$(SRCDIR)/codemaker/inc))
+$(eval $(call gb_Package_add_file,codemaker_inc,inc/codemaker/codemaker.hxx,codemaker/codemaker.hxx))
+$(eval $(call gb_Package_add_file,codemaker_inc,inc/codemaker/commoncpp.hxx,codemaker/commoncpp.hxx))
+$(eval $(call gb_Package_add_file,codemaker_inc,inc/codemaker/commonjava.hxx,codemaker/commonjava.hxx))
+$(eval $(call gb_Package_add_file,codemaker_inc,inc/codemaker/dependencies.hxx,codemaker/dependencies.hxx))
+$(eval $(call gb_Package_add_file,codemaker_inc,inc/codemaker/exceptiontree.hxx,codemaker/exceptiontree.hxx))
+$(eval $(call gb_Package_add_file,codemaker_inc,inc/codemaker/generatedtypeset.hxx,codemaker/generatedtypeset.hxx))
+$(eval $(call gb_Package_add_file,codemaker_inc,inc/codemaker/global.hxx,codemaker/global.hxx))
+$(eval $(call gb_Package_add_file,codemaker_inc,inc/codemaker/options.hxx,codemaker/options.hxx))
+$(eval $(call gb_Package_add_file,codemaker_inc,inc/codemaker/typemanager.hxx,codemaker/typemanager.hxx))
+$(eval $(call gb_Package_add_file,codemaker_inc,inc/codemaker/unotype.hxx,codemaker/unotype.hxx))
diff --git a/codemaker/StaticLibrary_codemaker.mk b/codemaker/StaticLibrary_codemaker.mk
new file mode 100644
index 000000000000..f55d2e835552
--- /dev/null
+++ b/codemaker/StaticLibrary_codemaker.mk
@@ -0,0 +1,51 @@
+###############################################################
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+###############################################################
+
+
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,codemaker))
+
+$(eval $(call gb_StaticLibrary_add_package_headers,codemaker,codemaker_inc))
+
+$(eval $(call gb_Library_add_precompiled_header,codemaker,$(SRCDIR)/codemaker/inc/pch/precompiled_codemaker))
+
+#$(eval $(call gb_StaticLibrary_add_api,codemaker,\
+# udkapi \
+# offapi \
+#))
+
+$(eval $(call gb_StaticLibrary_set_include,codemaker,\
+ -I$(SRCDIR)/codemaker/inc \
+ -I$(SRCDIR)/codemaker/inc/pch \
+ $$(INCLUDE) \
+))
+
+$(eval $(call gb_StaticLibrary_add_exception_objects,codemaker,\
+ codemaker/source/codemaker/codemaker \
+ codemaker/source/codemaker/dependencies \
+ codemaker/source/codemaker/exceptiontree \
+ codemaker/source/codemaker/global \
+ codemaker/source/codemaker/options \
+ codemaker/source/codemaker/typemanager \
+ codemaker/source/codemaker/unotype \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/codemaker/StaticLibrary_commoncpp.mk b/codemaker/StaticLibrary_commoncpp.mk
new file mode 100644
index 000000000000..a8d7e9ffd291
--- /dev/null
+++ b/codemaker/StaticLibrary_commoncpp.mk
@@ -0,0 +1,45 @@
+###############################################################
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+###############################################################
+
+
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,commoncpp))
+
+$(eval $(call gb_StaticLibrary_add_package_headers,commoncpp,codemaker_inc))
+
+$(eval $(call gb_Library_add_precompiled_header,commoncpp,$(SRCDIR)/commoncpp/inc/pch/precompiled_commoncpp))
+
+#$(eval $(call gb_StaticLibrary_add_api,commoncpp,\
+# udkapi \
+# offapi \
+#))
+
+$(eval $(call gb_StaticLibrary_set_include,commoncpp,\
+ -I$(SRCDIR)/codemaker/inc \
+ -I$(SRCDIR)/codemaker/inc/pch \
+ $$(INCLUDE) \
+))
+
+$(eval $(call gb_StaticLibrary_add_exception_objects,commoncpp,\
+ codemaker/source/commoncpp/commoncpp \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/codemaker/StaticLibrary_commonjava.mk b/codemaker/StaticLibrary_commonjava.mk
new file mode 100644
index 000000000000..c25a532b0937
--- /dev/null
+++ b/codemaker/StaticLibrary_commonjava.mk
@@ -0,0 +1,45 @@
+###############################################################
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+###############################################################
+
+
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,commonjava))
+
+$(eval $(call gb_StaticLibrary_add_package_headers,commonjava,codemaker_inc))
+
+$(eval $(call gb_Library_add_precompiled_header,commonjava,$(SRCDIR)/commonjava/inc/pch/precompiled_commonjava))
+
+#$(eval $(call gb_StaticLibrary_add_api,commonjava,\
+# udkapi \
+# offapi \
+#))
+
+$(eval $(call gb_StaticLibrary_set_include,commonjava,\
+ -I$(SRCDIR)/codemaker/inc \
+ -I$(SRCDIR)/codemaker/inc/pch \
+ $$(INCLUDE) \
+))
+
+$(eval $(call gb_StaticLibrary_add_exception_objects,commonjava,\
+ codemaker/source/commonjava/commonjava \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/codemaker/codemaker.pmk b/codemaker/codemaker.pmk
deleted file mode 100644
index e7c8125a5f54..000000000000
--- a/codemaker/codemaker.pmk
+++ /dev/null
@@ -1,49 +0,0 @@
-#**************************************************************
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-#**************************************************************
-
-
-
-.IF "$(GUI)" == "OS2"
-STL_OS2_BUILDING=1
-.ENDIF
-
-.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
-CODEMAKERLIBDEPN=codemaker.lib
-COMMONCPPLIBDEPN=commoncpp.lib
-COMMONJAVALIBDEPN=commonjava.lib
-.IF "$(COM)"=="GCC" && ("$(GUI)"=="WNT" || "$(GUI)"=="OS2")
-CODEMAKERLIBST=-lcodemaker
-COMMONCPPLIBST=-lcommoncpp
-COMMONJAVALIBST=-lcommonjava
-.ELSE
-CODEMAKERLIBST=codemaker.lib
-COMMONCPPLIBST=commoncpp.lib
-COMMONJAVALIBST=commonjava.lib
-.ENDIF
-.ELSE
-CODEMAKERLIBDEPN=libcodemaker.a
-COMMONCPPLIBDEPN=libcommoncpp.a
-COMMONJAVALIBDEPN=libcommonjava.a
-CODEMAKERLIBST=-lcodemaker
-COMMONCPPLIBST=-lcommoncpp
-COMMONJAVALIBST=-lcommonjava
-.ENDIF
-
diff --git a/codemaker/inc/pch/precompiled_commoncpp.cxx b/codemaker/inc/pch/precompiled_commoncpp.cxx
new file mode 100644
index 000000000000..8875ea8419ee
--- /dev/null
+++ b/codemaker/inc/pch/precompiled_commoncpp.cxx
@@ -0,0 +1,25 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+#include "precompiled_commoncpp.hxx"
+
diff --git a/codemaker/inc/pch/precompiled_commoncpp.hxx b/codemaker/inc/pch/precompiled_commoncpp.hxx
new file mode 100644
index 000000000000..d583f4d7ca34
--- /dev/null
+++ b/codemaker/inc/pch/precompiled_commoncpp.hxx
@@ -0,0 +1,28 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+// MARKER(update_precomp.py): Generated on 2006-09-01 17:49:33.874150
+
+#ifdef PRECOMPILED_HEADERS
+#endif
+
diff --git a/codemaker/inc/pch/precompiled_commonjava.cxx b/codemaker/inc/pch/precompiled_commonjava.cxx
new file mode 100644
index 000000000000..c73d70517b9e
--- /dev/null
+++ b/codemaker/inc/pch/precompiled_commonjava.cxx
@@ -0,0 +1,25 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+#include "precompiled_commonjava.hxx"
+
diff --git a/codemaker/inc/pch/precompiled_commonjava.hxx b/codemaker/inc/pch/precompiled_commonjava.hxx
new file mode 100644
index 000000000000..d583f4d7ca34
--- /dev/null
+++ b/codemaker/inc/pch/precompiled_commonjava.hxx
@@ -0,0 +1,28 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+// MARKER(update_precomp.py): Generated on 2006-09-01 17:49:33.874150
+
+#ifdef PRECOMPILED_HEADERS
+#endif
+
diff --git a/codemaker/inc/pch/precompiled_cppumaker.cxx b/codemaker/inc/pch/precompiled_cppumaker.cxx
new file mode 100644
index 000000000000..5decbf54561d
--- /dev/null
+++ b/codemaker/inc/pch/precompiled_cppumaker.cxx
@@ -0,0 +1,25 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+#include "precompiled_cppumaker.hxx"
+
diff --git a/codemaker/inc/pch/precompiled_cppumaker.hxx b/codemaker/inc/pch/precompiled_cppumaker.hxx
new file mode 100644
index 000000000000..d583f4d7ca34
--- /dev/null
+++ b/codemaker/inc/pch/precompiled_cppumaker.hxx
@@ -0,0 +1,28 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+// MARKER(update_precomp.py): Generated on 2006-09-01 17:49:33.874150
+
+#ifdef PRECOMPILED_HEADERS
+#endif
+
diff --git a/codemaker/inc/pch/precompiled_javamaker.cxx b/codemaker/inc/pch/precompiled_javamaker.cxx
new file mode 100644
index 000000000000..e6878bd76142
--- /dev/null
+++ b/codemaker/inc/pch/precompiled_javamaker.cxx
@@ -0,0 +1,25 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+#include "precompiled_javamaker.hxx"
+
diff --git a/codemaker/inc/pch/precompiled_javamaker.hxx b/codemaker/inc/pch/precompiled_javamaker.hxx
new file mode 100644
index 000000000000..d583f4d7ca34
--- /dev/null
+++ b/codemaker/inc/pch/precompiled_javamaker.hxx
@@ -0,0 +1,28 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+// MARKER(update_precomp.py): Generated on 2006-09-01 17:49:33.874150
+
+#ifdef PRECOMPILED_HEADERS
+#endif
+
diff --git a/codemaker/prj/build.lst b/codemaker/prj/build.lst
index c7bdd16c5e12..89f5093b74ce 100644
--- a/codemaker/prj/build.lst
+++ b/codemaker/prj/build.lst
@@ -1,10 +1,2 @@
cm codemaker : registry NULL
-cm codemaker usr1 - all cm_mkout NULL
-cm codemaker\inc nmake - all cm_inc NULL
-cm codemaker\prj get - all cm_prj NULL
-cm codemaker\source\codemaker nmake - all cm_codemaker cm_inc NULL
-cm codemaker\source\commoncpp nmake - all cm_cpp cm_inc NULL
-cm codemaker\source\cppumaker nmake - all cm_cppumaker cm_codemaker cm_cpp cm_inc NULL
-cm codemaker\source\commonjava nmake - all cm_java cm_inc NULL
-cm codemaker\source\javamaker nmake - all cm_javamaker cm_codemaker cm_java cm_inc NULL
-cm codemaker\test\cppumaker nmake - all cm_cppumaker_test cm_cppumaker cm_codemaker cm_cpp cm_inc NULL
+cm codemaker\prj nmake - all cm_mkout NULL
diff --git a/codemaker/prj/d.lst b/codemaker/prj/d.lst
index 62b56b948e5c..e69de29bb2d1 100644
--- a/codemaker/prj/d.lst
+++ b/codemaker/prj/d.lst
@@ -1,14 +0,0 @@
-..\%__SRC%\bin\cppumaker.exe %_DEST%\bin%_EXT%\cppumaker.exe
-..\%__SRC%\bin\cppumaker.pdb %_DEST%\bin%_EXT%\cppumaker.pdb
-..\%__SRC%\bin\javamaker.exe %_DEST%\bin%_EXT%\javamaker.exe
-..\%__SRC%\bin\javamaker.pdb %_DEST%\bin%_EXT%\javamaker.pdb
-
-..\inc\codemaker\*.h %_DEST%\inc%_EXT%\codemaker\*.h
-..\inc\codemaker\*.hxx %_DEST%\inc%_EXT%\codemaker\*.hxx
-
-..\%__SRC%\bin\cppumaker %_DEST%\bin%_EXT%\cppumaker
-..\%__SRC%\bin\javamaker %_DEST%\bin%_EXT%\javamaker
-
-..\%__SRC%\lib\*.lib %_DEST%\lib%_EXT%\*.lib
-..\%__SRC%\lib\i*.lib %_DEST%\lib%_EXT%\i*.lib
-..\%__SRC%\lib\*.a %_DEST%\lib%_EXT%\*.a
diff --git a/codemaker/test/javamaker/makefile.mk b/codemaker/prj/makefile.mk
similarity index 71%
rename from codemaker/test/javamaker/makefile.mk
rename to codemaker/prj/makefile.mk
index 560469ed72fa..c62c6a657d16 100644
--- a/codemaker/test/javamaker/makefile.mk
+++ b/codemaker/prj/makefile.mk
@@ -21,17 +21,24 @@
-PRJ := ..$/..
-PRJNAME := codemaker
-TARGET := test_codemaker_javamaker
+PRJ=..
+TARGET=prj
-PACKAGE := test$/codemaker$/javamaker
-JAVATESTFILES := Test.java
-IDLTESTFILES := types.idl
-JARFILES := juh.jar jurt.jar ridl.jar OOoRunner.jar
+.INCLUDE : settings.mk
-JAVAMAKER = $(AUGMENT_LIBRARY_PATH) $(BIN)$/javamaker$(EXECPOST)
+.IF "$(VERBOSE)"!=""
+VERBOSEFLAG :=
+.ELSE
+VERBOSEFLAG := -s
+.ENDIF
-.INCLUDE: javaunittest.mk
+.IF "$(DEBUG)"!=""
+DEBUG_ARGUMENT=DEBUG=$(DEBUG)
+.ELIF "$(debug)"!=""
+DEBUG_ARGUMENT=debug=$(debug)
+.ELSE
+DEBUG_ARGUMENT=
+.ENDIF
-$(MISC)$/$(TARGET).javamaker.flag: $(BIN)$/javamaker$(EXECPOST)
+all:
+ cd $(PRJ) && $(GNUMAKE) $(VERBOSEFLAG) -r -j$(MAXPROCESS) $(gb_MAKETARGET) $(DEBUG_ARGUMENT) && $(GNUMAKE) $(VERBOSEFLAG) -r deliverlog
diff --git a/codemaker/source/commoncpp/commoncpp.cxx b/codemaker/source/commoncpp/commoncpp.cxx
index f99652318ddf..27cb3cb02b69 100644
--- a/codemaker/source/commoncpp/commoncpp.cxx
+++ b/codemaker/source/commoncpp/commoncpp.cxx
@@ -22,7 +22,7 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_codemaker.hxx"
+#include "precompiled_commoncpp.hxx"
#include "sal/config.h"
#include "codemaker/commoncpp.hxx"
diff --git a/codemaker/source/cppumaker/cppumaker.cxx b/codemaker/source/cppumaker/cppumaker.cxx
index 2d6085c500a4..fb68760fa23b 100644
--- a/codemaker/source/cppumaker/cppumaker.cxx
+++ b/codemaker/source/cppumaker/cppumaker.cxx
@@ -22,7 +22,7 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_codemaker.hxx"
+#include "precompiled_cppumaker.hxx"
#include <stdio.h>
diff --git a/codemaker/source/cppumaker/cppuoptions.cxx b/codemaker/source/cppumaker/cppuoptions.cxx
index c2c71de4757b..bba5bc4a2783 100644
--- a/codemaker/source/cppumaker/cppuoptions.cxx
+++ b/codemaker/source/cppumaker/cppuoptions.cxx
@@ -22,7 +22,7 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_codemaker.hxx"
+#include "precompiled_cppumaker.hxx"
#include <stdio.h>
#include <string.h>
diff --git a/codemaker/source/cppumaker/cpputype.cxx b/codemaker/source/cppumaker/cpputype.cxx
index 3f0de055401d..86f8c5ad8136 100644
--- a/codemaker/source/cppumaker/cpputype.cxx
+++ b/codemaker/source/cppumaker/cpputype.cxx
@@ -22,7 +22,7 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_codemaker.hxx"
+#include "precompiled_cppumaker.hxx"
#include <algorithm>
#include <map>
diff --git a/codemaker/source/cppumaker/dumputils.cxx b/codemaker/source/cppumaker/dumputils.cxx
index b03a4c2b0b0b..cfbb9b491423 100644
--- a/codemaker/source/cppumaker/dumputils.cxx
+++ b/codemaker/source/cppumaker/dumputils.cxx
@@ -22,7 +22,7 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_codemaker.hxx"
+#include "precompiled_cppumaker.hxx"
#include "dumputils.hxx"
diff --git a/codemaker/source/cppumaker/includes.cxx b/codemaker/source/cppumaker/includes.cxx
index 7b4043147fe2..b58e60b0b62e 100644
--- a/codemaker/source/cppumaker/includes.cxx
+++ b/codemaker/source/cppumaker/includes.cxx
@@ -22,7 +22,7 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_codemaker.hxx"
+#include "precompiled_cppumaker.hxx"
#include "includes.hxx"
diff --git a/codemaker/source/cppumaker/makefile.mk b/codemaker/source/cppumaker/makefile.mk
deleted file mode 100644
index d23bfc65463c..000000000000
--- a/codemaker/source/cppumaker/makefile.mk
+++ /dev/null
@@ -1,61 +0,0 @@
-#**************************************************************
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-#**************************************************************
-
-
-
-PRJ=..$/..
-
-PRJNAME=codemaker
-TARGET=cppumaker
-TARGETTYPE=CUI
-LIBTARGET=NO
-
-ENABLE_EXCEPTIONS=TRUE
-
-# --- Settings -----------------------------------------------------
-.INCLUDE : settings.mk
-.INCLUDE : $(PRJ)$/codemaker.pmk
-
-# --- Files --------------------------------------------------------
-
-.IF "$(GUI)"=="WNT"
-.IF "$(COM)"!="GCC"
-CFLAGSNOOPT+=-Ob0
-.ENDIF
-.ENDIF
-
-OBJFILES= $(OBJ)$/cppumaker.obj \
- $(OBJ)$/cppuoptions.obj \
- $(OBJ)$/cpputype.obj \
- $(OBJ)$/dumputils.obj \
- $(OBJ)$/includes.obj
-
-NOOPTFILES= \
- $(OBJ)$/cpputype.obj
-
-APP1TARGET= $(TARGET)
-APP1RPATH=SDK
-APP1OBJS= $(OBJFILES)
-
-APP1DEPN= $(OUT)$/lib$/$(CODEMAKERLIBDEPN) $(OUT)$/lib$/$(COMMONCPPLIBDEPN)
-APP1STDLIBS= $(SALLIB) $(SALHELPERLIB) $(REGLIB) $(CODEMAKERLIBST) $(COMMONCPPLIBST)
-
-.INCLUDE : target.mk
diff --git a/codemaker/source/javamaker/makefile.mk b/codemaker/source/javamaker/makefile.mk
deleted file mode 100644
index 7627abb721fc..000000000000
--- a/codemaker/source/javamaker/makefile.mk
+++ /dev/null
@@ -1,54 +0,0 @@
-#**************************************************************
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-#**************************************************************
-
-
-
-PRJ=..$/..
-
-PRJNAME=codemaker
-TARGET=javamaker
-TARGETTYPE=CUI
-LIBTARGET=NO
-
-ENABLE_EXCEPTIONS=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-.INCLUDE : $(PRJ)$/codemaker.pmk
-
-# --- Files --------------------------------------------------------
-
-OBJFILES = \
- $(OBJ)$/classfile.obj \
- $(OBJ)$/javamaker.obj \
- $(OBJ)$/javaoptions.obj \
- $(OBJ)$/javatype.obj
-
-APP1TARGET= $(TARGET)
-APP1RPATH=SDK
-APP1OBJS = $(OBJFILES)
-
-APP1DEPN= $(OUT)$/lib$/$(CODEMAKERLIBDEPN) $(OUT)$/lib$/$(COMMONJAVALIBDEPN)
-APP1STDLIBS= $(SALLIB) $(SALHELPERLIB) $(REGLIB) $(CODEMAKERLIBST) $(COMMONJAVALIBST)
-
-.INCLUDE : target.mk
-
diff --git a/codemaker/test/cppumaker/makefile.mk b/codemaker/test/cppumaker/makefile.mk
deleted file mode 100644
index 69dc75eeed45..000000000000
--- a/codemaker/test/cppumaker/makefile.mk
+++ /dev/null
@@ -1,71 +0,0 @@
-#**************************************************************
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-#**************************************************************
-
-
-
-.IF "$(OOO_SUBSEQUENT_TESTS)" == ""
-nothing .PHONY:
-.ELSE
-
-PRJ := ..$/..
-PRJNAME := codemaker
-TARGET := test_codemaker_cppumaker
-
-ENABLE_EXCEPTIONS := TRUE
-
-.INCLUDE: settings.mk
-
-.IF "$(ENABLE_UNIT_TESTS)" != "YES"
-all:
- @echo unit tests are disabled. Nothing to do.
-
-.ELSE
-
-INCPRE += $(MISC)$/$(TARGET)$/inc
-
-APP1TARGET = $(TARGET)
-APP1OBJS = $(SLO)$/test_codemaker_cppumaker.obj
-APP1STDLIBS = $(CPPULIB) $(GTESTLIB) $(SALLIB) $(TESTSHL2LIB)
-APP1TEST = enabled
-
-.INCLUDE: target.mk
-
-$(APP1OBJS): $(MISC)$/$(TARGET).cppumaker.flag
-
-$(MISC)$/$(TARGET).cppumaker.flag: $(BIN)$/cppumaker$(EXECPOST)
-$(MISC)$/$(TARGET).cppumaker.flag: $(MISC)$/$(TARGET).rdb
- - $(MKDIRHIER) $(MISC)$/$(TARGET)$/inc
- $(AUGMENT_LIBRARY_PATH) $(BIN)$/cppumaker$(EXECPOST) \
- -O$(MISC)$/$(TARGET)$/inc -BUCR -C $< $(SOLARBINDIR)$/udkapi.rdb
- $(TOUCH) $@
-
-$(MISC)$/$(TARGET).rdb: $(MISC)$/$(TARGET)$/types.urd
- - rm $@
- $(REGMERGE) $@ /UCR $<
-
-$(MISC)$/$(TARGET)$/types.urd: types.idl
- - $(MKDIR) $(MISC)$/$(TARGET)
- $(IDLC) -O$(MISC)$/$(TARGET) -I$(SOLARIDLDIR) -cid -we $<
-
-
-.ENDIF # "$(ENABLE_UNIT_TESTS)" != "YES"
-
-.END # "$(OOO_SUBSEQUENT_TESTS)" == ""
diff --git a/codemaker/test/javamaker/build.xml b/codemaker/test/javamaker/build.xml
new file mode 100644
index 000000000000..d455f8e6f003
--- /dev/null
+++ b/codemaker/test/javamaker/build.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--***********************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ ***********************************************************-->
+
+
+<project name="codemaker_test" default="main">
+
+ <property file="../../../ant.properties"/>
+ <import file="${SRC_ROOT}/solenv/ant/aoo-ant.xml"/>
+
+ <target name="init-project">
+
+ <path id="main.classpath">
+ <pathelement location="${OUTDIR}/bin/juh.jar"/>
+ <pathelement location="${OUTDIR}/bin/jurt.jar"/>
+ <pathelement location="${OUTDIR}/bin/ridl.jar"/>
+ </path>
+
+ <filelist id="idl.files">
+ <file name="${test.src.dir}/test/codemaker/javamaker/types.idl"/>
+ <file name="${test.src.dir}/test/codemaker/javamaker/java15/types15.idl"/>
+ </filelist>
+
+ </target>
+
+</project>
+
diff --git a/codemaker/test/javamaker/Test.java b/codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/Javamaker_Test.java
similarity index 52%
rename from codemaker/test/javamaker/Test.java
rename to codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/Javamaker_Test.java
index 0c0cdf78f90b..06eb16f75f2e 100644
--- a/codemaker/test/javamaker/Test.java
+++ b/codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/Javamaker_Test.java
@@ -30,8 +30,9 @@ import com.sun.star.uno.DeploymentException;
import com.sun.star.uno.Type;
import com.sun.star.uno.XComponentContext;
import com.sun.star.uno.XNamingService;
-import complexlib.ComplexTestCase;
import java.util.EventListener;
+import org.junit.Before;
+import org.junit.Test;
import test.codemaker.javamaker.Enum1;
import test.codemaker.javamaker.Enum2;
import test.codemaker.javamaker.PolyStruct;
@@ -74,155 +75,156 @@ import test.codemaker.javamaker.services.service_volatile;
import test.codemaker.javamaker.services.service_while;
import test.codemaker.javamaker.singleton_abstract;
-public final class Test extends ComplexTestCase {
- public String[] getTestMethodNames() {
- return new String[] {
- "testEnum1", "testEnum2", "testPolyStruct", "testEmptyStruct2",
- "testFullStruct2", "testXEventListener", "testS1", "testS2",
- "testKeywordServices", "testSingletons" };
- }
+import static org.junit.Assert.*;
+public final class Javamaker_Test {
+ @Before
public void before() throws Exception {
context = Bootstrap.createInitialComponentContext(null);
}
+ @Test
public void testEnum1() {
- assure(Enum1.VALUE1.getValue() == -100);
- assure(Enum1.VALUE2.getValue() == 100);
- assure(Enum1.VALUE1_value == -100);
- assure(Enum1.VALUE2_value == 100);
- assure(Enum1.getDefault() == Enum1.VALUE1);
- assure(Enum1.fromInt(-101) == null);
- assure(Enum1.fromInt(-100) == Enum1.VALUE1);
- assure(Enum1.fromInt(-99) == null);
- assure(Enum1.fromInt(0) == null);
- assure(Enum1.fromInt(99) == null);
- assure(Enum1.fromInt(100) == Enum1.VALUE2);
- assure(Enum1.fromInt(101) == null);
+ assertTrue(Enum1.VALUE1.getValue() == -100);
+ assertTrue(Enum1.VALUE2.getValue() == 100);
+ assertTrue(Enum1.VALUE1_value == -100);
+ assertTrue(Enum1.VALUE2_value == 100);
+ assertTrue(Enum1.getDefault() == Enum1.VALUE1);
+ assertTrue(Enum1.fromInt(-101) == null);
+ assertTrue(Enum1.fromInt(-100) == Enum1.VALUE1);
+ assertTrue(Enum1.fromInt(-99) == null);
+ assertTrue(Enum1.fromInt(0) == null);
+ assertTrue(Enum1.fromInt(99) == null);
+ assertTrue(Enum1.fromInt(100) == Enum1.VALUE2);
+ assertTrue(Enum1.fromInt(101) == null);
}
+ @Test
public void testEnum2() {
- assure(Enum2.VALUE0.getValue() == 0);
- assure(Enum2.VALUE1.getValue() == 1);
- assure(Enum2.VALUE2.getValue() == 2);
- assure(Enum2.VALUE4.getValue() == 4);
- assure(Enum2.VALUE0_value == 0);
- assure(Enum2.VALUE1_value == 1);
- assure(Enum2.VALUE2_value == 2);
- assure(Enum2.VALUE4_value == 4);
- assure(Enum2.getDefault() == Enum2.VALUE0);
- assure(Enum2.fromInt(-1) == null);
- assure(Enum2.fromInt(0) == Enum2.VALUE0);
- assure(Enum2.fromInt(1) == Enum2.VALUE1);
- assure(Enum2.fromInt(2) == Enum2.VALUE2);
- assure(Enum2.fromInt(3) == null);
- assure(Enum2.fromInt(4) == Enum2.VALUE4);
- assure(Enum2.fromInt(5) == null);
+ assertTrue(Enum2.VALUE0.getValue() == 0);
+ assertTrue(Enum2.VALUE1.getValue() == 1);
+ assertTrue(Enum2.VALUE2.getValue() == 2);
+ assertTrue(Enum2.VALUE4.getValue() == 4);
+ assertTrue(Enum2.VALUE0_value == 0);
+ assertTrue(Enum2.VALUE1_value == 1);
+ assertTrue(Enum2.VALUE2_value == 2);
+ assertTrue(Enum2.VALUE4_value == 4);
+ assertTrue(Enum2.getDefault() == Enum2.VALUE0);
+ assertTrue(Enum2.fromInt(-1) == null);
+ assertTrue(Enum2.fromInt(0) == Enum2.VALUE0);
+ assertTrue(Enum2.fromInt(1) == Enum2.VALUE1);
+ assertTrue(Enum2.fromInt(2) == Enum2.VALUE2);
+ assertTrue(Enum2.fromInt(3) == null);
+ assertTrue(Enum2.fromInt(4) == Enum2.VALUE4);
+ assertTrue(Enum2.fromInt(5) == null);
}
+ @Test
public void testPolyStruct() {
PolyStruct s = new PolyStruct();
- assure(s.member1 == null);
- assure(s.member2 == 0);
+ assertTrue(s.member1 == null);
+ assertTrue(s.member2 == 0);
s = new PolyStruct("ABC", 5);
- assure(s.member1.equals("ABC"));
- assure(s.member2 == 5);
+ assertTrue(s.member1.equals("ABC"));
+ assertTrue(s.member2 == 5);
}
+ @Test
public void testEmptyStruct2() {
Struct2 s = new Struct2();
- assure(s.p1 == false);
- assure(s.p2 == 0);
- assure(s.p3 == 0);
- assure(s.p4 == 0);
- assure(s.p5 == 0);
- assure(s.p6 == 0);
- assure(s.p7 == 0L);
- assure(s.p8 == 0L);
- assure(s.p9 == 0.0f);
- assure(s.p10 == 0.0);
- assure(s.p11 == '\u0000');
- assure(s.p12.equals(""));
- assure(s.p13.equals(Type.VOID));
- assure(s.p14.equals(Any.VOID));
- assure(s.p15 == Enum2.VALUE0);
- assure(s.p16.member1 == 0);
- assure(s.p17 == null);
- assure(s.p18 == null);
- assure(s.t1 == false);
- assure(s.t2 == 0);
- assure(s.t3 == 0);
- assure(s.t4 == 0);
- assure(s.t5 == 0);
- assure(s.t6 == 0);
- assure(s.t7 == 0L);
- assure(s.t8 == 0L);
- assure(s.t9 == 0.0f);
- assure(s.t10 == 0.0);
- assure(s.t11 == '\u0000');
- assure(s.t12.equals(""));
- assure(s.t13.equals(Type.VOID));
- assure(s.t14.equals(Any.VOID));
- assure(s.t15 == Enum2.VALUE0);
- assure(s.t16.member1 == 0);
- assure(s.t17 == null);
- assure(s.t18 == null);
- assure(s.a1.length == 0);
- assure(s.a2.length == 0);
- assure(s.a3.length == 0);
- assure(s.a4.length == 0);
- assure(s.a5.length == 0);
- assure(s.a6.length == 0);
- assure(s.a7.length == 0);
- assure(s.a8.length == 0);
- assure(s.a9.length == 0);
- assure(s.a10.length == 0);
- assure(s.a11.length == 0);
- assure(s.a12.length == 0);
- assure(s.a13.length == 0);
- assure(s.a14.length == 0);
- assure(s.a15.length == 0);
- assure(s.a16.length == 0);
- assure(s.a17.length == 0);
- assure(s.a18.length == 0);
- assure(s.aa1.length == 0);
- assure(s.aa2.length == 0);
- assure(s.aa3.length == 0);
- assure(s.aa4.length == 0);
- assure(s.aa5.length == 0);
- assure(s.aa6.length == 0);
- assure(s.aa7.length == 0);
- assure(s.aa8.length == 0);
- assure(s.aa9.length == 0);
- assure(s.aa10.length == 0);
- assure(s.aa11.length == 0);
- assure(s.aa12.length == 0);
- assure(s.aa13.length == 0);
- assure(s.aa14.length == 0);
- assure(s.aa15.length == 0);
- assure(s.aa16.length == 0);
- assure(s.aa17.length == 0);
- assure(s.aa18.length == 0);
- assure(s.at1.length == 0);
- assure(s.at2.length == 0);
- assure(s.at3.length == 0);
- assure(s.at4.length == 0);
- assure(s.at5.length == 0);
- assure(s.at6.length == 0);
- assure(s.at7.length == 0);
- assure(s.at8.length == 0);
- assure(s.at9.length == 0);
- assure(s.at10.length == 0);
- assure(s.at11.length == 0);
- assure(s.at12.length == 0);
- assure(s.at13.length == 0);
- assure(s.at14.length == 0);
- assure(s.at15.length == 0);
- assure(s.at16.length == 0);
- assure(s.at17.length == 0);
- assure(s.at18.length == 0);
+ assertTrue(s.p1 == false);
+ assertTrue(s.p2 == 0);
+ assertTrue(s.p3 == 0);
+ assertTrue(s.p4 == 0);
+ assertTrue(s.p5 == 0);
+ assertTrue(s.p6 == 0);
+ assertTrue(s.p7 == 0L);
+ assertTrue(s.p8 == 0L);
+ assertTrue(s.p9 == 0.0f);
+ assertTrue(s.p10 == 0.0);
+ assertTrue(s.p11 == '\u0000');
+ assertTrue(s.p12.equals(""));
+ assertTrue(s.p13.equals(Type.VOID));
+ assertTrue(s.p14.equals(Any.VOID));
+ assertTrue(s.p15 == Enum2.VALUE0);
+ assertTrue(s.p16.member1 == 0);
+ assertTrue(s.p17 == null);
+ assertTrue(s.p18 == null);
+ assertTrue(s.t1 == false);
+ assertTrue(s.t2 == 0);
+ assertTrue(s.t3 == 0);
+ assertTrue(s.t4 == 0);
+ assertTrue(s.t5 == 0);
+ assertTrue(s.t6 == 0);
+ assertTrue(s.t7 == 0L);
+ assertTrue(s.t8 == 0L);
+ assertTrue(s.t9 == 0.0f);
+ assertTrue(s.t10 == 0.0);
+ assertTrue(s.t11 == '\u0000');
+ assertTrue(s.t12.equals(""));
+ assertTrue(s.t13.equals(Type.VOID));
+ assertTrue(s.t14.equals(Any.VOID));
+ assertTrue(s.t15 == Enum2.VALUE0);
+ assertTrue(s.t16.member1 == 0);
+ assertTrue(s.t17 == null);
+ assertTrue(s.t18 == null);
+ assertTrue(s.a1.length == 0);
+ assertTrue(s.a2.length == 0);
+ assertTrue(s.a3.length == 0);
+ assertTrue(s.a4.length == 0);
+ assertTrue(s.a5.length == 0);
+ assertTrue(s.a6.length == 0);
+ assertTrue(s.a7.length == 0);
+ assertTrue(s.a8.length == 0);
+ assertTrue(s.a9.length == 0);
+ assertTrue(s.a10.length == 0);
+ assertTrue(s.a11.length == 0);
+ assertTrue(s.a12.length == 0);
+ assertTrue(s.a13.length == 0);
+ assertTrue(s.a14.length == 0);
+ assertTrue(s.a15.length == 0);
+ assertTrue(s.a16.length == 0);
+ assertTrue(s.a17.length == 0);
+ assertTrue(s.a18.length == 0);
+ assertTrue(s.aa1.length == 0);
+ assertTrue(s.aa2.length == 0);
+ assertTrue(s.aa3.length == 0);
+ assertTrue(s.aa4.length == 0);
+ assertTrue(s.aa5.length == 0);
+ assertTrue(s.aa6.length == 0);
+ assertTrue(s.aa7.length == 0);
+ assertTrue(s.aa8.length == 0);
+ assertTrue(s.aa9.length == 0);
+ assertTrue(s.aa10.length == 0);
+ assertTrue(s.aa11.length == 0);
+ assertTrue(s.aa12.length == 0);
+ assertTrue(s.aa13.length == 0);
+ assertTrue(s.aa14.length == 0);
+ assertTrue(s.aa15.length == 0);
+ assertTrue(s.aa16.length == 0);
+ assertTrue(s.aa17.length == 0);
+ assertTrue(s.aa18.length == 0);
+ assertTrue(s.at1.length == 0);
+ assertTrue(s.at2.length == 0);
+ assertTrue(s.at3.length == 0);
+ assertTrue(s.at4.length == 0);
+ assertTrue(s.at5.length == 0);
+ assertTrue(s.at6.length == 0);
+ assertTrue(s.at7.length == 0);
+ assertTrue(s.at8.length == 0);
+ assertTrue(s.at9.length == 0);
+ assertTrue(s.at10.length == 0);
+ assertTrue(s.at11.length == 0);
+ assertTrue(s.at12.length == 0);
+ assertTrue(s.at13.length == 0);
+ assertTrue(s.at14.length == 0);
+ assertTrue(s.at15.length == 0);
+ assertTrue(s.at16.length == 0);
+ assertTrue(s.at17.length == 0);
+ assertTrue(s.at18.length == 0);
}
+ @Test
public void testFullStruct2() {
//TODO:
Struct2 s = new Struct2(
@@ -247,125 +249,127 @@ public final class Test extends ComplexTestCase {
new char[0][], new String[0][], new Type[0][], new Object[0][],
new Enum2[0][], new Struct1[0][], new Object[0][],
new XNamingService[0][]);
- assure(s.p1 == true);
- assure(s.p2 == 1);
- assure(s.p3 == 2);
- assure(s.p4 == 3);
- assure(s.p5 == 4);
- assure(s.p6 == 5);
- assure(s.p7 == 6L);
- assure(s.p8 == 7L);
- assure(s.p9 == 0.8f);
- assure(s.p10 == 0.9);
- assure(s.p11 == 'A');
- assure(s.p12.equals("BCD"));
- assure(s.p13.equals(Type.UNSIGNED_HYPER));
- assure(s.p14.equals(new Integer(22)));
- assure(s.p15 == Enum2.VALUE4);
- assure(s.p16.member1 == 1);
- assure(s.p17 == null);
- assure(s.p18 == null);
- assure(s.t1 == false);
- assure(s.t2 == 0);
- assure(s.t3 == 0);
- assure(s.t4 == 0);
- assure(s.t5 == 0);
- assure(s.t6 == 0);
- assure(s.t7 == 0L);
- assure(s.t8 == 0L);
- assure(s.t9 == 0.0f);
- assure(s.t10 == 0.0);
- assure(s.t11 == '\u0000');
- assure(s.t12.equals(""));
- assure(s.t13.equals(Type.VOID));
- assure(s.t14.equals(Any.VOID));
- assure(s.t15 == Enum2.VALUE0);
- assure(s.t16.member1 == 0);
- assure(s.t17 == null);
- assure(s.t18 == null);
- assure(s.a1.length == 2);
- assure(s.a1[0] == false);
- assure(s.a1[1] == true);
- assure(s.a2.length == 2);
- assure(s.a2[0] == 1);
- assure(s.a2[1] == 2);
- assure(s.a3.length == 0);
- assure(s.a4.length == 0);
- assure(s.a5.length == 0);
- assure(s.a6.length == 0);
- assure(s.a7.length == 0);
- assure(s.a8.length == 0);
- assure(s.a9.length == 0);
- assure(s.a10.length == 0);
- assure(s.a11.length == 0);
- assure(s.a12.length == 0);
- assure(s.a13.length == 0);
- assure(s.a14.length == 0);
- assure(s.a15.length == 0);
- assure(s.a16.length == 2);
- assure(s.a16[0].member1 == 1);
- assure(s.a16[1].member1 == 2);
- assure(s.a17.length == 0);
- assure(s.a18.length == 0);
- assure(s.aa1.length == 0);
- assure(s.aa2.length == 0);
- assure(s.aa3.length == 0);
- assure(s.aa4.length == 0);
- assure(s.aa5.length == 0);
- assure(s.aa6.length == 0);
- assure(s.aa7.length == 0);
- assure(s.aa8.length == 0);
- assure(s.aa9.length == 0);
- assure(s.aa10.length == 0);
- assure(s.aa11.length == 0);
- assure(s.aa12.length == 0);
- assure(s.aa13.length == 0);
- assure(s.aa14.length == 0);
- assure(s.aa15.length == 0);
- assure(s.aa16.length == 0);
- assure(s.aa17.length == 0);
- assure(s.aa18.length == 0);
- assure(s.at1.length == 0);
- assure(s.at2.length == 0);
- assure(s.at3.length == 0);
- assure(s.at4.length == 0);
- assure(s.at5.length == 0);
- assure(s.at6.length == 0);
- assure(s.at7.length == 0);
- assure(s.at8.length == 0);
- assure(s.at9.length == 0);
- assure(s.at10.length == 0);
- assure(s.at11.length == 0);
- assure(s.at12.length == 0);
- assure(s.at13.length == 0);
- assure(s.at14.length == 0);
- assure(s.at15.length == 0);
- assure(s.at16.length == 0);
- assure(s.at17.length == 0);
- assure(s.at18.length == 0);
+ assertTrue(s.p1 == true);
+ assertTrue(s.p2 == 1);
+ assertTrue(s.p3 == 2);
+ assertTrue(s.p4 == 3);
+ assertTrue(s.p5 == 4);
+ assertTrue(s.p6 == 5);
+ assertTrue(s.p7 == 6L);
+ assertTrue(s.p8 == 7L);
+ assertTrue(s.p9 == 0.8f);
+ assertTrue(s.p10 == 0.9);
+ assertTrue(s.p11 == 'A');
+ assertTrue(s.p12.equals("BCD"));
+ assertTrue(s.p13.equals(Type.UNSIGNED_HYPER));
+ assertTrue(s.p14.equals(new Integer(22)));
+ assertTrue(s.p15 == Enum2.VALUE4);
+ assertTrue(s.p16.member1 == 1);
+ assertTrue(s.p17 == null);
+ assertTrue(s.p18 == null);
+ assertTrue(s.t1 == false);
+ assertTrue(s.t2 == 0);
+ assertTrue(s.t3 == 0);
+ assertTrue(s.t4 == 0);
+ assertTrue(s.t5 == 0);
+ assertTrue(s.t6 == 0);
+ assertTrue(s.t7 == 0L);
+ assertTrue(s.t8 == 0L);
+ assertTrue(s.t9 == 0.0f);
+ assertTrue(s.t10 == 0.0);
+ assertTrue(s.t11 == '\u0000');
+ assertTrue(s.t12.equals(""));
+ assertTrue(s.t13.equals(Type.VOID));
+ assertTrue(s.t14.equals(Any.VOID));
+ assertTrue(s.t15 == Enum2.VALUE0);
+ assertTrue(s.t16.member1 == 0);
+ assertTrue(s.t17 == null);
+ assertTrue(s.t18 == null);
+ assertTrue(s.a1.length == 2);
+ assertTrue(s.a1[0] == false);
+ assertTrue(s.a1[1] == true);
+ assertTrue(s.a2.length == 2);
+ assertTrue(s.a2[0] == 1);
+ assertTrue(s.a2[1] == 2);
+ assertTrue(s.a3.length == 0);
+ assertTrue(s.a4.length == 0);
+ assertTrue(s.a5.length == 0);
+ assertTrue(s.a6.length == 0);
+ assertTrue(s.a7.length == 0);
+ assertTrue(s.a8.length == 0);
+ assertTrue(s.a9.length == 0);
+ assertTrue(s.a10.length == 0);
+ assertTrue(s.a11.length == 0);
+ assertTrue(s.a12.length == 0);
+ assertTrue(s.a13.length == 0);
+ assertTrue(s.a14.length == 0);
+ assertTrue(s.a15.length == 0);
+ assertTrue(s.a16.length == 2);
+ assertTrue(s.a16[0].member1 == 1);
+ assertTrue(s.a16[1].member1 == 2);
+ assertTrue(s.a17.length == 0);
+ assertTrue(s.a18.length == 0);
+ assertTrue(s.aa1.length == 0);
+ assertTrue(s.aa2.length == 0);
+ assertTrue(s.aa3.length == 0);
+ assertTrue(s.aa4.length == 0);
+ assertTrue(s.aa5.length == 0);
+ assertTrue(s.aa6.length == 0);
+ assertTrue(s.aa7.length == 0);
+ assertTrue(s.aa8.length == 0);
+ assertTrue(s.aa9.length == 0);
+ assertTrue(s.aa10.length == 0);
+ assertTrue(s.aa11.length == 0);
+ assertTrue(s.aa12.length == 0);
+ assertTrue(s.aa13.length == 0);
+ assertTrue(s.aa14.length == 0);
+ assertTrue(s.aa15.length == 0);
+ assertTrue(s.aa16.length == 0);
+ assertTrue(s.aa17.length == 0);
+ assertTrue(s.aa18.length == 0);
+ assertTrue(s.at1.length == 0);
+ assertTrue(s.at2.length == 0);
+ assertTrue(s.at3.length == 0);
+ assertTrue(s.at4.length == 0);
+ assertTrue(s.at5.length == 0);
+ assertTrue(s.at6.length == 0);
+ assertTrue(s.at7.length == 0);
+ assertTrue(s.at8.length == 0);
+ assertTrue(s.at9.length == 0);
+ assertTrue(s.at10.length == 0);
+ assertTrue(s.at11.length == 0);
+ assertTrue(s.at12.length == 0);
+ assertTrue(s.at13.length == 0);
+ assertTrue(s.at14.length == 0);
+ assertTrue(s.at15.length == 0);
+ assertTrue(s.at16.length == 0);
+ assertTrue(s.at17.length == 0);
+ assertTrue(s.at18.length == 0);
}
+ @Test
public void testXEventListener() {
- assure(EventListener.class.isAssignableFrom(XEventListener.class));
+ assertTrue(EventListener.class.isAssignableFrom(XEventListener.class));
}
+ @Test
public void testS1() throws com.sun.star.uno.Exception {
//TODO:
try {
S1.create1(context);
- failed("S1.create1");
+ fail("S1.create1");
} catch (DeploymentException e) {}
try {
S1.create2(context, new Any[0]);
- failed("S1.create2");
+ fail("S1.create2");
} catch (com.sun.star.uno.Exception e) {}
try {
S1.create3(context, new Any[0]);
- failed("S1.create3");
+ fail("S1.create3");
} catch (DeploymentException e) {}
try {
S1.create4(context, 0, 0, 0);
- failed("S1.create4");
+ fail("S1.create4");
} catch (DeploymentException e) {}
try {
S1.create5(
@@ -389,165 +393,168 @@ public final class Test extends ComplexTestCase {
new char[0][], new String[0][], new Type[0][], new Object[0][],
new Enum2[0][], new Struct1[0][], new Object[0][],
new XNamingService[0][]);
- failed("S1.create4");
+ fail("S1.create4");
} catch (DeploymentException e) {}
}
+ @Test
public void testS2() {
//TODO
}
+ @Test
public void testKeywordServices() {
try {
service_abstract.method_abstract(context, 0);
- failed("service_abstract.method_abstract");
+ fail("service_abstract.method_abstract");
} catch (DeploymentException e) {}
try {
service_assert.method_assert(context, 0);
- failed("service_assert.method_assert");
+ fail("service_assert.method_assert");
} catch (DeploymentException e) {}
try {
service_break.method_break(context, 0);
- failed("service_break.method_break");
+ fail("service_break.method_break");
} catch (DeploymentException e) {}
try {
service_catch.method_catch(context, 0);
- failed("service_catch.method_catch");
+ fail("service_catch.method_catch");
} catch (DeploymentException e) {}
try {
service_class.method_class(context, 0);
- failed("service_class.method_class");
+ fail("service_class.method_class");
} catch (DeploymentException e) {}
try {
service_continue.method_continue(context, 0);
- failed("service_continue.method_continue");
+ fail("service_continue.method_continue");
} catch (DeploymentException e) {}
try {
service_do.method_do(context, 0);
- failed("service_do.method_do");
+ fail("service_do.method_do");
} catch (DeploymentException e) {}
try {
service_else.method_else(context, 0);
- failed("service_else.method_else");
+ fail("service_else.method_else");
} catch (DeploymentException e) {}
try {
service_extends.method_extends(context, 0);
- failed("service_extends.method_extends");
+ fail("service_extends.method_extends");
} catch (DeploymentException e) {}
try {
service_final.method_final(context, 0);
- failed("service_final.method_final");
+ fail("service_final.method_final");
} catch (DeploymentException e) {}
try {
service_finally.method_finally(context, 0);
- failed("service_finally.method_finally");
+ fail("service_finally.method_finally");
} catch (DeploymentException e) {}
try {
service_for.method_for(context, 0);
- failed("service_for.method_for");
+ fail("service_for.method_for");
} catch (DeploymentException e) {}
try {
service_goto.method_goto(context, 0);
- failed("service_goto.method_goto");
+ fail("service_goto.method_goto");
} catch (DeploymentException e) {}
try {
service_if.method_if(context, 0);
- failed("service_if.method_if");
+ fail("service_if.method_if");
} catch (DeploymentException e) {}
try {
service_implements.method_implements(context, 0);
- failed("service_implements.method_implements");
+ fail("service_implements.method_implements");
} catch (DeploymentException e) {}
try {
service_import.method_import(context, 0);
- failed("service_import.method_import");
+ fail("service_import.method_import");
} catch (DeploymentException e) {}
try {
service_instanceof.method_instanceof(context, 0);
- failed("service_instanceof.method_instanceof");
+ fail("service_instanceof.method_instanceof");
} catch (DeploymentException e) {}
try {
service_int.method_int(context, 0);
- failed("service_int.method_int");
+ fail("service_int.method_int");
} catch (DeploymentException e) {}
try {
service_native.method_native(context, 0);
- failed("service_native.method_native");
+ fail("service_native.method_native");
} catch (DeploymentException e) {}
try {
service_new.method_new(context, 0);
- failed("service_new.method_new");
+ fail("service_new.method_new");
} catch (DeploymentException e) {}
try {
service_package.method_package(context, 0);
- failed("service_package.method_package");
+ fail("service_package.method_package");
} catch (DeploymentException e) {}
try {
service_private.method_private(context, 0);
- failed("service_private.method_private");
+ fail("service_private.method_private");
} catch (DeploymentException e) {}
try {
service_protected.method_protected(context, 0);
- failed("service_protected.method_protected");
+ fail("service_protected.method_protected");
} catch (DeploymentException e) {}
try {
service_public.method_public(context, 0);
- failed("service_public.method_public");
+ fail("service_public.method_public");
} catch (DeploymentException e) {}
try {
service_return.method_return(context, 0);
- failed("service_return.method_return");
+ fail("service_return.method_return");
} catch (DeploymentException e) {}
try {
service_static.method_static(context, 0);
- failed("service_static.method_static");
+ fail("service_static.method_static");
} catch (DeploymentException e) {}
try {
service_strictfp.method_strictfp(context, 0);
- failed("service_strictfp.method_strictfp");
+ fail("service_strictfp.method_strictfp");
} catch (DeploymentException e) {}
try {
service_super.method_super(context, 0);
- failed("service_super.method_super");
+ fail("service_super.method_super");
} catch (DeploymentException e) {}
try {
service_synchronized.method_synchronized(context, 0);
- failed("service_synchronized.method_synchronized");
+ fail("service_synchronized.method_synchronized");
} catch (DeploymentException e) {}
try {
service_this.method_this(context, 0);
- failed("service_this.method_this");
+ fail("service_this.method_this");
} catch (DeploymentException e) {}
try {
service_throw.method_throw(context, 0);
- failed("service_throw.method_throw");
+ fail("service_throw.method_throw");
} catch (DeploymentException e) {}
try {
service_throws.method_throws(context, 0);
- failed("service_throws.method_throws");
+ fail("service_throws.method_throws");
} catch (DeploymentException e) {}
try {
service_try.method_try(context, 0);
- failed("service_try.method_try");
+ fail("service_try.method_try");
} catch (DeploymentException e) {}
try {
service_volatile.method_volatile(context, 0);
- failed("service_volatile.method_volatile");
+ fail("service_volatile.method_volatile");
} catch (DeploymentException e) {}
try {
service_while.method_while(context, 0);
- failed("service_while.method_while");
+ fail("service_while.method_while");
} catch (DeploymentException e) {}
}
+ @Test
public void testSingletons() {
try {
S4.get(context);
- failed("S4");
+ fail("S4");
} catch (DeploymentException e) {}
try {
singleton_abstract.get(context);
- failed("singleton_abstract");
+ fail("singleton_abstract");
} catch (DeploymentException e) {}
}
diff --git a/codemaker/test/javamaker/java15/Test.java b/codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/java15/Java15Javamaker_Test.java
similarity index 74%
rename from codemaker/test/javamaker/java15/Test.java
rename to codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/java15/Java15Javamaker_Test.java
index b0133dcbccc9..00e32290398f 100644
--- a/codemaker/test/javamaker/java15/Test.java
+++ b/codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/java15/Java15Javamaker_Test.java
@@ -26,47 +26,47 @@ package test.codemaker.javamaker.java15;
import com.sun.star.lang.XMultiComponentFactory;
import com.sun.star.uno.DeploymentException;
import com.sun.star.uno.XComponentContext;
-import complexlib.ComplexTestCase;
+import org.junit.Test;
-public final class Test extends ComplexTestCase {
- public String[] getTestMethodNames() {
- return new String[] {
- "testPlainPolyStruct", "testBooleanPolyStruct", "testStruct",
- "testService" };
- }
+import static org.junit.Assert.*;
+public final class Java15Javamaker_Test {
+ @Test
public void testPlainPolyStruct() {
PolyStruct s = new PolyStruct();
- assure(s.member1 == null);
- assure(s.member2 == 0);
+ assertTrue(s.member1 == null);
+ assertTrue(s.member2 == 0);
s = new PolyStruct("ABC", 5);
- assure(s.member1.equals("ABC"));
- assure(s.member2 == 5);
+ assertTrue(s.member1.equals("ABC"));
+ assertTrue(s.member2 == 5);
}
+ @Test
public void testBooleanPolyStruct() {
PolyStruct<Boolean,Object> s = new PolyStruct<Boolean,Object>();
- assure(s.member1 == null);
- assure(s.member2 == 0);
+ assertTrue(s.member1 == null);
+ assertTrue(s.member2 == 0);
s = new PolyStruct<Boolean,Object>(true, 5);
- assure(s.member1 == true);
- assure(s.member2 == 5);
+ assertTrue(s.member1 == true);
+ assertTrue(s.member2 == 5);
}
+ @Test
public void testStruct() {
Struct s = new Struct();
- assure(s.member.member1 == null);
- assure(s.member.member2 == 0);
+ assertTrue(s.member.member1 == null);
+ assertTrue(s.member.member2 == 0);
s = new Struct(
new PolyStruct<PolyStruct<boolean[], Object>, Integer>(
new PolyStruct<boolean[], Object>(new boolean[] { true }, 3),
4));
- assure(s.member.member1.member1.length == 1);
- assure(s.member.member1.member1[0] == true);
- assure(s.member.member1.member2 == 3);
- assure(s.member.member2 == 4);
+ assertTrue(s.member.member1.member1.length == 1);
+ assertTrue(s.member.member1.member1[0] == true);
+ assertTrue(s.member.member1.member2 == 3);
+ assertTrue(s.member.member2 == 4);
}
+ @Test
public void testService() {
XComponentContext context = new XComponentContext() {
public Object getValueByName(String name) {
@@ -79,12 +79,12 @@ public final class Test extends ComplexTestCase {
};
try {
Service.create(context);
- failed();
+ fail();
} catch (DeploymentException e) {}
try {
Service.create(
context, false, (byte) 1, (short) 2, Integer.valueOf(4));
- failed();
+ fail();
} catch (DeploymentException e) {}
}
diff --git a/codemaker/test/javamaker/java15/makefile.mk b/codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/java15/makefile.mk
similarity index 100%
rename from codemaker/test/javamaker/java15/makefile.mk
rename to codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/java15/makefile.mk
diff --git a/codemaker/test/javamaker/java15/types.idl b/codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/java15/types.idl
similarity index 100%
rename from codemaker/test/javamaker/java15/types.idl
rename to codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/java15/types.idl
diff --git a/codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/java15/types15.idl b/codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/java15/types15.idl
new file mode 100644
index 000000000000..4271e121b259
--- /dev/null
+++ b/codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/java15/types15.idl
@@ -0,0 +1,46 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+#include "com/sun/star/uno/XInterface.idl"
+
+module test { module codemaker { module javamaker { module java15 {
+
+struct PolyStruct<if,else> {
+ if member1;
+ long member2;
+};
+
+struct Struct {
+ PolyStruct<PolyStruct<sequence<boolean>,any>,long> member;
+};
+
+service Service: com::sun::star::uno::XInterface {
+ create([in] any... args);
+};
+
+interface XIfc {
+ void f1([in] PolyStruct<long, long> arg);
+ void f2([in] PolyStruct<any, com::sun::star::uno::XInterface> arg);
+};
+
+}; }; }; };
diff --git a/codemaker/test/javamaker/types.idl b/codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/types.idl
similarity index 100%
rename from codemaker/test/javamaker/types.idl
rename to codemaker/test/javamaker/src/test/java/test/codemaker/javamaker/types.idl
diff --git a/solenv/ant/idl.xml b/solenv/ant/idl.xml
index 12f6d56b2d56..24174332d01c 100644
--- a/solenv/ant/idl.xml
+++ b/solenv/ant/idl.xml
@@ -41,6 +41,12 @@
<build-idl unless:set="idl.uptodate"/>
</target>
+ <target name="unoprivateapi-cppumaker">
+ <property name="idl.cppumaker.flag" location="${unoprivateapi.outdir}/idl.cppumaker.flag"/>
+ <check-idl-cppumaker/>
+ <build-idl-cppumaker unless:set="idl.cppumaker.uptodate"/>
+ </target>
+
<macrodef name="check-idl">
<sequential>
<local name="idl.files.exist"/>
@@ -48,21 +54,35 @@
<resourcecount refid="idl.files" when="greater" count="0"/>
</condition>
- <local name="idl.files.union"/>
- <union id="idl.files.union" if:set="idl.files.exist">
- <filelist refid="idl.files"/>
- </union>
<uptodate property="idl.uptodate" targetfile="${idl.javamaker.flag}" if:set="idl.files.exist">
- <srcresources refid="idl.files.union"/>
+ <srcresources>
+ <resources refid="idl.files"/>
+ </srcresources>
</uptodate>
<property name="idl.uptodate" value="true" unless:set="idl.files.exist"/>
</sequential>
</macrodef>
+ <macrodef name="check-idl-cppumaker">
+ <sequential>
+ <uptodate property="idl.cppumaker.uptodate" targetfile="${idl.cppumaker.flag}">
+ <srcresources>
+ <file name="${unoprivateapi.idl}"/>
+ </srcresources>
+ </uptodate>
+ </sequential>
+ </macrodef>
+
<macrodef name="build-idl">
<sequential>
- <idlc/>
- <regmerge/>
+ <idlc urdDirectory="${idl.urd.build.dir}">
+ <idlFiles>
+ <resources refid="idl.files"/>
+ </idlFiles>
+ </idlc>
+ <regmerge
+ urdDirectory="${idl.urd.build.dir}"
+ rdbDirectory="${idl.rdb.build.dir}"/>
<javamaker
inputRdb="${idl.rdb.build.dir}/registry.rdb"
outputDirectory="${idl.classes.build.dir}"
@@ -72,33 +92,56 @@
</sequential>
</macrodef>
+ <macrodef name="build-idl-cppumaker">
+ <sequential>
+ <idlc urdDirectory="${unoprivateapi.outdir}/urd">
+ <idlFiles>
+ <file name="${unoprivateapi.idl}"/>
+ </idlFiles>
+ </idlc>
+ <regmerge
+ urdDirectory="${unoprivateapi.outdir}/urd"
+ rdbDirectory="${unoprivateapi.outdir}/rdb"/>
+ <cppumaker
+ inputRdb="${unoprivateapi.outdir}/rdb/registry.rdb"
+ outputDirectory="${unoprivateapi.outdir}/inc"/>
+ <touch file="${idl.cppumaker.flag}"/>
+ </sequential>
+ </macrodef>
+
<macrodef name="idlc">
+ <element name="idlFiles"/>
+ <attribute name="urdDirectory"/>
<sequential>
- <mkdir dir="${idl.urd.build.dir}"/>
+ <mkdir dir="@{urdDirectory}"/>
<apply executable="${OUTDIR}/bin/idlc" failonerror="true">
<env key="LD_LIBRARY_PATH" value="${OUTDIR}/lib"/>
<env key="DYLD_LIBRARY_PATH" value="${OUTDIR}/lib"/>
<arg value="-I${OUTDIR}/idl"/>
<arg value="-O"/>
- <arg value="${idl.urd.build.dir}"/>
+ <arg value="@{urdDirectory}"/>
<arg value="-verbose"/>
<arg value="-cid"/>
<arg value="-we"/>
- <filelist refid="idl.files"/>
+ <resources>
+ <idlFiles/>
+ </resources>
</apply>
</sequential>
</macrodef>
<macrodef name="regmerge">
+ <attribute name="urdDirectory"/>
+ <attribute name="rdbDirectory"/>
<sequential>
- <mkdir dir="${idl.rdb.build.dir}"/>
- <delete file="${idl.rdb.build.dir}/registry.rdb"/>
+ <mkdir dir="@{rdbDirectory}"/>
+ <delete file="@{rdbDirectory}/registry.rdb"/>
<apply executable="${OUTDIR}/bin/regmerge" failonerror="true">
<env key="LD_LIBRARY_PATH" value="${OUTDIR}/lib"/>
<env key="DYLD_LIBRARY_PATH" value="${OUTDIR}/lib"/>
- <arg value="${idl.rdb.build.dir}/registry.rdb"/>
+ <arg value="@{rdbDirectory}/registry.rdb"/>
<arg value="/UCR"/>
- <fileset dir="${idl.urd.build.dir}" includes="**/*.urd"/>
+ <fileset dir="@{urdDirectory}" includes="**/*.urd"/>
</apply>
</sequential>
</macrodef>
@@ -123,5 +166,22 @@
</exec>
</sequential>
</macrodef>
+
+ <macrodef name="cppumaker">
+ <attribute name="inputRdb"/>
+ <attribute name="outputDirectory"/>
+ <sequential>
+ <mkdir dir="@{outputDirectory}"/>
+ <exec executable="${OUTDIR}/bin/cppumaker" failonerror="true">
+ <env key="LD_LIBRARY_PATH" value="${OUTDIR}/lib"/>
+ <env key="DYLD_LIBRARY_PATH" value="${OUTDIR}/lib"/>
+ <arg value="-O@{outputDirectory}"/>
+ <arg value="-BUCR"/>
+ <arg value="-C"/>
+ <arg value="@{inputRdb}"/>
+ <arg value="${OUTDIR}/bin/udkapi.rdb"/>
+ </exec>
+ </sequential>
+ </macrodef>
</project>
diff --git a/solenv/gbuild/Executable.mk b/solenv/gbuild/Executable.mk
index 99660bb2d153..a276625a492f 100644
--- a/solenv/gbuild/Executable.mk
+++ b/solenv/gbuild/Executable.mk
@@ -89,6 +89,7 @@ $(eval $(foreach method,\
add_libs \
set_library_path_flags \
add_api \
+ set_private_api \
add_linked_libs \
add_linked_static_libs \
use_external \
diff --git a/solenv/gbuild/GoogleTest.mk b/solenv/gbuild/GoogleTest.mk
index 8166d0f48321..c93c311c57e4 100644
--- a/solenv/gbuild/GoogleTest.mk
+++ b/solenv/gbuild/GoogleTest.mk
@@ -97,6 +97,7 @@ $(eval $(foreach method,\
add_libs \
set_library_path_flags \
add_api \
+ set_private_api \
add_linked_libs \
add_linked_static_libs \
use_external \
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index f18373948d68..108b94dfd68c 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -533,6 +533,44 @@ endif
endef
+define gb_LinkTarget_add_private_api
+$(call gb_LinkTarget_get_external_headers_target,$(1)) :| \
+ $(call gb_UnoPrivateApiTarget_get_target,$(1)/idl.cppumaker.flag)
+$(call gb_LinkTarget_get_headers_target,$(1)) \
+$(call gb_LinkTarget_get_target,$(1)) : INCLUDE += -I$(call gb_UnoPrivateApiTarget_get_target,$(1)/inc)
+ifeq ($(gb_FULLDEPS),$(true))
+$(call gb_LinkTarget_get_dep_target,$(1)) : INCLUDE += -I$(call gb_UnoPrivateApiTarget_get_target,$(1)/inc)
+endif
+
+$(call gb_UnoPrivateApiTarget_get_target,$(1)/idl.cppumaker.flag): $(2)
+ $(call gb_Output_announce,$@,$(true),PVTIDL,2)
+ -$$(call gb_Helper_abbreviate_dirs,\
+ mkdir -p $$(call gb_UnoPrivateApiTarget_get_target,$(1)/urd) && \
+ mkdir -p $$(call gb_UnoPrivateApiTarget_get_target,$(1)/rdb) && \
+ mkdir -p $$(call gb_UnoPrivateApiTarget_get_target,$(1)/inc) && \
+ $$(gb_UnoApiTarget_IDLCCOMMAND) -I$$(OUTDIR)/idl -O $$(call gb_UnoPrivateApiTarget_get_target,$(1)/urd) \
+ -verbose -cid -we $(2) && \
+ $$(gb_UnoApiTarget_REGMERGECOMMAND) $$(call gb_UnoPrivateApiTarget_get_target,$(1)/rdb/registry.rdb) /UCR \
+ $(patsubst %.idl,%.urd,$$(call gb_UnoPrivateApiTarget_get_target,$(1)/urd)/$(notdir $(2))) && \
+ $(gb_UnoApiTarget_CPPUMAKERCOMMAND) \
+ -O $$(call gb_UnoPrivateApiTarget_get_target,$(1)/inc) \
+ -BUCR \
+ -C \
+ $$(call gb_UnoPrivateApiTarget_get_target,$(1)/rdb/registry.rdb) \
+ $$(OUTDIR)/bin/udkapi.rdb && \
+ touch $(call gb_UnoPrivateApiTarget_get_target,$(1)/idl.cppumaker.flag))
+
+$(call gb_LinkTarget_get_clean_target,$(1)) :
+ rm -rf $(call gb_UnoPrivateApiTarget_get_target,$(1))
+
+endef
+
+# FIXME: multiple??
+define gb_LinkTarget_set_private_api
+$(foreach api,$(2),$(call gb_LinkTarget_add_private_api,$(1),$(api)))
+
+endef
+
define gb_LinkTarget_add_libs
$(call gb_LinkTarget_get_target,$(1)) : LIBS += $(2)
endef
diff --git a/solenv/gbuild/TargetLocations.mk b/solenv/gbuild/TargetLocations.mk
index 8ec415f0597a..c46d8fe82c75 100644
--- a/solenv/gbuild/TargetLocations.mk
+++ b/solenv/gbuild/TargetLocations.mk
@@ -72,6 +72,7 @@ gb_UnoApiTarget_get_target = $(WORKDIR)/UnoApiTarget/$(1).rdb
gb_UnoApiOutTarget_get_target = $(OUTDIR)/bin/$(1).rdb
gb_UnoApiPartTarget_get_target = $(WORKDIR)/UnoApiPartTarget/$(1)
gb_UnoApiTarget_get_header_target = $(WORKDIR)/UnoApiHeaders/$(1)
+gb_UnoPrivateApiTarget_get_target = $(WORKDIR)/UnoPrivateApi/$(1)
gb_Module_get_check_target = $(WORKDIR)/Module/check/$(1)
gb_Module_get_subsequentcheck_target = $(WORKDIR)/Module/subsequentcheck/$(1)
gb_Module_get_target = $(WORKDIR)/Module/$(1)
More information about the Libreoffice-commits
mailing list