plugins/base2/se.lu.thep.affymetrix/trunk/Makefile

Code
Comments
Other
Rev Date Author Line
123 12 Jul 06 jari 1 # $Id$
123 12 Jul 06 jari 2
124 18 Jul 06 jari 3 # ======================================================================
124 18 Jul 06 jari 4 # Copyright (C) 2006 Jari Häkkinen
291 23 May 07 jari 5 # Copyright (C) 2007 Jari Häkkinen, Peter Johansson
124 18 Jul 06 jari 6 #
309 25 May 07 peter 7 # This file is part of BASEPlugIns - Non-core plug-ins for BASE,
309 25 May 07 peter 8 # BioArray Software Environment.
309 25 May 07 peter 9 # BASEPlugIns is available at http://baseplugins.thep.lu.se/
309 25 May 07 peter 10 # BASE is available at http://base.thep.lu.se/
124 18 Jul 06 jari 11 #
309 25 May 07 peter 12 # BASEPlugIns is free software; you can redistribute it and/or modify
309 25 May 07 peter 13 # it under the terms of the GNU General Public License as published by
309 25 May 07 peter 14 # the Free Software Foundation; either version 2 of the License, or
309 25 May 07 peter 15 # (at your option) any later version.
124 18 Jul 06 jari 16 #
309 25 May 07 peter 17 # BASEPlugIns is distributed in the hope that it will be useful, but
309 25 May 07 peter 18 # WITHOUT ANY WARRANTY; without even the implied warranty of
309 25 May 07 peter 19 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
124 18 Jul 06 jari 20 # General Public License for more details.
124 18 Jul 06 jari 21 #
124 18 Jul 06 jari 22 # You should have received a copy of the GNU General Public License
124 18 Jul 06 jari 23 # along with this program; if not, write to the Free Software
309 25 May 07 peter 24 # Foundation, Inc., 59 Temple Place - Suite 330,
309 25 May 07 peter 25 # Boston, MA  02111-1307, USA.
124 18 Jul 06 jari 26 # ======================================================================
135 09 Aug 06 jari 27 #
135 09 Aug 06 jari 28 # Maintainer and advanced user information.
135 09 Aug 06 jari 29 #
135 09 Aug 06 jari 30 # 'make' will compile the source and create the jar file assuming that
135 09 Aug 06 jari 31 # the BASE application is located in BASEROOT defined below, and in
135 09 Aug 06 jari 32 # consequnce use BASECORE defined below as the BASE2Core.jar file.
135 09 Aug 06 jari 33 #
135 09 Aug 06 jari 34 # 'make BASEROOT=dir' can be used to point to where the BASE
135 09 Aug 06 jari 35 # application is installed. BASECORE and PLUGINDIR will be changed
135 09 Aug 06 jari 36 # accordingly.
135 09 Aug 06 jari 37 #
135 09 Aug 06 jari 38 # 'make BASECORE=/path/to/BASE2Core.jar' can be used to set the
135 09 Aug 06 jari 39 # BASE2Core.jar file independently of the BASE appication root.
135 09 Aug 06 jari 40 #
135 09 Aug 06 jari 41 # 'make RELPLUGINDIR=dir install' sets the plug-in installation
135 09 Aug 06 jari 42 # directory location relative to BASE root when installing the
135 09 Aug 06 jari 43 # plug-in. If the plug-dir location should be outside of the BASE
135 09 Aug 06 jari 44 # directory hierarchy use 'make PLUGINDIR=dir'.
135 09 Aug 06 jari 45 #
135 09 Aug 06 jari 46 # 'make PLUGINDIR=dir install' sets the plug-in installation directory
135 09 Aug 06 jari 47 # location independently of BASE root when installing the plug-in.
135 09 Aug 06 jari 48 #
135 09 Aug 06 jari 49 # 'make dist' with optional BASEROOT or BASECORE will create binary
135 09 Aug 06 jari 50 # distribution and source distribution packages with corresponding
266 07 May 07 peter 51 # md5sum files. 
135 09 Aug 06 jari 52 #
124 18 Jul 06 jari 53
347 27 Jun 07 jari 54 VERSION = 0.7
123 12 Jul 06 jari 55
311 28 May 07 peter 56 TOPBUILDDIR = .build
311 28 May 07 peter 57 SUBDIR = se/lu/thep/affymetrix
311 28 May 07 peter 58 BUILDDIR = $(TOPBUILDDIR)/$(SUBDIR)
266 07 May 07 peter 59
135 09 Aug 06 jari 60 # Prefix for where to install the plug-in. This is normally the path
135 09 Aug 06 jari 61 # to BASE
135 09 Aug 06 jari 62 BASEROOT ?= /usr/local/base
135 09 Aug 06 jari 63
135 09 Aug 06 jari 64 # Location of BASE2Core.jar. This is usually
135 09 Aug 06 jari 65 # $(BASEROOT)/www/WEB-INF/lib/BASE2Core.jar
135 09 Aug 06 jari 66 BASECORE ?= $(BASEROOT)/www/WEB-INF/lib/BASE2Core.jar
135 09 Aug 06 jari 67
135 09 Aug 06 jari 68 # The directory, relative to $(BASEROOT), where to install the plug-in
311 28 May 07 peter 69 RELPLUGINDIR ?= www/plugins/$(SUBDIR)
135 09 Aug 06 jari 70 PLUGINDIR ?= $(BASEROOT)/$(RELPLUGINDIR)
135 09 Aug 06 jari 71
311 28 May 07 peter 72 JAVA = AbstractExternalBinaryPlugin.java Plier.java RMAExpress.java 
266 07 May 07 peter 73 CLASS = $(JAVA:.java=.class)
266 07 May 07 peter 74 JAR  = affymetrix.jar
123 12 Jul 06 jari 75
135 09 Aug 06 jari 76 # Files to include in binary distributions
266 07 May 07 peter 77 BINDISTFILES = AUTHORS ChangeLog COPYING INSTALL Makefile README $(JAR)
135 09 Aug 06 jari 78 # Binary package name
266 07 May 07 peter 79 BINPACKAGEFILE = base_affymetrix_plugin-$(VERSION)
135 09 Aug 06 jari 80 # Files to include in binary distributions
266 07 May 07 peter 81 SRCDISTFILES = AUTHORS ChangeLog COPYING INSTALL Makefile README $(JAVA)
135 09 Aug 06 jari 82 # Binary package name
266 07 May 07 peter 83 SRCPACKAGEFILE = $(BINPACKAGEFILE)-src
124 18 Jul 06 jari 84
291 23 May 07 jari 85 all: $(JAR)
123 12 Jul 06 jari 86
330 11 Jun 07 peter 87 clean:; @( rm -rf *.jar *.class *~ $(TOPBUILDDIR) \
291 23 May 07 jari 88   $(BINPACKAGEFILE) $(BINPACKAGEFILE).tar.gz $(BINPACKAGEFILE).tar.gz.MD5 \
291 23 May 07 jari 89   $(SRCPACKAGEFILE) $(SRCPACKAGEFILE).tar.gz $(SRCPACKAGEFILE).tar.gz.MD5 ) 
123 12 Jul 06 jari 90
291 23 May 07 jari 91 dist: clean $(BINDISTFILES) $(SRCDISTFILES)
135 09 Aug 06 jari 92   @echo Creating dist files
135 09 Aug 06 jari 93   @mkdir $(BINPACKAGEFILE)
135 09 Aug 06 jari 94   @cp -p $(BINDISTFILES) $(BINPACKAGEFILE)
135 09 Aug 06 jari 95   @tar zcf $(BINPACKAGEFILE).tar.gz $(BINPACKAGEFILE)
135 09 Aug 06 jari 96   @md5sum $(BINPACKAGEFILE).tar.gz > $(BINPACKAGEFILE).tar.gz.MD5
135 09 Aug 06 jari 97   @mkdir $(SRCPACKAGEFILE)
135 09 Aug 06 jari 98   @cp -p $(SRCDISTFILES) $(SRCPACKAGEFILE)
135 09 Aug 06 jari 99   @tar zcf $(SRCPACKAGEFILE).tar.gz $(SRCPACKAGEFILE)
135 09 Aug 06 jari 100   @md5sum $(SRCPACKAGEFILE).tar.gz > $(SRCPACKAGEFILE).tar.gz.MD5
124 18 Jul 06 jari 101
266 07 May 07 peter 102 .PHONY: all clean dist install install-precompiled 
135 09 Aug 06 jari 103
292 23 May 07 jari 104 install: $(JAR) install-precompiled
266 07 May 07 peter 105
292 23 May 07 jari 106 install-precompiled:
266 07 May 07 peter 107   @install -d $(PLUGINDIR)
266 07 May 07 peter 108   install -p $(JAR) $(PLUGINDIR)
189 27 Oct 06 jari 109
291 23 May 07 jari 110 $(JAR): $(BUILDDIR) $(CLASS)
123 12 Jul 06 jari 111   @echo Creating $(JAR)
311 28 May 07 peter 112   @(cd $(TOPBUILDDIR) ; \
311 28 May 07 peter 113     jar cf ../$(JAR) $(SUBDIR)/*.class)
123 12 Jul 06 jari 114
312 28 May 07 peter 115 $(BUILDDIR)/%.java: %.java Makefile AbstractExternalBinaryPlugin.java
298 23 May 07 jari 116   @sed "s/MAKESUBSTOFVERSIONNUMBER/$(VERSION)/" $< > $@
123 12 Jul 06 jari 117
291 23 May 07 jari 118 %.class: $(BUILDDIR)/%.java
311 28 May 07 peter 119   javac -cp $(BASECORE):$(TOPBUILDDIR)  $<
135 09 Aug 06 jari 120
291 23 May 07 jari 121 $(BUILDDIR):
311 28 May 07 peter 122   @install -d $@
311 28 May 07 peter 123