summaryrefslogtreecommitdiff
path: root/odk/examples/java/Spreadsheet/Makefile
diff options
context:
space:
mode:
authorRüdiger Timm <rt@openoffice.org>2003-04-17 08:50:14 +0000
committerRüdiger Timm <rt@openoffice.org>2003-04-17 08:50:14 +0000
commit895e07550e8c0bb6a20da0fb107ce2349169fd03 (patch)
tree21485f3d0a6ab22835bb8a98a8b6e2d84d0b8e53 /odk/examples/java/Spreadsheet/Makefile
parentc1ad1ef9c49527ccff7df125798cd38055cbc5f5 (diff)
INTEGRATION: CWS sdk01 (1.1.2); FILE ADDED
2003/04/10 11:41:29 jsc 1.1.2.3: #108799# use new naming convention for uno components 2003/03/12 15:36:46 jsc 1.1.2.2: #108153# insert CalcAddins.sxc 2003/03/12 14:59:09 jsc 1.1.2.1: #108153# moved from calc/CalcAddin directory
Diffstat (limited to 'odk/examples/java/Spreadsheet/Makefile')
-rw-r--r--odk/examples/java/Spreadsheet/Makefile126
1 files changed, 126 insertions, 0 deletions
diff --git a/odk/examples/java/Spreadsheet/Makefile b/odk/examples/java/Spreadsheet/Makefile
new file mode 100644
index 000000000000..b98c318b0abd
--- /dev/null
+++ b/odk/examples/java/Spreadsheet/Makefile
@@ -0,0 +1,126 @@
+# Builds the Java Spreadsheet examples of the SDK.
+
+PRJ=../../..
+SETTINGS=$(PRJ)/settings
+
+include $(SETTINGS)/settings.mk
+include $(SETTINGS)/std.mk
+include $(SETTINGS)/dk.mk
+
+# Define non-platform/compiler specific settings
+OUT_COMP_CLASS = $(OUT_CLASS)/SpreadsheetExamples
+OUT_COMP_GEN = $(OUT_MISC)/SpreadsheetExamples
+
+COMPONENT1_NAME=CalcAddins
+COMPONENT1_RDB_NAME=$(COMPONENT1_NAME).uno.rdb
+COMPONENT1_RDB=$(OUT_COMP_GEN)/$(COMPONENT1_RDB_NAME)
+COMPONENT1_PACKAGE=$(OUT_BIN)/$(COMPONENT1_NAME).uno.zip
+COMPONENT1_PACKAGE_URL=$(subst \\,\,"$(COMPONENT_PACKAGE_DIR)$(PS)$(COMPONENT1_NAME).uno.zip")
+COMPONENT1_JAR_NAME=$(COMPONENT1_NAME).uno.jar
+COMPONENT1_JAR=$(OUT_CLASS)/$(COMPONENT1_JAR_NAME)
+COMPONENT1_MANIFESTFILE=$(OUT_COMP_CLASS)/$(COMPONENT1_NAME).uno.Manifest
+
+REGISTERFLAG=$(OUT_MISC)$(PS)java_$(COMPONENT1_NAME)_register_component.flag
+
+IDLFILES = XCalcAddins.idl
+
+# normally the idl file should be stored in a directory tree fitting the module structure,
+# for the example we know the module structure
+PACKAGE = com/sun/star/sheet/addin
+
+JAVAFILES = CalcAddins.java \
+ EuroAdaption.java \
+ SCalc.java \
+ ChartTypeChange.java
+
+GENJAVAFILES = $(patsubst %.idl,$(OUT_COMP_GEN)/$(PACKAGE)/%.java,$(IDLFILES))
+GENURDFILES = $(patsubst %.idl,$(OUT_COMP_GEN)/%.urd,$(IDLFILES))
+
+CLASSFILES = $(patsubst %.java,$(OUT_COMP_CLASS)/%.class,$(JAVAFILES))
+CLASSFILES += $(subst $(OUT_COMP_GEN),$(OUT_COMP_CLASS),$(GENJAVAFILES:.java=.class))
+
+$(COMPONENT1_NAME)_CLASSFILES = $(COMPONENT1_NAME).class \
+ $(COMPONENT1_NAME)$(QUOTE)$$_$(COMPONENT1_NAME).class
+
+$(COMPONENT1_NAME)_CLASSFILES += $(subst $(OUT_COMP_GEN)/,,$(GENJAVAFILES:.java=.class))
+
+SDK_CLASSPATH = $(subst $(EMPTYSTRING) $(PATH_SEPARATOR),$(PATH_SEPARATOR),$(OFFICE_CLASSES_DIR)/jurt.jar\
+ $(PATH_SEPARATOR)$(OFFICE_CLASSES_DIR)/unoil.jar\
+ $(PATH_SEPARATOR)$(OFFICE_CLASSES_DIR)/ridl.jar\
+ $(PATH_SEPARATOR)$(OFFICE_CLASSES_DIR)/sandbox.jar\
+ $(PATH_SEPARATOR)$(OFFICE_CLASSES_DIR)/juh.jar\
+ $(PATH_SEPARATOR)$(OUT_COMP_CLASS))
+
+
+# Targets
+.PHONY: ALL
+ALL : JavaSpreadsheetExamples
+
+include $(SETTINGS)/stdtarget.mk
+
+$(OUT_COMP_GEN) : $(OUT)
+ $(MKDIR) $(subst /,$(PS),$@)
+ $(MKDIR) $(subst /,$(PS),$(OUT_COMP_CLASS))
+
+$(OUT_COMP_CLASS)/%.Manifest : $(OUT_COMP_GEN)
+ @echo RegistrationClassName: $(basename $(basename $(@F)))> $@
+
+$(OUT_COMP_GEN)/%.urd : %.idl $(OUT_COMP_GEN)
+ idlc -C -I. -I$(IDL_DIR) -O$(OUT_COMP_GEN) $<
+
+$(OUT_COMP_GEN)/%.rdb : $(GENURDFILES)
+ -$(DEL) $(subst /,$(PS),$@)
+ regmerge $@ /UCR $(GENURDFILES)
+
+$(OUT_COMP_GEN)/%.java : $(COMPONENT1_RDB) $(OUT_COMP_GEN)
+ javamaker -BUCR -nD -T$(subst /,.,$(patsubst $(OUT_COMP_GEN)/%.java,%,$@)) -O$(OUT_COMP_GEN) $(COMPONENT1_RDB) $(DKREGISTRYNAME)
+
+$(CLASSFILES) : $(OUT_COMP_GEN) $(JAVAFILES) $(GENJAVAFILES)
+ javac -classpath "$(SDK_CLASSPATH)" -d $(OUT_COMP_CLASS) $(GENJAVAFILES) $(JAVAFILES)
+
+$(OUT_CLASS)/%.jar : $(OUT_COMP_CLASS)/%.Manifest $(CLASSFILES)
+# jar cvfm $@ $< -C $(OUT_COMP_CLASS) .
+ cd $(OUT_COMP_CLASS) && jar cvfm ../$(@F) $(<F) $($(basename $(basename $(@F)))_CLASSFILES)
+
+$(OUT_BIN)/%.zip : $(OUT_COMP_GEN)/%.rdb $(OUT_CLASS)/%.jar
+ $(COPY) $(subst /,$(PS),$<) $(subst /,$(PS),$(OUT_CLASS))
+ cd $(OUT_CLASS) && jar cvfM ../bin/$(@F) $(^F)
+ $(DEL) $(subst /,$(PS),$(OUT_CLASS)/$(<F))
+
+$(REGISTERFLAG) : $(COMPONENT1_PACKAGE)
+ifneq "$(SDK_AUTO_DEPLOYMENT)" ""
+ -$(DEL) $(subst /,$(PS),$@)
+ $(DEPLOYTOOL) $(COMPONENT1_PACKAGE_URL)
+ @echo flagged > $(subst /,$(PS),$@)
+else
+ @echo --------------------------------------------------------------------------------
+ @echo If you want to install your component automatically, please set the environment
+ @echo variable SDK_AUTO_DEPLOYMENT = YES. But note that auto deployment is only
+ @echo possible if no office instance is running.
+ @echo --------------------------------------------------------------------------------
+endif
+
+JavaSpreadsheetExamples : $(REGISTERFLAG)
+ @echo --------------------------------------------------------------------------------
+ @echo Please use the following command to execute the examples!
+ @echo -
+ @echo make EuroAdaption.run
+ @echo make SCalc.run
+ @echo make ChartTypeChange.run
+ @echo --------------------------------------------------------------------------------
+ @echo The Calc add-in component was installed if SDK_AUTO_DEPLOYMENT = YES.
+ @echo You can use this component inside your office installation, see the example
+ @echo description. You can also load the "$(QM)CalcAddins.sxc$(QM)" document to see
+ @echo how the add-in functions works.
+ @echo --------------------------------------------------------------------------------
+
+%.run: $(OUT_COMP_CLASS)/%.class
+ java -classpath "$(SDK_CLASSPATH)" $(basename $@)
+
+.PHONY: clean
+clean :
+ -$(DELRECURSIVE) $(subst /,$(PS),$(OUT_COMP_CLASS))
+ -$(DELRECURSIVE) $(subst /,$(PS),$(OUT_COMP_GEN))
+ -$(DEL) $(subst /,$(PS),$(COMPONENT1_PACKAGE_URL))
+ -$(DEL) $(subst /,$(PS),$(COMPONENT1_JAR))
+ -$(DEL) $(subst /,$(PS),$(REGISTERFLAG))