# Copyright 1998 Free Software Foundation, Inc. # This file is part of GDB. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. all: libtui.a srcdir=@srcdir@ VPATH = @srcdir@ SHELL = @SHELL@ CC=@CC@ CFLAGS=@CFLAGS@ AR=@AR@ RANLIB=@RANLIB@ # Host and target-dependent makefile fragments come in here. @host_makefile_frag@ @target_makefile_frag@ # End of host and target-dependent makefile fragments # Where is our "include" directory? Typically $(srcdir)/../include. # This is essentially the header file directory for the library # routines in libiberty. INCLUDE_DIR = $(srcdir)/../../include INCLUDE_CFLAGS = -I$(INCLUDE_DIR) # Configured by the --with-mmalloc option to configure. MMALLOC = @MMALLOC@ MMALLOC_CFLAGS = @MMALLOC_CFLAGS@ # Where is the BFD library? Typically in ../bfd. BFD_DIR = ../../bfd BFD_SRC = $(srcdir)/$(BFD_DIR) BFD_CFLAGS = -I$(BFD_DIR) -I$(BFD_SRC) # Where is the READLINE library? Typically in ../readline. READLINE_DIR = ../../readline READLINE_SRC = $(srcdir)/$(READLINE_DIR) READLINE_CFLAGS = -I$(READLINE_SRC) # Where is the INTL library? Typically in ../intl. INTL_DIR = ../../intl INTL_SRC = $(srcdir)/$(INTL_DIR) INTL_CFLAGS = -I$(INTL_DIR) -I$(INTL_SRC) # Where is the TCL library? Typically in ../tcl. TCL_CFLAGS = @TCLHDIR@ # Where is the TK library? Typically in ../tk. TK_CFLAGS = @TKHDIR@ @TK_BUILD_INCLUDES@ # Where is Itcl? Typically in ../itcl. ITCL_CFLAGS = @ITCLHDIR@ # Where is Tix? Typically in ../tix. TIX_CFLAGS = @TIXHDIR@ X11_CFLAGS = @TK_XINCLUDES@ ENABLE_IDE= @ENABLE_IDE@ GUI_CFLAGS_X = -I$(srcdir)/../../libgui/src IDE_CFLAGS_X = -I$(srcdir)/../../libidetcl/src -I$(srcdir)/../../libide/src \ `if [ x"$(ENABLE_IDE)" != x ] ; then \ echo -DIDE -I$(srcdir)/../../ilu/runtime/mainloop;\ fi` IDE_CFLAGS=$(GUI_CFLAGS_X) $(IDE_CFLAGS_X) ENABLE_CFLAGS= @ENABLE_CFLAGS@ # -I. for config files. # -I$(srcdir) for gdb internal headers and possibly for gnu-regex.h also. # -I$(srcdir)/config for more generic config files. # It is also possible that you will need to add -I/usr/include/sys if # your system doesn't have fcntl.h in /usr/include (which is where it # should be according to Posix). DEFS = @DEFS@ GDB_CFLAGS = -I. -I.. -I$(srcdir) -I$(srcdir)/.. -I$(srcdir)/../config $(DEFS) # M{H,T}_CFLAGS, if defined, have host- and target-dependent CFLAGS # from the config directory. GLOBAL_CFLAGS = $(MT_CFLAGS) $(MH_CFLAGS) #PROFILE_CFLAGS = -pg # INTERNAL_CFLAGS is the aggregate of all other *CFLAGS macros. INTERNAL_CFLAGS = $(CFLAGS) $(GLOBAL_CFLAGS) $(PROFILE_CFLAGS) \ $(GDB_CFLAGS) $(READLINE_CFLAGS) $(BFD_CFLAGS) \ $(MMALLOC_CFLAGS) $(INCLUDE_CFLAGS) $(INTL_CFLAGS) \ $(ENABLE_CFLAGS) HEADERS = tuiIO.h tuiData.h tuiGeneralWin.h tuiLayout.h tuiStack.h \ tuiSource.h tuiCommand.h tuiWin.h tuiDisassem.h \ tuiSourceWin.h tuiRegs.h tuiDataWin.h SOURCES = tui.c tuiData.c tuiSource.c tuiStack.c tuiIO.c \ tuiGeneralWin.c tuiLayout.c tuiWin.c tuiCommand.c \ tuiDisassem.c tuiSourceWin.c tuiRegs.c tuiDataWin.c OBJECTS = tui.o tuiData.o tuiSource.o tuiStack.o tuiIO.o \ tuiGeneralWin.o tuiLayout.o tuiWin.o tuiCommand.o \ tuiDisassem.o tuiSourceWin.o tuiRegs.o tuiDataWin.o \ tuiInit.o # Prevent Sun make from putting in the machine type. Setting # TARGET_ARCH to nothing works for SunOS 3, 4.0, but not for 4.1. .c.o: $(CC) -c $(INTERNAL_CFLAGS) $< .SUFFIXES: .cpp .c.cpp: $(CC) -E $(INTERNAL_CFLAGS) $< > $@ libtui.a: $(OBJECTS) rm -f libtui.a $(AR) rc libtui.a $(OBJECTS) $(RANLIB) libtui.a tui.o: tui.c tui.h tuiData.h tuiLayout.h tuiIO.h tuiRegs.h tuiWin.h tuiCommand.o: tui.h tuiData.h tuiWin.h tuiIO.h tuiData.o: tui.h tuiData.h tuiDataWin.o: tui.h tuiData.h tuiRegs.h tuiDisassem.o: tui.h tuiData.h tuiLayout.h tuiSourceWin.h tuiStack.h tuiGeneralWin.o: tui.h tuiData.h tuiGeneralWin.h tuiIO.o: tui.h tuiData.h tuiIO.h tuiCommand.h tuiWin.h tuiLayout.o: tui.h tuiData.h tuiGeneralWin.h tuiStack.h tuiRegs.h \ tuiDisassem.h tuiRegs.o: tui.h tuiData.h tuiLayout.h tuiWin.h tuiSource.o: tui.h tuiData.h tuiStack.h tuiSourceWin.h tuiSource.h tuiSourceWin.o: tui.h tuiData.h tuiStack.h tuiSourceWin.h tuiSource.h \ tuiDisassem.h tuiStack.o: tui.h tuiData.h tuiStack.h tuiSourceWin.h tuiWin.o: tui.h tuiData.h tuiGeneralWin.h tuiStack.h tuiSourceWin.h \ tuiDataWin.h tuiInit.o: tuiInit.c tuiInit.c: $(SOURCES) @echo Making tuiInit.c @rm -f init.c-tmp @echo '/* Do not modify this file. */' >init.c-tmp @echo '/* It is created automatically by the Makefile. */'>>init.c-tmp @echo '#include "ansidecl.h"' >>init.c-tmp @echo 'extern void initialize_tui_files PARAMS ((void));' >>init.c-tmp @echo 'void initialize_tui_files PARAMS ((void)) {' >>init.c-tmp @-( cd $(srcdir) ; grep '^_initialize_[a-z_0-9A-Z]* *(' $(SOURCES) ) 2>/dev/null \ | sed -e 's/^.*://' -e 's/^\([a-z_0-9A-Z]*\).*/ {extern void \1 PARAMS ((void)); \1 ();}/' >>init.c-tmp @echo '}' >>init.c-tmp @mv init.c-tmp tuiInit.c clean: rm -f *.o *.a