blob: e7a8545afc387eac1c81013fe87a1531eeca4254 (
plain)
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
|
# The Gtk and Curses UIs have their own subdirectories.
# Either of them will build libsciteco-interface.a
if INTERFACE_GTK
SUBDIRS = interface-gtk
LIBSCITECO_INTERFACE = interface-gtk/libsciteco-interface.la
else
SUBDIRS = interface-curses
LIBSCITECO_INTERFACE = interface-curses/libsciteco-interface.la
endif
include $(top_srcdir)/bootstrap.am
include $(top_srcdir)/contrib/scintilla.am
# FIXME: Common flags should be in configure.ac
AM_CFLAGS = -std=gnu11 -Wall -Wno-initializer-overrides -Wno-unused-value
AM_CPPFLAGS += -I$(top_srcdir)/contrib/rb3ptr
AM_LDFLAGS =
if STATIC_EXECUTABLES
# AM_LDFLAGS are libtool flags, NOT compiler/linker flags
AM_LDFLAGS += -all-static
endif
BUILT_SOURCES =
dist_noinst_SCRIPTS = symbols-extract.tes
# Emscripten HTML page and Unix desktop file:
EXTRA_DIST = sciteco.html sciteco.desktop
noinst_LTLIBRARIES = libsciteco-base.la
libsciteco_base_la_SOURCES = main.c sciteco.h list.h \
memory.c memory.h \
string-utils.c string-utils.h \
file-utils.c file-utils.h \
error.c error.h \
cmdline.c cmdline.h \
undo.c undo.h \
expressions.c expressions.h \
doc.c doc.h \
eol.c eol.h \
qreg.c qreg.h \
qreg-commands.c qreg-commands.h \
ring.c ring.h \
parser.c parser.h \
core-commands.c core-commands.h \
move-commands.c move-commands.h \
search.c search.h \
spawn.c spawn.h \
glob.c glob.h \
goto.c goto.h \
goto-commands.c goto-commands.h \
help.c help.h \
rb3str.c rb3str.h \
symbols.c symbols.h \
lexer.c lexer.h \
view.c view.h \
interface.c interface.h
# NOTE: We cannot link in Scintilla (static library) into
# a libtool convenience library
libsciteco_base_la_LIBADD = $(LIBSCITECO_INTERFACE) \
$(top_builddir)/contrib/rb3ptr/librb3ptr.la
if REPLACE_MALLOC
libsciteco_base_la_LIBADD += $(top_builddir)/contrib/dlmalloc/libdlmalloc.la
endif
if BOOTSTRAP
noinst_PROGRAMS = sciteco-minimal
sciteco_minimal_SOURCES =
symbols-scintilla.c symbols-scilexer.c : sciteco-minimal$(EXEEXT)
endif
sciteco_minimal_LDADD = libsciteco-base.la $(LIBSCINTILLA)
if LEXILLA
sciteco_minimal_LDADD += $(LIBLEXILLA)
endif
# Scintilla is unfortunately still written in C++, so we must force
# Automake to use the C++ linker when linking the binaries.
# The following hack is actually advocated in the Automake manual.
nodist_EXTRA_sciteco_minimal_SOURCES = fuck-this-shit.cpp
bin_PROGRAMS = sciteco
sciteco_SOURCES =
nodist_sciteco_SOURCES = symbols-scintilla.c
if LEXILLA
nodist_sciteco_SOURCES += symbols-scilexer.c
endif
sciteco_LDADD = $(sciteco_minimal_LDADD)
# see above
nodist_EXTRA_sciteco_SOURCES = fuck-this-shit.cpp
if WIN32
# Prevent MinGW from failing on non-Unicode command lines that cannot
# be converted into the system code page.
AM_LDFLAGS += -municode
# Compile in resource (contains the icon)
sciteco_SOURCES += sciteco.rc
.rc.o:
@RC@ $< $@
endif
CLEANFILES = $(BUILT_SOURCES) \
symbols-scintilla.c symbols-scilexer.c
symbols-scintilla.c : @SCINTILLA_PATH@/include/Scintilla.h \
symbols-extract.tes
$(SCITECO_MINIMAL) -8m -- @srcdir@/symbols-extract.tes \
-p "SCI_" -n teco_symbol_list_scintilla $@ $<
symbols-scilexer.c : @LEXILLA_PATH@/include/SciLexer.h \
symbols-extract.tes
$(SCITECO_MINIMAL) -8m -- @srcdir@/symbols-extract.tes \
-p "SCE_" -n teco_symbol_list_scilexer $@ $<
|