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# Builds the SpreadSheet examples of the Developers Guide. 23*b1cdbd2cSJim Jagielski 24*b1cdbd2cSJim JagielskiPRJ = ../../../.. 25*b1cdbd2cSJim JagielskiSETTINGS = $(PRJ)/settings 26*b1cdbd2cSJim Jagielski 27*b1cdbd2cSJim Jagielskiinclude $(SETTINGS)/settings.mk 28*b1cdbd2cSJim Jagielskiinclude $(SETTINGS)/std.mk 29*b1cdbd2cSJim Jagielskiinclude $(SETTINGS)/dk.mk 30*b1cdbd2cSJim Jagielski 31*b1cdbd2cSJim JagielskiCSC_FLAGS = -warnaserror+ -noconfig 32*b1cdbd2cSJim JagielskiVBC_FLAGS = -warnaserror+ 33*b1cdbd2cSJim Jagielskiifeq "$(DEBUG)" "yes" 34*b1cdbd2cSJim JagielskiCC_FLAGS+=-Zi -MT 35*b1cdbd2cSJim JagielskiCSC_FLAGS += -debug+ -checked+ -define:DEBUG -define:TRACE 36*b1cdbd2cSJim JagielskiVBC_FLAGS += -debug+ -define:DEBUG=1 -define:TRACE=1 37*b1cdbd2cSJim Jagielskielse 38*b1cdbd2cSJim JagielskiCSC_FLAGS += -o 39*b1cdbd2cSJim JagielskiVBC_FLAGS += -o 40*b1cdbd2cSJim Jagielskiendif 41*b1cdbd2cSJim Jagielski 42*b1cdbd2cSJim JagielskiTHIS_OUT_MISC = $(OUT_MISC)/csharp_SpreadsheetExamples 43*b1cdbd2cSJim Jagielski 44*b1cdbd2cSJim JagielskiSPREADSHEET_OUT:= $(OUT_BIN)/CSharp_SpreadsheetExamples 45*b1cdbd2cSJim JagielskiCLI_LIB_LOCATION = $(PRJ)\cli 46*b1cdbd2cSJim Jagielski 47*b1cdbd2cSJim Jagielski# Targets 48*b1cdbd2cSJim Jagielski.PHONY : ALL 49*b1cdbd2cSJim JagielskiALL : Info 50*b1cdbd2cSJim Jagielski 51*b1cdbd2cSJim Jagielskiinclude $(SETTINGS)/stdtarget.mk 52*b1cdbd2cSJim Jagielski 53*b1cdbd2cSJim Jagielski 54*b1cdbd2cSJim Jagielski# build executables 55*b1cdbd2cSJim Jagielski#csc -lib:"d:\OpenOffice 4" does not work. csc does not understand the quotes. 56*b1cdbd2cSJim Jagielski#but they are needed if the path contains a space. Therefore we use full path 57*b1cdbd2cSJim Jagielski#with the -reference switch 58*b1cdbd2cSJim Jagielski$(SPREADSHEET_OUT)/%.exe : %.cs SpreadsheetDocHelper.cs 59*b1cdbd2cSJim Jagielski -$(MKDIR) $(subst /,$(PS),$(@D)) 60*b1cdbd2cSJim Jagielski csc $(CSC_FLAGS) \ 61*b1cdbd2cSJim Jagielski -target:exe \ 62*b1cdbd2cSJim Jagielski -out:$@ \ 63*b1cdbd2cSJim Jagielski -reference:"$(CLI_LIB_LOCATION)"\cli_basetypes.dll \ 64*b1cdbd2cSJim Jagielski -reference:"$(CLI_LIB_LOCATION)"\cli_uretypes.dll \ 65*b1cdbd2cSJim Jagielski -reference:"$(CLI_LIB_LOCATION)"\cli_oootypes.dll \ 66*b1cdbd2cSJim Jagielski -reference:"$(CLI_LIB_LOCATION)"\cli_ure.dll \ 67*b1cdbd2cSJim Jagielski -reference:"$(CLI_LIB_LOCATION)"\cli_cppuhelper.dll \ 68*b1cdbd2cSJim Jagielski $^ 69*b1cdbd2cSJim Jagielski 70*b1cdbd2cSJim JagielskiSpreadsheetSample : $(SPREADSHEET_OUT)/SpreadsheetSample.exe 71*b1cdbd2cSJim Jagielski 72*b1cdbd2cSJim JagielskiGeneralTableSample : $(SPREADSHEET_OUT)/GeneralTableSample.exe 73*b1cdbd2cSJim Jagielski 74*b1cdbd2cSJim JagielskiViewSample : $(SPREADSHEET_OUT)/ViewSample.exe 75*b1cdbd2cSJim Jagielski 76*b1cdbd2cSJim Jagielski.PHONY : Info 77*b1cdbd2cSJim Jagielskiifeq "$(OS)" "WIN" 78*b1cdbd2cSJim JagielskiInfo : SpreadsheetSample GeneralTableSample ViewSample 79*b1cdbd2cSJim Jagielski @echo ------------------------------------------------------------------------------- 80*b1cdbd2cSJim Jagielski @echo Please use one of the following commands to execute the examples! 81*b1cdbd2cSJim Jagielski @echo - 82*b1cdbd2cSJim Jagielski @echo $(MAKE) GeneralTableSample.run 83*b1cdbd2cSJim Jagielski @echo $(MAKE) SpreadsheetSample.run 84*b1cdbd2cSJim Jagielski @echo $(MAKE) ViewSample.run 85*b1cdbd2cSJim Jagielski @echo ------------------------------------------------------------------------------- 86*b1cdbd2cSJim Jagielskielse 87*b1cdbd2cSJim JagielskiInfo : 88*b1cdbd2cSJim Jagielski @echo -------------------------------------------------------------------------------- 89*b1cdbd2cSJim Jagielski @echo This example works only under Windows! 90*b1cdbd2cSJim Jagielski @echo -------------------------------------------------------------------------------- 91*b1cdbd2cSJim Jagielskiendif 92*b1cdbd2cSJim Jagielski 93*b1cdbd2cSJim Jagielski%.run : $(SPREADSHEET_OUT)/%.exe 94*b1cdbd2cSJim Jagielski @echo ------------------------------------------------------------------------------- 95*b1cdbd2cSJim Jagielski @echo Executing sample $@ $(UNORC) $(CONNECT_STRING)... 96*b1cdbd2cSJim Jagielski @echo ------------------------------------------------------------------------------- 97*b1cdbd2cSJim Jagielski cd $(subst /,\\,$(SPREADSHEET_OUT)) && $(basename $@).exe 98*b1cdbd2cSJim Jagielski 99*b1cdbd2cSJim Jagielski.PHONY: clean 100*b1cdbd2cSJim Jagielskiclean : 101*b1cdbd2cSJim Jagielski -$(DELRECURSIVE) $(subst /,$(PS),$(OUT_BIN)/CSharp_SpreadsheetExamples) 102*b1cdbd2cSJim Jagielski 103*b1cdbd2cSJim Jagielski 104