low-level text cell bits
[fanfix.git] / Makefile
1 # Jexer - Java Text User Interface - Makefile
2 #
3 # $Id$
4 #
5 # This program is licensed under the GNU Lesser General Public License
6 # Version 3. Please see the file "COPYING" in this directory for more
7 # information about the GNU Lesser General Public License Version 3.
8 #
9 # Copyright (C) 2015 Kevin Lamonte
10 #
11 # This library is free software; you can redistribute it and/or modify
12 # it under the terms of the GNU Lesser General Public License as
13 # published by the Free Software Foundation; either version 3 of the
14 # License, or (at your option) any later version.
15 #
16 # This program is distributed in the hope that it will be useful,
17 # but WITHOUT ANY WARRANTY; without even the implied warranty of
18 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 # GNU General Public License for more details.
20 #
21 # You should have received a copy of the GNU Lesser General Public
22 # License along with this program; if not, see
23 # http://www.gnu.org/licenses/, or write to the Free Software
24 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
25 # USA
26
27
28 # This Makefile is a quick-and-dirty build that is useful to execute
29 # the Demo1 application that uses stdin/stdout. Use 'make run'.
30 #
31 # Generally it would be better to use the ant build.
32
33 default: all
34
35 .SUFFIXES: .class .java
36
37 SRC_DIR = src
38 ANT_TARGET_DIR = build
39 TARGET_DIR = classes
40
41 JEXER_SRC = $(SRC_DIR)/jexer/TApplication.java \
42 $(SRC_DIR)/jexer/bits/GraphicsChars.java \
43 $(SRC_DIR)/jexer/bits/Color.java \
44 $(SRC_DIR)/jexer/bits/CellAttributes.java \
45 $(SRC_DIR)/jexer/bits/Cell.java \
46 $(SRC_DIR)/jexer/bits/ColorTheme.java
47
48 JEXER_BIN = $(TARGET_DIR)/jexer/TApplication.class \
49 $(TARGET_DIR)/jexer/bits/GraphicsChars.class \
50 $(TARGET_DIR)/jexer/bits/Color.class \
51 $(TARGET_DIR)/jexer/bits/CellAttributes.class \
52 $(TARGET_DIR)/jexer/bits/Cell.class \
53 $(TARGET_DIR)/jexer/bits/ColorTheme.class
54
55 JAVAC = javac
56 JAVAFLAGS = -g -deprecation
57
58 all: jexer demos
59
60 run: jexer run-demo1
61
62 all-demos: jexer demos/Demo1.class
63
64 demos/Demo1.class: demos/Demo1.java
65 $(JAVAC) $(JAVAFLAGS) -cp $(TARGET_DIR) -d demos demos/Demo1.java
66
67 run-demo1: demos/Demo1.class
68 java -cp $(TARGET_DIR):demos Demo1
69
70 clean: clean-demos
71 -rm -r $(ANT_TARGET_DIR)
72 -rm -r $(TARGET_DIR)
73 -mkdir $(TARGET_DIR)
74
75 clean-demos:
76 -rm demos/Demo1.class
77
78 jexer: $(JEXER_SRC)
79 $(JAVAC) $(JAVAFLAGS) -sourcepath $(SRC_DIR) -d $(TARGET_DIR) $(JEXER_SRC)