base data structures
[nikiroo-utils.git] / Makefile
CommitLineData
7d4115a5
KL
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
33default: all
34
35.SUFFIXES: .class .java
36
37SRC_DIR = src
38ANT_TARGET_DIR = build
39TARGET_DIR = classes
40
624ce48e 41JEXER_SRC = $(SRC_DIR)/jexer/TApplication.java \
df8de03f
KL
42 $(SRC_DIR)/jexer/TCommand.java \
43 $(SRC_DIR)/jexer/TKeypress.java \
624ce48e
KL
44 $(SRC_DIR)/jexer/bits/GraphicsChars.java \
45 $(SRC_DIR)/jexer/bits/Color.java \
46 $(SRC_DIR)/jexer/bits/CellAttributes.java \
47 $(SRC_DIR)/jexer/bits/Cell.java \
df8de03f
KL
48 $(SRC_DIR)/jexer/bits/ColorTheme.java \
49 $(SRC_DIR)/jexer/bits/MnemonicString.java \
50 $(SRC_DIR)/jexer/event/TInputEvent.java \
51 $(SRC_DIR)/jexer/event/TCommandEvent.java \
52 $(SRC_DIR)/jexer/event/TKeypressEvent.java \
53 $(SRC_DIR)/jexer/event/TMenuEvent.java \
54 $(SRC_DIR)/jexer/event/TMouseEvent.java \
55 $(SRC_DIR)/jexer/event/TResizeEvent.java \
56 $(SRC_DIR)/jexer/session/SessionInfo.java \
57 $(SRC_DIR)/jexer/session/TSessionInfo.java \
58 $(SRC_DIR)/jexer/io/Screen.java \
59 $(SRC_DIR)/jexer/backend/Backend.java
624ce48e
KL
60
61JEXER_BIN = $(TARGET_DIR)/jexer/TApplication.class \
df8de03f
KL
62 $(TARGET_DIR)/jexer/TCommand.class \
63 $(TARGET_DIR)/jexer/TKeypress.class \
624ce48e
KL
64 $(TARGET_DIR)/jexer/bits/GraphicsChars.class \
65 $(TARGET_DIR)/jexer/bits/Color.class \
66 $(TARGET_DIR)/jexer/bits/CellAttributes.class \
67 $(TARGET_DIR)/jexer/bits/Cell.class \
df8de03f
KL
68 $(TARGET_DIR)/jexer/bits/ColorTheme.class \
69 $(TARGET_DIR)/jexer/bits/MnemonicString.class \
70 $(TARGET_DIR)/jexer/event/TInputEvent.class \
71 $(TARGET_DIR)/jexer/event/TCommandEvent.class \
72 $(TARGET_DIR)/jexer/event/TKeypressEvent.class \
73 $(TARGET_DIR)/jexer/event/TMenuEvent.class \
74 $(TARGET_DIR)/jexer/event/TMouseEvent.class \
75 $(TARGET_DIR)/jexer/event/TResizeEvent.class \
76 $(TARGET_DIR)/jexer/session/SessionInfo.class \
77 $(TARGET_DIR)/jexer/session/TSessionInfo.class \
78 $(TARGET_DIR)/jexer/io/Screen.class \
79 $(TARGET_DIR)/jexer/backend/Backend.class
7d4115a5
KL
80
81JAVAC = javac
82JAVAFLAGS = -g -deprecation
83
84all: jexer demos
85
86run: jexer run-demo1
87
88all-demos: jexer demos/Demo1.class
89
90demos/Demo1.class: demos/Demo1.java
91 $(JAVAC) $(JAVAFLAGS) -cp $(TARGET_DIR) -d demos demos/Demo1.java
92
93run-demo1: demos/Demo1.class
94 java -cp $(TARGET_DIR):demos Demo1
95
96clean: clean-demos
97 -rm -r $(ANT_TARGET_DIR)
98 -rm -r $(TARGET_DIR)
99 -mkdir $(TARGET_DIR)
100
101clean-demos:
102 -rm demos/Demo1.class
103
104jexer: $(JEXER_SRC)
105 $(JAVAC) $(JAVAFLAGS) -sourcepath $(SRC_DIR) -d $(TARGET_DIR) $(JEXER_SRC)