1 # Copyright 1998 Free Software Foundation, Inc.
3 # This file is part of GDB.
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or
8 # (at your option) any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
31 # Host and target-dependent makefile fragments come in here.
33 @target_makefile_frag@
34 # End of host and target-dependent makefile fragments
36 # Where is our "include" directory? Typically $(srcdir)/../include.
37 # This is essentially the header file directory for the library
38 # routines in libiberty.
39 INCLUDE_DIR
= $(srcdir)/..
/..
/include
40 INCLUDE_CFLAGS
= -I
$(INCLUDE_DIR
)
42 # Configured by the --with-mmalloc option to configure.
44 MMALLOC_CFLAGS
= @MMALLOC_CFLAGS@
46 # Where is the BFD library? Typically in ../bfd.
48 BFD_SRC
= $(srcdir)/$(BFD_DIR
)
49 BFD_CFLAGS
= -I
$(BFD_DIR
) -I
$(BFD_SRC
)
51 # Where is the READLINE library? Typically in ../readline.
52 READLINE_DIR
= ..
/..
/readline
53 READLINE_SRC
= $(srcdir)/$(READLINE_DIR
)
54 READLINE_CFLAGS
= -I
$(READLINE_SRC
)
56 # Where is the INTL library? Typically in ../intl.
58 INTL_SRC
= $(srcdir)/$(INTL_DIR
)
59 INTL_CFLAGS
= -I
$(INTL_DIR
) -I
$(INTL_SRC
)
61 # Where is the TCL library? Typically in ../tcl.
62 TCL_CFLAGS
= @TCLHDIR@
64 # Where is the TK library? Typically in ../tk.
65 TK_CFLAGS
= @TKHDIR@ @TK_BUILD_INCLUDES@
67 # Where is Itcl? Typically in ../itcl.
68 ITCL_CFLAGS
= @ITCLHDIR@
70 # Where is Tix? Typically in ../tix.
71 TIX_CFLAGS
= @TIXHDIR@
73 X11_CFLAGS
= @TK_XINCLUDES@
75 ENABLE_IDE
= @ENABLE_IDE@
77 GUI_CFLAGS_X
= -I
$(srcdir)/..
/..
/libgui
/src
79 IDE_CFLAGS_X
= -I
$(srcdir)/..
/..
/libidetcl
/src
-I
$(srcdir)/..
/..
/libide
/src \
80 `if [ x"$(ENABLE_IDE)" != x ] ; then \
81 echo -DIDE -I$(srcdir)/../../ilu/runtime/mainloop;\
84 IDE_CFLAGS
=$(GUI_CFLAGS_X
) $(IDE_CFLAGS_X
)
86 ENABLE_CFLAGS
= @ENABLE_CFLAGS@
88 # -I. for config files.
89 # -I$(srcdir) for gdb internal headers and possibly for gnu-regex.h also.
90 # -I$(srcdir)/config for more generic config files.
92 # It is also possible that you will need to add -I/usr/include/sys if
93 # your system doesn't have fcntl.h in /usr/include (which is where it
94 # should be according to Posix).
96 GDB_CFLAGS
= -I.
-I..
-I
$(srcdir) -I
$(srcdir)/..
-I
$(srcdir)/..
/config
$(DEFS
)
98 # M{H,T}_CFLAGS, if defined, have host- and target-dependent CFLAGS
99 # from the config directory.
100 GLOBAL_CFLAGS
= $(MT_CFLAGS
) $(MH_CFLAGS
)
101 #PROFILE_CFLAGS = -pg
103 # INTERNAL_CFLAGS is the aggregate of all other *CFLAGS macros.
104 INTERNAL_CFLAGS
= $(CFLAGS
) $(GLOBAL_CFLAGS
) $(PROFILE_CFLAGS
) \
105 $(GDB_CFLAGS
) $(READLINE_CFLAGS
) $(BFD_CFLAGS
) \
106 $(MMALLOC_CFLAGS
) $(INCLUDE_CFLAGS
) $(INTL_CFLAGS
) \
109 HEADERS
= tuiIO.h tuiData.h tuiGeneralWin.h tuiLayout.h tuiStack.h \
110 tuiSource.h tuiCommand.h tuiWin.h tuiDisassem.h \
111 tuiSourceWin.h tuiRegs.h tuiDataWin.h
113 SOURCES
= tui.c tuiData.c tuiSource.c tuiStack.c tuiIO.c \
114 tuiGeneralWin.c tuiLayout.c tuiWin.c tuiCommand.c \
115 tuiDisassem.c tuiSourceWin.c tuiRegs.c tuiDataWin.c
117 OBJECTS
= tui.o tuiData.o tuiSource.o tuiStack.o tuiIO.o \
118 tuiGeneralWin.o tuiLayout.o tuiWin.o tuiCommand.o \
119 tuiDisassem.o tuiSourceWin.o tuiRegs.o tuiDataWin.o \
123 # Prevent Sun make from putting in the machine type. Setting
124 # TARGET_ARCH to nothing works for SunOS 3, 4.0, but not for 4.1.
126 $(CC
) -c
$(INTERNAL_CFLAGS
) $<
129 $(CC
) -E
$(INTERNAL_CFLAGS
) $< > $@
133 $(AR
) rc libtui.a
$(OBJECTS
)
136 tui.o
: tui.c tui.h tuiData.h tuiLayout.h tuiIO.h tuiRegs.h tuiWin.h
137 tuiCommand.o
: tui.h tuiData.h tuiWin.h tuiIO.h
138 tuiData.o
: tui.h tuiData.h
139 tuiDataWin.o
: tui.h tuiData.h tuiRegs.h
140 tuiDisassem.o
: tui.h tuiData.h tuiLayout.h tuiSourceWin.h tuiStack.h
141 tuiGeneralWin.o
: tui.h tuiData.h tuiGeneralWin.h
142 tuiIO.o
: tui.h tuiData.h tuiIO.h tuiCommand.h tuiWin.h
143 tuiLayout.o
: tui.h tuiData.h tuiGeneralWin.h tuiStack.h tuiRegs.h \
145 tuiRegs.o
: tui.h tuiData.h tuiLayout.h tuiWin.h
146 tuiSource.o
: tui.h tuiData.h tuiStack.h tuiSourceWin.h tuiSource.h
147 tuiSourceWin.o
: tui.h tuiData.h tuiStack.h tuiSourceWin.h tuiSource.h \
149 tuiStack.o
: tui.h tuiData.h tuiStack.h tuiSourceWin.h
150 tuiWin.o
: tui.h tuiData.h tuiGeneralWin.h tuiStack.h tuiSourceWin.h \
154 tuiInit.c
: $(SOURCES
)
155 @echo Making tuiInit.c
157 @echo
'/* Do not modify this file. */' >init.c-tmp
158 @echo
'/* It is created automatically by the Makefile. */'>>init.c-tmp
159 @echo
'#include "ansidecl.h"' >>init.c-tmp
160 @echo
'extern void initialize_tui_files PARAMS ((void));' >>init.c-tmp
161 @echo
'void initialize_tui_files PARAMS ((void)) {' >>init.c-tmp
162 @
-( cd
$(srcdir) ; grep
'^_initialize_[a-z_0-9A-Z]* *(' $(SOURCES
) ) 2>/dev
/null \
163 | sed
-e
's/^.*://' -e
's/^\([a-z_0-9A-Z]*\).*/ {extern void \1 PARAMS ((void)); \1 ();}/' >>init.c-tmp
164 @echo
'}' >>init.c-tmp
165 @mv init.c-tmp tuiInit.c