1 |
siliconforks |
332 |
# -*- Mode: makefile -*- |
2 |
|
|
# |
3 |
|
|
# ***** BEGIN LICENSE BLOCK ***** |
4 |
|
|
# Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
5 |
|
|
# |
6 |
|
|
# The contents of this file are subject to the Mozilla Public License Version |
7 |
|
|
# 1.1 (the "License"); you may not use this file except in compliance with |
8 |
|
|
# the License. You may obtain a copy of the License at |
9 |
|
|
# http://www.mozilla.org/MPL/ |
10 |
|
|
# |
11 |
|
|
# Software distributed under the License is distributed on an "AS IS" basis, |
12 |
|
|
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License |
13 |
|
|
# for the specific language governing rights and limitations under the |
14 |
|
|
# License. |
15 |
|
|
# |
16 |
|
|
# The Original Code is Mozilla Communicator client code, released |
17 |
|
|
# March 31, 1998. |
18 |
|
|
# |
19 |
|
|
# The Initial Developer of the Original Code is |
20 |
|
|
# Simmule Turner and Rich Salz. |
21 |
|
|
# Portions created by the Initial Developer are Copyright (C) 1998 |
22 |
|
|
# the Initial Developer. All Rights Reserved. |
23 |
|
|
# |
24 |
|
|
# Contributor(s): |
25 |
|
|
# |
26 |
|
|
# Alternatively, the contents of this file may be used under the terms of |
27 |
|
|
# either the GNU General Public License Version 2 or later (the "GPL"), or |
28 |
|
|
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), |
29 |
|
|
# in which case the provisions of the GPL or the LGPL are applicable instead |
30 |
|
|
# of those above. If you wish to allow use of your version of this file only |
31 |
|
|
# under the terms of either the GPL or the LGPL, and not to allow others to |
32 |
|
|
# use your version of this file under the terms of the MPL, indicate your |
33 |
|
|
# decision by deleting the provisions above and replace them with the notice |
34 |
|
|
# and other provisions required by the GPL or the LGPL. If you do not delete |
35 |
|
|
# the provisions above, a recipient may use your version of this file under |
36 |
|
|
# the terms of any one of the MPL, the GPL or the LGPL. |
37 |
|
|
# |
38 |
|
|
# ***** END LICENSE BLOCK ***** |
39 |
|
|
|
40 |
|
|
# |
41 |
|
|
# Copyright 1992,1993 Simmule Turner and Rich Salz. All rights reserved. |
42 |
|
|
# |
43 |
|
|
# This software is not subject to any license of the American Telephone |
44 |
|
|
# and Telegraph Company or of the Regents of the University of California. |
45 |
|
|
# |
46 |
|
|
# Permission is granted to anyone to use this software for any purpose on |
47 |
|
|
# any computer system, and to alter it and redistribute it freely, subject |
48 |
|
|
# to the following restrictions: |
49 |
|
|
# 1. The authors are not responsible for the consequences of use of this |
50 |
|
|
# software, no matter how awful, even if they arise from flaws in it. |
51 |
|
|
# 2. The origin of this software must not be misrepresented, either by |
52 |
|
|
# explicit claim or by omission. Since few users ever read sources, |
53 |
|
|
# credits must appear in the documentation. |
54 |
|
|
# 3. Altered versions must be plainly marked as such, and must not be |
55 |
|
|
# misrepresented as being the original software. Since few users |
56 |
|
|
# ever read sources, credits must appear in the documentation. |
57 |
|
|
# 4. This notice may not be removed or altered. |
58 |
|
|
# |
59 |
|
|
|
60 |
|
|
# |
61 |
|
|
# Unix makefile for editline library. |
62 |
|
|
# |
63 |
|
|
|
64 |
|
|
## Set your options: |
65 |
|
|
## -DANSI_ARROWS ANSI arrows keys work like emacs. |
66 |
|
|
## -DHAVE_STDLIB Have <stdlib.h>. |
67 |
|
|
## -DHAVE_TCGETATTR Have tcgetattr(), tcsetattr(). |
68 |
|
|
## -DHAVE_TERMIO Have "struct termio" and <termio.h> |
69 |
|
|
## (If neither of above two, we use <sgttyb.h> and BSD ioctl's) |
70 |
|
|
## -DHIDE Make static functions static (non debug). |
71 |
|
|
## -DHIST_SIZE=n History size. |
72 |
|
|
## -DNEED_STRDUP Don't have strdup(). |
73 |
|
|
## -DUNIQUE_HISTORY Don't save command if same as last one. |
74 |
|
|
## -DUSE_DIRENT Use <dirent.h>, not <sys/dir.h>? |
75 |
|
|
## -DUSE_TERMCAP Use the termcap library for terminal size |
76 |
|
|
## see LDFLAGS, below, if you set this. |
77 |
|
|
## -DNEED_PERROR Don't have perror() (used in testit) |
78 |
|
|
|
79 |
|
|
## If you have -DUSE_TERMCAP, set this as appropriate: |
80 |
|
|
#LDFLAGS = -ltermlib |
81 |
|
|
#LDFLAGS = -ltermcap |
82 |
|
|
|
83 |
|
|
DEFS = -DANSI_ARROWS -DHAVE_TCGETATTR -DHIDE -DUSE_DIRENT -DSYS_UNIX \ |
84 |
|
|
-DHAVE_STDLIB -DUNIQUE_HISTORY |
85 |
|
|
|
86 |
|
|
DEPTH = .. |
87 |
|
|
|
88 |
|
|
include $(DEPTH)/config.mk |
89 |
|
|
|
90 |
|
|
LOCAL_OBJDIR = $(OBJDIR)/editline |
91 |
|
|
|
92 |
|
|
# |
93 |
|
|
# Default IEEE libm |
94 |
|
|
# |
95 |
|
|
CFLAGS += -DXP_UNIX $(OPTIMIZER) $(OS_CFLAGS) $(DEFINES) $(INCLUDES) \ |
96 |
|
|
-DJSFILE $(XCFLAGS) $(DEFS) |
97 |
|
|
|
98 |
|
|
INCFILES = editline.h |
99 |
|
|
.INIT: $(INCFILES) |
100 |
|
|
.KEEP_STATE: |
101 |
|
|
EDITLINE_CFILES = editline.c sysunix.c |
102 |
|
|
|
103 |
|
|
EDITLINE_OBJS = $(addprefix $(LOCAL_OBJDIR)/, $(EDITLINE_CFILES:.c=.o)) |
104 |
|
|
|
105 |
|
|
LIBRARY = $(LOCAL_OBJDIR)/libedit.a |
106 |
|
|
|
107 |
|
|
all: $(LIBRARY) |
108 |
|
|
|
109 |
|
|
export: |
110 |
|
|
|
111 |
|
|
# make objects to depen on $(LOCAL_OBJDIR) only when it exists |
112 |
|
|
$(EDITLINE_OBJS) : $(filter-out $(wildcard $(LOCAL_OBJDIR)), $(LOCAL_OBJDIR)) |
113 |
|
|
|
114 |
|
|
$(LOCAL_OBJDIR) : |
115 |
|
|
mkdir -p $@ |
116 |
|
|
|
117 |
|
|
$(LOCAL_OBJDIR)/%: %.c |
118 |
|
|
$(CC) -o $@ $(CFLAGS) $*.c $(LDFLAGS) |
119 |
|
|
|
120 |
|
|
$(LOCAL_OBJDIR)/%.o: %.c |
121 |
|
|
$(CC) -o $@ -c $(CFLAGS) $*.c |
122 |
|
|
|
123 |
|
|
$(LOCAL_OBJDIR)/%.o: %.s |
124 |
|
|
$(AS) -o $@ $(ASFLAGS) $*.s |
125 |
|
|
|
126 |
|
|
$(LIBRARY): $(EDITLINE_OBJS) |
127 |
|
|
$(AR) rv $@ $? |
128 |
|
|
$(RANLIB) $@ |
129 |
|
|
|
130 |
|
|
#libedit.a : $(EDITLINE_OBJS) |
131 |
|
|
# $(AR) cru $(LOCAL_OBJDIR)/libedit.a $(EDITLINE_OBJS) |
132 |
|
|
# $(RANLIB) $(LOCAL_OBJDIR)/libedit.a |
133 |
|
|
|
134 |
|
|
clean: |
135 |
|
|
rm -rf $(EDITLINE_OBJS) $(EDITLINE_OBJS:.o=.d) |
136 |
|
|
|
137 |
|
|
clobber: clean |
138 |
|
|
rm -rf $(LIBRARY) $(DEPENDENCIES) |
139 |
|
|
if test -d $(LOCAL_OBJDIR); then rmdir $(LOCAL_OBJDIR); fi |
140 |
|
|
|
141 |
|
|
SUFFIXES: .i |
142 |
|
|
%.i: %.c |
143 |
|
|
$(CC) -C -E $(CFLAGS) $< > $*.i |