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
28PRJ := ../..
29PRJNAME := cppuhelper
30
31TARGET := qa_propertysetmixin
32PACKAGE = test/cppuhelper/propertysetmixin/comp
33
34ENABLE_EXCEPTIONS := TRUE
35
36my_components = $(TARGET).cpp $(TARGET).java
37
38.INCLUDE: settings.mk
39
40.IF "$(OS)" == "WNT"
41my_file = file:///
42.ELSE
43my_file = file://
44.END
45
46DLLPRE = # no leading "lib" on .so files
47INCPRE += -I$(MISC)/$(TARGET)/inc
48CFLAGSCXX += $(CPPUNIT_CFLAGS)
49
50SHL1TARGET = $(TARGET)
51SHL1OBJS = $(SLO)/test_propertysetmixin.obj
52SHL1VERSIONMAP = test.map
53SHL1STDLIBS = $(CPPULIB) $(CPPUHELPERLIB) $(CPPUNITLIB) $(SALLIB)
54SHL1IMPLIB = i$(SHL1TARGET)
55SHL1RPATH = NONE
56DEF1NAME = $(SHL1TARGET)
57
58SHL2TARGET = $(TARGET).uno
59SHL2OBJS = $(SLO)/comp_propertysetmixin.obj
60SHL2VERSIONMAP = $(SOLARENV)/src/component.map
61SHL2STDLIBS = $(CPPULIB) $(CPPUHELPERLIB) $(SALLIB)
62SHL2IMPLIB = i$(SHL2TARGET)
63SH21RPATH = NONE
64DEF2NAME = $(SHL2TARGET)
65
66SLOFILES = $(SHL1OBJS) $(SHL2OBJS)
67
68JAVAFILES = JavaSupplier.java
69JARFILES = java_uno.jar juh.jar jurt.jar ridl.jar
70
71.INCLUDE: target.mk
72
73ALLTAR: test
74
75$(MISC)/$(TARGET)/types.urd: types.idl
76    $(MKDIRHIER) $(@:d)
77    $(IDLC) -O$(@:d) -I$(SOLARIDLDIR) -cid -we $<
78
79$(MISC)/$(TARGET)/types.rdb: $(MISC)/$(TARGET)/types.urd
80    - $(RM) $@
81    $(REGMERGE) $@ /UCR $<
82
83$(MISC)/$(TARGET)/cppumaker.flag: $(MISC)/$(TARGET)/types.rdb
84    $(CPPUMAKER) -O$(MISC)/$(TARGET)/inc -BUCR -Gc \
85        -X$(SOLARBINDIR)/udkapi.rdb $<
86    $(TOUCH) $@
87
88$(SLOFILES): $(MISC)/$(TARGET)/cppumaker.flag
89
90$(MISC)/$(TARGET)/javamaker.flag: $(MISC)/$(TARGET)/types.rdb
91    $(JAVAMAKER) -O$(CLASSDIR) -BUCR -nD -Gc -X$(SOLARBINDIR)/udkapi.rdb $<
92    $(TOUCH) $@
93
94$(JAVATARGET): $(MISC)/$(TARGET)/javamaker.flag
95
96$(MISC)/$(TARGET)/services.rdb .ERRREMOVE: $(SOLARENV)/bin/packcomponents.xslt \
97        $(MISC)/$(TARGET)/services.input \
98        $(my_components:^"$(MISC)/$(TARGET)/":+".component")
99    $(XSLTPROC) --nonet --stringparam prefix $(PWD)/$(MISC)/$(TARGET)/ -o $@ \
100        $(SOLARENV)/bin/packcomponents.xslt $(MISC)/$(TARGET)/services.input
101
102$(MISC)/$(TARGET)/services.input:
103    $(MKDIRHIER) $(@:d)
104    echo \
105        '<list>$(my_components:^"<filename>":+".component</filename>")</list>' \
106        > $@
107
108$(MISC)/$(TARGET)/$(TARGET).cpp.component .ERRREMOVE: \
109        $(SOLARENV)/bin/createcomponent.xslt $(TARGET).cpp.component
110    $(XSLTPROC) --nonet --stringparam uri \
111        '$(COMPONENTPREFIX_INBUILD_NATIVE)$(SHL2TARGETN:f)' -o $@ \
112        $(SOLARENV)/bin/createcomponent.xslt $(TARGET).cpp.component
113
114$(MISC)/$(TARGET)/$(TARGET).java.component .ERRREMOVE: \
115        $(SOLARENV)/bin/createcomponent.xslt $(TARGET).java.component
116    $(XSLTPROC) --nonet --stringparam uri \
117        '$(COMPONENTPREFIX_INBUILD_JAVA)$(TARGET).uno.jar' -o $@ \
118        $(SOLARENV)/bin/createcomponent.xslt $(TARGET).java.component
119
120$(MISC)/$(TARGET)/$(TARGET).uno.jar: $(JAVATARGET) \
121        $(MISC)/$(TARGET)/javamaker.flag manifest
122    jar cfm $@ manifest -C $(CLASSDIR) test/cppuhelper/propertysetmixin
123
124test .PHONY: $(SHL1TARGETN) $(SHL2TARGETN) $(MISC)/$(TARGET)/$(TARGET).uno.jar \
125        $(MISC)/$(TARGET)/types.rdb $(MISC)/$(TARGET)/services.rdb
126    $(CPPUNITTESTER) $(SHL1TARGETN) \
127        '-env:UNO_TYPES=$(my_file)$(SOLARBINDIR)/udkapi.rdb $(my_file)$(PWD)/$(MISC)/$(TARGET)/types.rdb' \
128        '-env:UNO_SERVICES=$(my_file)$(SOLARXMLDIR)/ure/services.rdb $(my_file)$(PWD)/$(MISC)/$(TARGET)/services.rdb'\
129        -env:URE_INTERNAL_LIB_DIR=$(my_file)$(SOLARSHAREDBIN) \
130        -env:URE_INTERNAL_JAVA_DIR=$(my_file)$(SOLARBINDIR) \
131        -env:OOO_INBUILD_SHAREDLIB_DIR=$(my_file)$(PWD)/$(DLLDEST) \
132        -env:OOO_INBUILD_JAR_DIR=$(my_file)$(PWD)/$(MISC)/$(TARGET)
133
134.END
135