1*b1cdbd2cSJim Jagielski#************************************************************** 2*b1cdbd2cSJim Jagielski# 3*b1cdbd2cSJim Jagielski# Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski# or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski# distributed with this work for additional information 6*b1cdbd2cSJim Jagielski# regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski# to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski# "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski# with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski# 11*b1cdbd2cSJim Jagielski# http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski# 13*b1cdbd2cSJim Jagielski# Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski# software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski# KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski# specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski# under the License. 19*b1cdbd2cSJim Jagielski# 20*b1cdbd2cSJim Jagielski#************************************************************** 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim JagielskiPRJ=.. 24*b1cdbd2cSJim Jagielski 25*b1cdbd2cSJim JagielskiPRJNAME=cppuhelper 26*b1cdbd2cSJim JagielskiTARGET=testhelper 27*b1cdbd2cSJim JagielskiENABLE_EXCEPTIONS=TRUE 28*b1cdbd2cSJim JagielskiUSE_DEFFILE=TRUE 29*b1cdbd2cSJim Jagielski 30*b1cdbd2cSJim Jagielski# --- Settings ----------------------------------------------------- 31*b1cdbd2cSJim Jagielski 32*b1cdbd2cSJim Jagielski.INCLUDE : settings.mk 33*b1cdbd2cSJim Jagielski 34*b1cdbd2cSJim Jagielski# --- Files -------------------------------------------------------- 35*b1cdbd2cSJim Jagielski 36*b1cdbd2cSJim JagielskiUNOUCRDEP= $(SOLARBINDIR)$/udkapi.rdb 37*b1cdbd2cSJim JagielskiUNOUCRRDB= $(SOLARBINDIR)$/udkapi.rdb 38*b1cdbd2cSJim JagielskiUNOUCROUT= $(OUT)$/inc$/test 39*b1cdbd2cSJim JagielskiINCPRE+= $(OUT)$/inc$/test 40*b1cdbd2cSJim Jagielski 41*b1cdbd2cSJim JagielskiOBJFILES= \ 42*b1cdbd2cSJim Jagielski $(OBJ)$/testhelper.obj \ 43*b1cdbd2cSJim Jagielski $(OBJ)$/testpropshlp.obj \ 44*b1cdbd2cSJim Jagielski $(OBJ)$/testidlclass.obj \ 45*b1cdbd2cSJim Jagielski $(OBJ)$/testproptyphlp.obj \ 46*b1cdbd2cSJim Jagielski $(OBJ)$/testimplhelper.obj \ 47*b1cdbd2cSJim Jagielski $(OBJ)$/testcontainer.obj 48*b1cdbd2cSJim Jagielski 49*b1cdbd2cSJim JagielskiAPP1TARGET=$(TARGET) 50*b1cdbd2cSJim JagielskiAPP1OBJS=$(OBJFILES) 51*b1cdbd2cSJim Jagielski 52*b1cdbd2cSJim JagielskiAPP1STDLIBS+= \ 53*b1cdbd2cSJim Jagielski $(CPPULIB) \ 54*b1cdbd2cSJim Jagielski $(CPPUHELPERLIB) \ 55*b1cdbd2cSJim Jagielski $(SALLIB) 56*b1cdbd2cSJim Jagielski 57*b1cdbd2cSJim JagielskiAPP1DEF= $(MISC)$/$(APP1TARGET).def 58*b1cdbd2cSJim Jagielski 59*b1cdbd2cSJim Jagielski############################################# 60*b1cdbd2cSJim Jagielski 61*b1cdbd2cSJim JagielskiAPP2OBJS = $(OBJ)$/testdefaultbootstrapping.obj 62*b1cdbd2cSJim JagielskiAPP2STDLIBS += $(CPPUHELPERLIB) $(CPPULIB) $(SALLIB) 63*b1cdbd2cSJim JagielskiAPP2TARGET = testdefaultbootstrapping 64*b1cdbd2cSJim Jagielski 65*b1cdbd2cSJim Jagielski############################################# 66*b1cdbd2cSJim Jagielski 67*b1cdbd2cSJim JagielskiSLOFILES= \ 68*b1cdbd2cSJim Jagielski $(SLO)$/cfg_test.obj 69*b1cdbd2cSJim JagielskiLIB1TARGET=$(SLB)$/cfg_test.lib 70*b1cdbd2cSJim JagielskiLIB1OBJFILES=$(SLOFILES) 71*b1cdbd2cSJim Jagielski 72*b1cdbd2cSJim Jagielski 73*b1cdbd2cSJim JagielskiAPP3OBJS = $(OBJ)$/cfg_test.obj 74*b1cdbd2cSJim JagielskiAPP3STDLIBS += $(CPPUHELPERLIB) $(CPPULIB) $(SALLIB) 75*b1cdbd2cSJim JagielskiAPP3TARGET = test_cfg 76*b1cdbd2cSJim Jagielski 77*b1cdbd2cSJim Jagielski############################################# 78*b1cdbd2cSJim Jagielski 79*b1cdbd2cSJim JagielskiALLIDLFILES:= helpertest.idl 80*b1cdbd2cSJim Jagielski 81*b1cdbd2cSJim Jagielski# --- Targets ------------------------------------------------------ 82*b1cdbd2cSJim Jagielski 83*b1cdbd2cSJim Jagielski.IF "$(depend)" == "" 84*b1cdbd2cSJim JagielskiALL: $(BIN)$/cpputest.rdb \ 85*b1cdbd2cSJim Jagielski unoheader \ 86*b1cdbd2cSJim Jagielski $(BIN)$/testrc \ 87*b1cdbd2cSJim Jagielski $(BIN)$/testdefaultbootstrapping.pl \ 88*b1cdbd2cSJim Jagielski ALLTAR \ 89*b1cdbd2cSJim Jagielski $(BIN)$/$(APP2TARGET).bin \ 90*b1cdbd2cSJim Jagielski $(BIN)$/$(APP2TARGET).Bin \ 91*b1cdbd2cSJim Jagielski $(BIN)$/$(APP2TARGET).Exe 92*b1cdbd2cSJim Jagielski 93*b1cdbd2cSJim Jagielski.IF "$(GUI)"=="UNX" 94*b1cdbd2cSJim JagielskiALL: $(BIN)$/$(APP2TARGET).exe 95*b1cdbd2cSJim Jagielski 96*b1cdbd2cSJim Jagielski$(BIN)$/$(APP2TARGET).exe : $(APP2TARGETN) 97*b1cdbd2cSJim Jagielski cp $(APP2TARGETN) $@ 98*b1cdbd2cSJim Jagielski 99*b1cdbd2cSJim Jagielski.ENDIF 100*b1cdbd2cSJim Jagielski 101*b1cdbd2cSJim Jagielski 102*b1cdbd2cSJim Jagielski$(BIN)$/$(APP2TARGET).bin : $(APP2TARGETN) 103*b1cdbd2cSJim Jagielski cp $(APP2TARGETN) $@ 104*b1cdbd2cSJim Jagielski 105*b1cdbd2cSJim Jagielski$(BIN)$/$(APP2TARGET).Bin : $(APP2TARGETN) 106*b1cdbd2cSJim Jagielski cp $(APP2TARGETN) $@ 107*b1cdbd2cSJim Jagielski 108*b1cdbd2cSJim Jagielski$(BIN)$/$(APP2TARGET).Exe : $(APP2TARGETN) 109*b1cdbd2cSJim Jagielski cp $(APP2TARGETN) $@ 110*b1cdbd2cSJim Jagielski 111*b1cdbd2cSJim Jagielski.ELSE 112*b1cdbd2cSJim JagielskiALL: ALLDEP 113*b1cdbd2cSJim Jagielski.ENDIF 114*b1cdbd2cSJim Jagielski 115*b1cdbd2cSJim Jagielski.INCLUDE : target.mk 116*b1cdbd2cSJim Jagielski 117*b1cdbd2cSJim JagielskiCPPUMAKERFLAGS = 118*b1cdbd2cSJim Jagielski.IF "$(COM)" == "MSC" 119*b1cdbd2cSJim JagielskiCPPUMAKERFLAGS = -L 120*b1cdbd2cSJim Jagielski.ENDIF 121*b1cdbd2cSJim Jagielski 122*b1cdbd2cSJim JagielskiTYPES:=test.A;test.BA;test.CA;test.DBA;test.E;test.FE;test.G;test.H;test.I 123*b1cdbd2cSJim JagielskiHELPERTYPES:=com.sun.star.uno.XReference;com.sun.star.uno.XAdapter;com.sun.star.uno.XAggregation;com.sun.star.uno.XWeak;com.sun.star.lang.XComponent;com.sun.star.lang.XTypeProvider;com.sun.star.lang.XEventListener;com.sun.star.lang.XSingleServiceFactory;com.sun.star.lang.XMultiServiceFactory;com.sun.star.registry.XRegistryKey;com.sun.star.lang.XInitialization;com.sun.star.lang.XServiceInfo;com.sun.star.loader.XImplementationLoader;com.sun.star.lang.IllegalAccessException;com.sun.star.beans.XVetoableChangeListener;com.sun.star.beans.XPropertySet;com.sun.star.uno.XComponentContext 124*b1cdbd2cSJim JagielskiFACTORYTYPES:=com.sun.star.lang.XComponent;com.sun.star.registry.XSimpleRegistry;com.sun.star.lang.XInitialization;com.sun.star.lang.XMultiServiceFactory;com.sun.star.loader.XImplementationLoader;com.sun.star.registry.XImplementationRegistration;com.sun.star.container.XSet;com.sun.star.lang.XSingleServiceFactory;com.sun.star.lang.XSingleComponentFactory;com.sun.star.lang.XMultiComponentFactory 125*b1cdbd2cSJim Jagielski 126*b1cdbd2cSJim Jagielski.IF "$(OS)" == "WNT" || "$(OS)" == "OS2" 127*b1cdbd2cSJim JagielskiUNO_PATH := $(SOLARBINDIR) 128*b1cdbd2cSJim JagielskiUNO_OUT := $(OUT)$/bin 129*b1cdbd2cSJim JagielskiEXT_SO := .dll 130*b1cdbd2cSJim Jagielski.ELSE 131*b1cdbd2cSJim JagielskiUNO_PATH := $(SOLARLIBDIR) 132*b1cdbd2cSJim JagielskiUNO_OUT := $(OUT)$/lib 133*b1cdbd2cSJim JagielskiEXT_SO := .so 134*b1cdbd2cSJim Jagielski.ENDIF 135*b1cdbd2cSJim Jagielski 136*b1cdbd2cSJim Jagielski$(UNO_OUT)$/%$(EXT_SO): $(UNO_PATH)$/%$(EXT_SO) 137*b1cdbd2cSJim Jagielski $(COPY) $^ $@ 138*b1cdbd2cSJim Jagielski 139*b1cdbd2cSJim Jagielski$(BIN)$/cpputest.rdb: $(ALLIDLFILES) $(UNO_OUT)$/invocadapt.uno$(EXT_SO) $(UNO_OUT)$/bootstrap.uno$(EXT_SO) 140*b1cdbd2cSJim Jagielski idlc -I$(PRJ) -I$(SOLARIDLDIR) -O$(BIN) $(ALLIDLFILES) 141*b1cdbd2cSJim Jagielski regmerge $@ /UCR $(BIN)$/{$(?:f:s/.idl/.urd/)} 142*b1cdbd2cSJim Jagielski regmerge $@ / $(UNOUCRRDB) 143*b1cdbd2cSJim Jagielski regcomp -register -r $@ -c reflection.uno$(DLLPOST) 144*b1cdbd2cSJim Jagielski touch $@ 145*b1cdbd2cSJim Jagielski 146*b1cdbd2cSJim Jagielskiunoheader: $(BIN)$/cpputest.rdb 147*b1cdbd2cSJim Jagielski cppumaker $(CPPUMAKERFLAGS) -BUCR -O$(UNOUCROUT) -T"$(TYPES);$(HELPERTYPES)" $(BIN)$/cpputest.rdb 148*b1cdbd2cSJim Jagielski cppumaker $(CPPUMAKERFLAGS) -BUCR -O$(UNOUCROUT) -T"$(FACTORYTYPES)" $(BIN)$/cpputest.rdb 149*b1cdbd2cSJim Jagielski 150*b1cdbd2cSJim Jagielski 151*b1cdbd2cSJim Jagielski$(BIN)$/testdefaultbootstrapping.pl: testdefaultbootstrapping.pl 152*b1cdbd2cSJim Jagielski cp testdefaultbootstrapping.pl $@ 153*b1cdbd2cSJim Jagielski 154*b1cdbd2cSJim Jagielski$(BIN)$/testrc: makefile.mk 155*b1cdbd2cSJim Jagielski.IF "$(GUI)"=="WNT" 156*b1cdbd2cSJim Jagielski echo [Tests] > $@ 157*b1cdbd2cSJim Jagielski echo TestKey1=com.sun.star.uno.NamingService.rdb >> $@ 158*b1cdbd2cSJim Jagielski.ELSE 159*b1cdbd2cSJim Jagielski echo '[Tests]' > $@ 160*b1cdbd2cSJim Jagielski echo 'TestKey1=file:///'$(PWD)/$(BIN)'/com.sun.star.uno.NamingService.rdb' >> $@ 161*b1cdbd2cSJim Jagielski.ENDIF 162*b1cdbd2cSJim Jagielski 163*b1cdbd2cSJim Jagielski 164*b1cdbd2cSJim Jagielski 165