1#************************************************************************* 2# 3# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4# 5# Copyright 2000, 2010 Oracle and/or its affiliates. 6# 7# OpenOffice.org - a multi-platform office productivity suite 8# 9# This file is part of OpenOffice.org. 10# 11# OpenOffice.org is free software: you can redistribute it and/or modify 12# it under the terms of the GNU Lesser General Public License version 3 13# only, as published by the Free Software Foundation. 14# 15# OpenOffice.org is distributed in the hope that it will be useful, 16# but WITHOUT ANY WARRANTY; without even the implied warranty of 17# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18# GNU Lesser General Public License version 3 for more details 19# (a copy is included in the LICENSE file that accompanied this code). 20# 21# You should have received a copy of the GNU Lesser General Public License 22# version 3 along with OpenOffice.org. If not, see 23# <http://www.openoffice.org/license.html> 24# for a copy of the LGPLv3 License. 25# 26#************************************************************************* 27PRJ=.. 28 29PRJNAME=cppuhelper 30TARGET=testhelper 31ENABLE_EXCEPTIONS=TRUE 32USE_DEFFILE=TRUE 33 34# --- Settings ----------------------------------------------------- 35 36.INCLUDE : settings.mk 37 38# --- Files -------------------------------------------------------- 39 40UNOUCRDEP= $(SOLARBINDIR)$/udkapi.rdb 41UNOUCRRDB= $(SOLARBINDIR)$/udkapi.rdb 42UNOUCROUT= $(OUT)$/inc$/test 43INCPRE+= $(OUT)$/inc$/test 44 45OBJFILES= \ 46 $(OBJ)$/testhelper.obj \ 47 $(OBJ)$/testpropshlp.obj \ 48 $(OBJ)$/testidlclass.obj \ 49 $(OBJ)$/testproptyphlp.obj \ 50 $(OBJ)$/testimplhelper.obj \ 51 $(OBJ)$/testcontainer.obj 52 53APP1TARGET=$(TARGET) 54APP1OBJS=$(OBJFILES) 55 56APP1STDLIBS+= \ 57 $(CPPULIB) \ 58 $(CPPUHELPERLIB) \ 59 $(SALLIB) 60 61APP1DEF= $(MISC)$/$(APP1TARGET).def 62 63############################################# 64 65APP2OBJS = $(OBJ)$/testdefaultbootstrapping.obj 66APP2STDLIBS += $(CPPUHELPERLIB) $(CPPULIB) $(SALLIB) 67APP2TARGET = testdefaultbootstrapping 68 69############################################# 70 71SLOFILES= \ 72 $(SLO)$/cfg_test.obj 73LIB1TARGET=$(SLB)$/cfg_test.lib 74LIB1OBJFILES=$(SLOFILES) 75 76 77APP3OBJS = $(OBJ)$/cfg_test.obj 78APP3STDLIBS += $(CPPUHELPERLIB) $(CPPULIB) $(SALLIB) 79APP3TARGET = test_cfg 80 81############################################# 82 83ALLIDLFILES:= helpertest.idl 84 85# --- Targets ------------------------------------------------------ 86 87.IF "$(depend)" == "" 88ALL: $(BIN)$/cpputest.rdb \ 89 unoheader \ 90 $(BIN)$/testrc \ 91 $(BIN)$/testdefaultbootstrapping.pl \ 92 ALLTAR \ 93 $(BIN)$/$(APP2TARGET).bin \ 94 $(BIN)$/$(APP2TARGET).Bin \ 95 $(BIN)$/$(APP2TARGET).Exe 96 97.IF "$(GUI)"=="UNX" 98ALL: $(BIN)$/$(APP2TARGET).exe 99 100$(BIN)$/$(APP2TARGET).exe : $(APP2TARGETN) 101 cp $(APP2TARGETN) $@ 102 103.ENDIF 104 105 106$(BIN)$/$(APP2TARGET).bin : $(APP2TARGETN) 107 cp $(APP2TARGETN) $@ 108 109$(BIN)$/$(APP2TARGET).Bin : $(APP2TARGETN) 110 cp $(APP2TARGETN) $@ 111 112$(BIN)$/$(APP2TARGET).Exe : $(APP2TARGETN) 113 cp $(APP2TARGETN) $@ 114 115.ELSE 116ALL: ALLDEP 117.ENDIF 118 119.INCLUDE : target.mk 120 121CPPUMAKERFLAGS = 122.IF "$(COM)" == "MSC" 123CPPUMAKERFLAGS = -L 124.ENDIF 125 126TYPES:=test.A;test.BA;test.CA;test.DBA;test.E;test.FE;test.G;test.H;test.I 127HELPERTYPES:=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 128FACTORYTYPES:=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 129 130.IF "$(OS)" == "WNT" || "$(OS)" == "OS2" 131UNO_PATH := $(SOLARBINDIR) 132UNO_OUT := $(OUT)$/bin 133EXT_SO := .dll 134.ELSE 135UNO_PATH := $(SOLARLIBDIR) 136UNO_OUT := $(OUT)$/lib 137EXT_SO := .so 138.ENDIF 139 140$(UNO_OUT)$/%$(EXT_SO): $(UNO_PATH)$/%$(EXT_SO) 141 $(COPY) $^ $@ 142 143$(BIN)$/cpputest.rdb: $(ALLIDLFILES) $(UNO_OUT)$/invocadapt.uno$(EXT_SO) $(UNO_OUT)$/bootstrap.uno$(EXT_SO) 144 idlc -I$(PRJ) -I$(SOLARIDLDIR) -O$(BIN) $(ALLIDLFILES) 145 regmerge $@ /UCR $(BIN)$/{$(?:f:s/.idl/.urd/)} 146 regmerge $@ / $(UNOUCRRDB) 147 regcomp -register -r $@ -c reflection.uno$(DLLPOST) 148 touch $@ 149 150unoheader: $(BIN)$/cpputest.rdb 151 cppumaker $(CPPUMAKERFLAGS) -BUCR -O$(UNOUCROUT) -T"$(TYPES);$(HELPERTYPES)" $(BIN)$/cpputest.rdb 152 cppumaker $(CPPUMAKERFLAGS) -BUCR -O$(UNOUCROUT) -T"$(FACTORYTYPES)" $(BIN)$/cpputest.rdb 153 154 155$(BIN)$/testdefaultbootstrapping.pl: testdefaultbootstrapping.pl 156 cp testdefaultbootstrapping.pl $@ 157 158$(BIN)$/testrc: makefile.mk 159.IF "$(GUI)"=="WNT" 160 echo [Tests] > $@ 161 echo TestKey1=com.sun.star.uno.NamingService.rdb >> $@ 162.ELSE 163 echo '[Tests]' > $@ 164 echo 'TestKey1=file:///'$(PWD)/$(BIN)'/com.sun.star.uno.NamingService.rdb' >> $@ 165.ENDIF 166 167 168 169