1#**************************************************************
2#
3#  Licensed to the Apache Software Foundation (ASF) under one
4#  or more contributor license agreements.  See the NOTICE file
5#  distributed with this work for additional information
6#  regarding copyright ownership.  The ASF licenses this file
7#  to you under the Apache License, Version 2.0 (the
8#  "License"); you may not use this file except in compliance
9#  with the License.  You may obtain a copy of the License at
10#
11#    http://www.apache.org/licenses/LICENSE-2.0
12#
13#  Unless required by applicable law or agreed to in writing,
14#  software distributed under the License is distributed on an
15#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16#  KIND, either express or implied.  See the License for the
17#  specific language governing permissions and limitations
18#  under the License.
19#
20#**************************************************************
21
22
23
24.IF "$(OOO_SUBSEQUENT_TESTS)" == ""
25nothing .PHONY:
26.ELSE
27
28.IF "$(ENABLE_UNIT_TESTS)" != "YES"
29all:
30	@echo unit tests are disabled. Nothing to do.
31
32.ELSE
33
34PRJ := ../..
35PRJNAME := cppuhelper
36
37TARGET := qa_propertysetmixin
38PACKAGE = test/cppuhelper/propertysetmixin/comp
39
40ENABLE_EXCEPTIONS := TRUE
41
42my_components = $(TARGET).cpp $(TARGET).java
43
44.INCLUDE: settings.mk
45
46.IF "$(OS)" == "WNT"
47my_file = file:///
48.ELSE
49my_file = file://
50.END
51
52DLLPRE = # no leading "lib" on .so files
53INCPRE += -I$(MISC)/$(TARGET)/inc
54
55APP1TARGET = $(TARGET)
56APP1OBJS = $(SLO)/test_propertysetmixin.obj
57APP1STDLIBS = $(CPPULIB) $(CPPUHELPERLIB) $(GTESTLIB) $(SALLIB)
58APP1RPATH = NONE
59# this is a custom test, can't use APP1TARGET_run so disable it here:
60APP1TEST = disabled
61
62SHL2TARGET = $(TARGET).uno
63SHL2OBJS = $(SLO)/comp_propertysetmixin.obj
64SHL2VERSIONMAP = $(SOLARENV)/src/component.map
65SHL2STDLIBS = $(CPPULIB) $(CPPUHELPERLIB) $(SALLIB)
66SHL2IMPLIB = i$(SHL2TARGET)
67SH21RPATH = NONE
68DEF2NAME = $(SHL2TARGET)
69
70SLOFILES = $(APP1OBJS) $(SHL2OBJS)
71
72JAVAFILES = JavaSupplier.java
73JARFILES = java_uno.jar juh.jar jurt.jar ridl.jar
74
75
76ALLTAR: test
77
78.INCLUDE: target.mk
79
80$(MISC)/$(TARGET)/types.urd: types.idl
81    $(MKDIRHIER) $(@:d)
82    $(IDLC) -O$(@:d) -I$(SOLARIDLDIR) -cid -we $<
83
84$(MISC)/$(TARGET)/types.rdb: $(MISC)/$(TARGET)/types.urd
85    - $(RM) $@
86    $(REGMERGE) $@ /UCR $<
87
88$(MISC)/$(TARGET)/cppumaker.flag: $(MISC)/$(TARGET)/types.rdb
89    $(CPPUMAKER) -O$(MISC)/$(TARGET)/inc -BUCR -Gc \
90        -X$(SOLARBINDIR)/udkapi.rdb $<
91    $(TOUCH) $@
92
93$(SLOFILES): $(MISC)/$(TARGET)/cppumaker.flag
94
95$(MISC)/$(TARGET)/javamaker.flag: $(MISC)/$(TARGET)/types.rdb
96    $(JAVAMAKER) -O$(CLASSDIR) -BUCR -nD -Gc -X$(SOLARBINDIR)/udkapi.rdb $<
97    $(TOUCH) $@
98
99$(JAVATARGET): $(MISC)/$(TARGET)/javamaker.flag
100
101$(MISC)/$(TARGET)/services.rdb .ERRREMOVE: $(SOLARENV)/bin/packcomponents.xslt \
102        $(MISC)/$(TARGET)/services.input \
103        $(my_components:^"$(MISC)/$(TARGET)/":+".component")
104    $(XSLTPROC) --nonet --stringparam prefix $(PWD)/$(MISC)/$(TARGET)/ -o $@ \
105        $(SOLARENV)/bin/packcomponents.xslt $(MISC)/$(TARGET)/services.input
106
107$(MISC)/$(TARGET)/services.input:
108    $(MKDIRHIER) $(@:d)
109    echo \
110        '<list>$(my_components:^"<filename>":+".component</filename>")</list>' \
111        > $@
112
113$(MISC)/$(TARGET)/$(TARGET).cpp.component .ERRREMOVE: \
114        $(SOLARENV)/bin/createcomponent.xslt $(TARGET).cpp.component
115    $(XSLTPROC) --nonet --stringparam uri \
116        '$(COMPONENTPREFIX_INBUILD_NATIVE)$(SHL2TARGETN:f)' -o $@ \
117        $(SOLARENV)/bin/createcomponent.xslt $(TARGET).cpp.component
118
119$(MISC)/$(TARGET)/$(TARGET).java.component .ERRREMOVE: \
120        $(SOLARENV)/bin/createcomponent.xslt $(TARGET).java.component
121    $(XSLTPROC) --nonet --stringparam uri \
122        '$(COMPONENTPREFIX_INBUILD_JAVA)$(TARGET).uno.jar' -o $@ \
123        $(SOLARENV)/bin/createcomponent.xslt $(TARGET).java.component
124
125$(MISC)/$(TARGET)/$(TARGET).uno.jar: $(JAVATARGET) \
126        $(MISC)/$(TARGET)/javamaker.flag manifest
127    jar cfm $@ manifest -C $(CLASSDIR) test/cppuhelper/propertysetmixin
128
129
130test .PHONY: $(APP1TARGETN) $(SHL2TARGETN) $(MISC)/$(TARGET)/$(TARGET).uno.jar \
131        $(MISC)/$(TARGET)/types.rdb $(MISC)/$(TARGET)/services.rdb
132        $(COMMAND_ECHO) $(AUGMENT_LIBRARY_PATH_LOCAL) \
133        UNO_TYPES='$(my_file)$(SOLARBINDIR)/udkapi.rdb $(my_file)$(PWD)/$(MISC)/$(TARGET)/types.rdb' \
134        UNO_SERVICES='$(my_file)$(SOLARXMLDIR)/ure/services.rdb $(my_file)$(PWD)/$(MISC)/$(TARGET)/services.rdb'\
135        URE_INTERNAL_LIB_DIR=$(my_file)$(SOLARSHAREDBIN) \
136        URE_INTERNAL_JAVA_DIR=$(my_file)$(SOLARBINDIR) \
137        OOO_INBUILD_SHAREDLIB_DIR=$(my_file)$(PWD)/$(DLLDEST) \
138        OOO_INBUILD_JAR_DIR=$(my_file)$(PWD)/$(MISC)/$(TARGET) \
139        $(APP1TARGETN) --gtest_output="xml:$(BIN)/$(APP1TARGET)_result.xml"
140
141
142.ENDIF # "$(ENABLE_UNIT_TESTS)" != "YES"
143
144.ENDIF # "$(OOO_SUBSEQUENT_TESTS)" == ""
145