aboutsummaryrefslogtreecommitdiffstats
path: root/XXMakefile
blob: 4ebb0c6371a2f7c03c1a0631bbb752e0d38c3491 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
#ifdef makefile_parameter

BIN_DIR = /usr/local/bin
HELP_DIR = /usr/local/lib/w3m
LIB_DIR = /usr/local/lib/w3m
HELP_FILE = w3mhelp-w3m_ja.html
SYS_LIBRARIES = -lgpm  -lbsd -lnsl -ltermcap  -L/usr/local/ssl/lib -lssl -lcrypto 
LOCAL_LIBRARIES = 
CC = gcc
MYCFLAGS = -g -Wall -I./gc/include  -I/usr/local/ssl/include/openssl -I/usr/local/ssl/include
GCCFLAGS = -g -Wall -I./gc/include -DATOMIC_UNCOLLECTABLE -DNO_EXECUTE_PERMISSION -DALL_INTERIOR_POINTERS -DSILENT -DNO_DEBUGGING #-DNO_SIGNALS
KEYBIND_SRC = keybind.c
KEYBIND_OBJ = keybind.o
EXT=
MATHLIB=-lm
GCLIB=gc/gc.a
GCTARGET=gc/gc.a
RANLIB=ranlib
MKDIR=mkdir -p
VERSION=0.2.1
MODEL=Linux.i686-monster-ja
#else
SRCS=main.c file.c buffer.c display.c etc.c search.c linein.c table.c local.c \
	form.c map.c frame.c rc.c menu.c mailcap.c\
	func.c cookie.c history.c backend.c $(KEYBIND_SRC)
OBJS=main.o file.o buffer.o display.o etc.o search.o linein.o table.o local.o\
	form.o map.o frame.o rc.o menu.o mailcap.o\
	func.o cookie.o history.o backend.o $(KEYBIND_OBJ)
LSRCS=terms.c conv.c url.c ftp.c anchor.c mimehead.c hash.c parsetagx.c\
	tagtable.c istream.c
LOBJS=terms.o conv.o url.o ftp.o anchor.o mimehead.o hash.o parsetagx.o\
	tagtable.o istream.o
LLOBJS=version.o
ALIBOBJS=Str.o indep.o regex.o textlist.o parsetag.o myctype.o
ALIB=libindep.a
ALLOBJS=$(OBJS) $(LOBJS) $(LLOBJS)

TARGET=w3m$(EXT)
BOOKMARKER=w3mbookmark$(EXT)
HELPER=w3mhelperpanel$(EXT)
TARGETS=$(TARGET) $(BOOKMARKER) $(HELPER)

INCLUDES=-I.

DEFS=$(INCLUDES) # -DDEBUG
CFLAGS=$(MYCFLAGS) $(DEFS) 
LIBS=-L. -lindep $(GCLIB) $(MATHLIB) $(LOCAL_LIBRARIES) $(SYS_LIBRARIES)
INSTALL=sh install.sh
INSTALL2=sh ../install.sh
AR=ar

all: $(TARGETS)

$(TARGET): $(ALLOBJS) $(ALIB) $(GCTARGET)
	$(CC) $(CFLAGS) -o $(TARGET) $(ALLOBJS) $(LIBS)

$(ALIB): $(ALIBOBJS)
	$(AR) rv $(ALIB) $(ALIBOBJS)
	$(RANLIB) $(ALIB)

$(OBJS): fm.h funcname1.h

tagtable.c: html.h tagtable.tab mktable$(EXT)
	./mktable 100 tagtable.tab > tagtable.c

func.o: funcname.c
keybind.o: funcname2.h
keybind_lynx.o: funcname2.h
parsetagx.o: html.c

funcname.c: funcname.tab
	awk -f funcname0.awk funcname.tab > funcname.c

funcname1.h: funcname.tab
	awk -f funcname1.awk funcname.tab > funcname1.h

funcname2.h: funcname.tab
	awk -f funcname2.awk funcname.tab > funcname2.h

mktable$(EXT): mktable.o hash.o $(ALIB) $(GCTARGET)
	$(CC) $(CFLAGS) -o mktable$(EXT) mktable.o hash.o  $(LIBS)

$(BOOKMARKER): w3mbookmark.o $(ALIB) $(GCTARGET)
	$(CC) $(CFLAGS) -o $(BOOKMARKER) w3mbookmark.o  $(LIBS)

$(HELPER): w3mhelperpanel.o $(ALIB) $(GCTARGET)
	$(CC) $(CFLAGS) -o $(HELPER) w3mhelperpanel.o  $(LIBS)

gc/gc.a:
	cd gc; make CC='$(CC)' CFLAGS='$(GCCFLAGS)'

install: $(TARGETS)
	-$(MKDIR) $(DESTDIR)$(BIN_DIR)
	-$(MKDIR) $(DESTDIR)$(HELP_DIR)
	-$(MKDIR) $(DESTDIR)$(LIB_DIR)
	$(INSTALL) -m 755 $(TARGET) $(DESTDIR)$(BIN_DIR)/$(TARGET)
	$(INSTALL) -m 644 w3mhelp-w3m_en.html $(DESTDIR)$(HELP_DIR)/w3mhelp-w3m_en.html
	$(INSTALL) -m 644 w3mhelp-w3m_ja.html $(DESTDIR)$(HELP_DIR)/w3mhelp-w3m_ja.html
	$(INSTALL) -m 644 w3mhelp-lynx_en.html $(DESTDIR)$(HELP_DIR)/w3mhelp-lynx_en.html
	$(INSTALL) -m 644 w3mhelp-lynx_ja.html $(DESTDIR)$(HELP_DIR)/w3mhelp-lynx_ja.html
	$(INSTALL) -m 644 $(HELP_FILE) $(DESTDIR)$(HELP_DIR)/w3mhelp.html
	for d in $(BOOKMARKER) $(HELPER); do $(INSTALL) -m 755 $$d $(DESTDIR)$(LIB_DIR)/$$d; done
	(cd scripts; for i in *.cgi; do $(INSTALL2) -m 755 $$i $(DESTDIR)$(LIB_DIR)/$$i; done)

uninstall:
	-$(RM) $(BIN_DIR)/$(TARGET)
	-$(RM) $(HELP_DIR)/w3mhelp-lynx_en.html
	-$(RM) $(HELP_DIR)/w3mhelp-lynx_ja.html
	-$(RM) $(HELP_DIR)/w3mhelp-w3m_en.html 
	-$(RM) $(HELP_DIR)/w3mhelp-w3m_ja.html 
	-$(RM) $(HELP_DIR)/w3mhelp.html

clean: sweep
	rm -f *.o *.a $(TARGETS) mktable$(EXT)

sweep:
	-rm -f core *~ *.bak *.orig *.rej

depend: 
	makedepend $(CFLAGS) *.c

dist:
	cd ..; mv w3m w3m-$(VERSION); tar cvfz w3m-$(VERSION).tar.gz w3m-$(VERSION); mv w3m-$(VERSION) w3m

bindist:
	cd ..; mv w3m w3m-$(VERSION); tar cvfz w3m-$(VERSION)-$(MODEL).tar.gz w3m-$(VERSION)/{w3m*,doc*,Bonus*,README,scripts}; mv w3m-$(VERSION) w3m

# DO NOT DELETE