source: trunk/gui/Makefile.in @ 158

Last change on this file since 158 was 158, checked in by mmc, 19 years ago
  • Fixed installation so that this "gui" part can be installed with standard autoconf techniques: configure, make all, make install The "gui" library is loaded via "package require RapptureGUI"
  • Added C code for Rappture::rlimit, to support limits on CPU time and file sizes. Default limits are 15 mins of CPU and 1MB for each file. These can be overridden in tool.xml by using <tool><limits><cputime> and <tool><limits><filesize>.
  • Added C code for Rappture::rusage, so we can collect resource usage for all child processes. Each Simulation now reports a line of usage to stderr as follows:

MiddlewareTime?: job=# event=simulation start=xxx cputime=xxx ...

  • Fixed Rappture::exec so that it reports proper error messages when rlimits are execeeded.
File size: 13.1 KB
Line 
1# Makefile.in --
2#
3#       This file is a Makefile for the Rappture GUI library.  If it has
4#       the name "Makefile.in" then it is a template for a Makefile.
5#       To generate the actual Makefile, run "./configure", which is a
6#       configuration script generated by the "autoconf" program
7#       (constructs like "@foo@" will get replaced in the actual Makefile.
8#
9#========================================================================
10# This is the parameterized name of the library that we are building.
11#========================================================================
12
13lib_BINARIES=$(RapptureGUI_LIB_FILE)
14BINARIES=$(lib_BINARIES)
15
16#========================================================================
17# Enumerate the names of the source files included in this package.
18# This will be used when a dist target is added to the Makefile.
19#========================================================================
20
21RapptureGUI_SOURCES = \
22  src/RpInit.c \
23  src/RpRlimit.c \
24  src/RpRusage.c
25SOURCES = $(RapptureGUI_SOURCES)
26
27#========================================================================
28# Enumerate the names of the object files included in this package.
29# These objects are created and linked into the final library.  In
30# most cases these object files will correspond to the source files
31# above.
32#========================================================================
33
34RapptureGUI_OBJECTS = \
35  RpInit.$(OBJEXT) \
36  RpRlimit.$(OBJEXT) \
37  RpRusage.$(OBJEXT)
38OBJECTS = $(RapptureGUI_OBJECTS)
39
40#========================================================================
41# The substitution of "RapptureGUI_LIB_FILE" into the variable name below
42# let's us refer to the objects for the library without knowing the name
43# of the library in advance.  It also lets us use the "$@" variable in
44# the rule for building the library, so we can refer to both the list of
45# objects and the library itself in a platform-independent manner.
46#========================================================================
47
48RapptureGUI_LIB_FILE = @RapptureGUI_LIB_FILE@
49$(RapptureGUI_LIB_FILE)_OBJECTS = $(RapptureGUI_OBJECTS)
50
51#========================================================================
52# This is a list of header files to be installed
53#========================================================================
54
55GENERIC_HDRS=
56
57#========================================================================
58# Nothing of the variables below this line need to be changed.  Please
59# check the TARGETS section below to make sure the make targets are
60# correct.
61#========================================================================
62
63SHELL = @SHELL@
64
65srcdir = @srcdir@
66top_srcdir = @top_srcdir@
67prefix = @prefix@
68exec_prefix = @exec_prefix@
69
70bindir = @bindir@
71sbindir = @sbindir@
72libexecdir = @libexecdir@
73datadir = @datadir@
74sysconfdir = @sysconfdir@
75sharedstatedir = @sharedstatedir@
76localstatedir = @localstatedir@
77libdir = @libdir@
78infodir = @infodir@
79mandir = @mandir@
80includedir = @includedir@
81oldincludedir = /usr/include
82
83DESTDIR =
84
85pkgdatadir = $(datadir)/@PACKAGE@@VERSION@
86pkglibdir = $(libdir)/@PACKAGE@@VERSION@
87pkgincludedir = $(includedir)/@PACKAGE@@VERSION@
88
89top_builddir = .
90
91INSTALL = @INSTALL@
92INSTALL_PROGRAM = @INSTALL_PROGRAM@
93INSTALL_DATA = @INSTALL_DATA@
94INSTALL_SCRIPT = @INSTALL_SCRIPT@
95INSTALL_STRIP_FLAG =
96transform = @program_transform_name@
97
98NORMAL_INSTALL = :
99PRE_INSTALL = :
100POST_INSTALL = :
101NORMAL_UNINSTALL = :
102PRE_UNINSTALL = :
103POST_UNINSTALL = :
104
105PACKAGE = @PACKAGE@
106VERSION = @VERSION@
107CC = @CC@
108CFLAGS_DEBUG = @CFLAGS_DEBUG@ -Wall
109CFLAGS_DEFAULT = @CFLAGS_DEFAULT@ -Wall
110CFLAGS_OPTIMIZE = @CFLAGS_OPTIMIZE@ -Wall
111CLEANFILES = @CLEANFILES@
112EXEEXT = @EXEEXT@
113LDFLAGS_DEBUG = @LDFLAGS_DEBUG@
114LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@
115LDFLAGS_OPTIMIZE = @LDFLAGS_OPTIMIZE@
116MAKE_LIB = @MAKE_LIB@
117MAKE_SHARED_LIB = @MAKE_SHARED_LIB@
118MAKE_STATIC_LIB = @MAKE_STATIC_LIB@
119OBJEXT = @OBJEXT@
120RANLIB = @RANLIB@
121SHLIB_CFLAGS = @SHLIB_CFLAGS@
122SHLIB_LD = @SHLIB_LD@
123SHLIB_LDFLAGS = @SHLIB_LDFLAGS@
124SHLIB_LD_LIBS = @SHLIB_LD_LIBS@
125STLIB_LD = @STLIB_LD@
126TCL_BIN_DIR = @TCL_BIN_DIR@
127TCL_DEFS = @TCL_DEFS@
128TCL_EXTRA_CFLAGS = @TCL_EXTRA_CFLAGS@
129TCL_LD_FLAGS = @TCL_LD_FLAGS@
130TCL_LIBS = @TCL_LIBS@
131TCL_SHLIB_LD_LIBS = @TCL_SHLIB_LD_LIBS@
132TCL_SRC_DIR = @TCL_SRC_DIR@
133TCL_DBGX = @TCL_DBGX@
134TCL_STUB_LIB_FILE = @TCL_STUB_LIB_FILE@
135TCL_STUB_LIB_SPEC = @TCL_STUB_LIB_SPEC@
136TCLSH_PROG = @TCLSH_PROG@
137
138BLT_SRC_DIR = @BLT_SRC_DIR@
139
140AUTOCONF = autoconf
141
142LDFLAGS = $(LDFLAGS_DEFAULT)
143
144INCLUDES = @TCL_INCLUDES@ -I$(BLT_SRC_DIR)
145
146EXTRA_CFLAGS = $(TCL_DEFS) $(PROTO_FLAGS) $(SECURITY_FLAGS) $(MEM_DEBUG_FLAGS) $(KEYSYM_FLAGS) $(NO_DEPRECATED_FLAGS)
147
148DEFS = @DEFS@ $(EXTRA_CFLAGS)
149
150ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
151mkinstalldirs = $(SHELL) $(top_srcdir)/cf/mkinstalldirs
152CONFIG_CLEAN_FILES = pkgIndex.tcl init.tcl
153
154CPPFLAGS = @CPPFLAGS@
155LIBS = @LIBS@
156AR = ar
157CFLAGS = @CFLAGS@
158COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
159CCLD = $(CC)
160LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
161
162#========================================================================
163# Start of user-definable TARGETS section
164#========================================================================
165
166#========================================================================
167# TEA TARGETS.  Please note that the "libraries:" target refers to platform
168# independent files, and the "binaries:" target inclues executable programs and
169# platform-dependent libraries.  Modify these targets so that they install
170# the various pieces of your package.  The make and install rules
171# for the BINARIES that you specified above have already been done.
172#========================================================================
173
174all: binaries libraries doc
175
176#========================================================================
177# The binaries target builds executable programs, Windows .dll's, unix
178# shared/static libraries, and any other platform-dependent files.
179# The list of targets to build for "binaries:" is specified at the top
180# of the Makefile, in the "BINARIES" variable.
181#========================================================================
182
183binaries: $(BINARIES)
184
185libraries:
186
187doc:
188
189install: all install-binaries install-libraries
190
191install-binaries: binaries install-lib-binaries install-bin-binaries
192
193#========================================================================
194# This rule installs platform-independent files, such as header files.
195#========================================================================
196
197install-libraries: libraries
198        $(mkinstalldirs) $(includedir)
199        echo "Installing header files in $(includedir)"
200        @for i in $(GENERIC_HDRS) ; do \
201            echo "Installing $$i" ; \
202            $(INSTALL_DATA) $$i $(includedir) ; \
203        done;
204
205#========================================================================
206# Install documentation.  Unix manpages should go in the $(mandir)
207# directory.
208#========================================================================
209
210install-doc: doc
211        $(mkinstalldirs) $(mandir)/man1
212        $(mkinstalldirs) $(mandir)/man3
213        $(mkinstalldirs) $(mandir)/mann
214        @for i in $(srcdir)/*.n; \
215            do \
216            echo "Installing $$i"; \
217            rm -f $(mandir)/mann/$$i; \
218            $(INSTALL_DATA) $$i $(mandir)/mann/$$i ; \
219            chmod 444 $(mandir)/mann/$$i; \
220            done
221
222test:
223
224depend:
225
226#========================================================================
227# Enumerate the names of the object files included in this package.
228# These objects are created and linked into the final library.  In
229# most cases these object files will correspond to the source files
230# above.
231#
232# $(RapptureGUI_LIB_FILE) should be listed as part of the BINARIES variable
233# at the top of the Makefile.  That will ensure that this target is built
234# when you run "make binaries".
235#
236# You shouldn't need to modify this target, except to change the package
237# name from "Rappture" to your package's name.
238#========================================================================
239
240$(RapptureGUI_LIB_FILE): $(RapptureGUI_OBJECTS)
241        -rm -f $(RapptureGUI_LIB_FILE)
242        @MAKE_LIB@
243        $(RANLIB) $(RapptureGUI_LIB_FILE)
244
245#========================================================================
246# We need to enumerate the list of .c to .o lines here.
247# Unfortunately, there does not seem to be any other way to do this
248# in a Makefile-independent way.  We can't use VPATH because it picks up
249# object files that may be located in the source directory.
250#
251# In the following lines, $(srcdir) refers to the toplevel directory
252# containing your extension.  If your sources are in a subdirectory,
253# you will have to modify the paths to reflect this:
254#
255# exampleA.$(OBJEXT): $(srcdir)/src/win/exampleA.c
256#       $(COMPILE) -c `@CYGPATH@ $(srcdir)/src/win/exampleA.c` -o $@
257#========================================================================
258
259RpInit.$(OBJEXT): $(srcdir)/src/RpInit.c
260        $(COMPILE) -c `@CYGPATH@ $(srcdir)/src/RpInit.c` -o $@
261
262RpRlimit.$(OBJEXT): $(srcdir)/src/RpRlimit.c
263        $(COMPILE) -c `@CYGPATH@ $(srcdir)/src/RpRlimit.c` -o $@
264
265RpRusage.$(OBJEXT): $(srcdir)/src/RpRusage.c
266        $(COMPILE) -c `@CYGPATH@ $(srcdir)/src/RpRusage.c` -o $@
267
268
269#========================================================================
270# End of user-definable section
271#========================================================================
272
273#========================================================================
274# Don't modify the file to clean here.  Instead, set the "CLEANFILES"
275# variable in configure.in
276#========================================================================
277
278clean: 
279        -test -z "$(BINARIES)" || rm -f $(BINARIES)
280        -rm -f *.o core *.core
281        -rm -f *.$(OBJEXT)
282        -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
283
284distclean: clean
285        -rm -f *.tab.c
286        -rm -f Makefile $(CONFIG_CLEAN_FILES)
287        -rm -f config.cache config.log stamp-h stamp-h[0-9]*
288        -rm -f config.status
289        -rm -rf autom4te.cache
290
291#========================================================================
292# Install binary object libraries.  On Windows this includes both .dll and
293# .lib files.  Because the .lib files are not explicitly listed anywhere,
294# we need to deduce their existence from the .dll file of the same name.
295# Additionally, the .dll files go into the bin directory, but the .lib
296# files go into the lib directory.  On Unix platforms, all library files
297# go into the lib directory.  In addition, this will generate the pkgIndex.tcl
298# file in the install location (assuming it can find a usable tclsh8.2 shell)
299#
300# You should not have to modify this target.
301#========================================================================
302
303install-lib-binaries: installdirs
304        @list='$(lib_BINARIES)'; for p in $$list; do \
305          if test -f $$p; then \
306            ext=`echo $$p|sed -e "s/.*\.//"`; \
307            if test "x$$ext" = "xdll"; then \
308                echo " $(INSTALL_DATA) $$p $(DESTDIR)$(bindir)/$$p"; \
309                $(INSTALL_DATA) $$p $(DESTDIR)$(bindir)/$$p; \
310                lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \
311                if test -f $$lib; then \
312                    echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib"; \
313                    $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib; \
314                fi; \
315            else \
316                echo " $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/$$p"; \
317                $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/$$p; \
318            fi; \
319          else :; fi; \
320        done
321        @list='$(lib_BINARIES)'; for p in $$list; do \
322          if test -f $$p; then \
323            echo " $(RANLIB) $(DESTDIR)$(bindir)/$$p"; \
324            $(RANLIB) $(DESTDIR)$(bindir)/$$p; \
325          else :; fi; \
326        done
327        $(mkinstalldirs) $(pkglibdir)/scripts
328        @for i in $(srcdir)/scripts/*.tcl; do \
329            echo "Installing $$i" ; \
330            $(INSTALL_DATA) $$i $(DESTDIR)$(pkglibdir)/scripts ; \
331        done;
332        $(TCLSH_PROG) $(srcdir)/cf/mkindex.tcl $(DESTDIR)$(pkglibdir)/scripts
333        $(mkinstalldirs) $(pkglibdir)/scripts/images
334        @for i in $(srcdir)/scripts/images/*.gif; do \
335            echo "Installing $$i" ; \
336            $(INSTALL_DATA) $$i $(DESTDIR)$(pkglibdir)/scripts/images ; \
337        done;
338        $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir)/pkgIndex.tcl
339        $(INSTALL_DATA) init.tcl $(DESTDIR)$(pkglibdir)/init.tcl
340
341#========================================================================
342# Install binary executables (e.g. .exe files)
343#
344# You should not have to modify this target.
345#========================================================================
346
347install-bin-binaries: installdirs
348        @list='$(bin_BINARIES)'; for p in $$list; do \
349          if test -f $$p; then \
350            echo " $(INSTALL_DATA) $$p $(DESTDIR)$(bindir)/$$p"; \
351            $(INSTALL_DATA) $$p $(DESTDIR)$(bindir)/$$p; \
352          else :; fi; \
353        done
354
355.SUFFIXES: .c .o .obj
356
357Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
358        cd $(top_builddir) \
359          && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
360
361config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
362        $(SHELL) ./config.status --recheck
363$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
364        cd $(srcdir) && $(AUTOCONF)
365
366
367uninstall-binaries:
368        @$(NORMAL_UNINSTALL)
369        list='$(BINARIES)'; for p in $$list; do \
370          rm -f $(DESTDIR)$(libdir)/$$p; \
371        done
372
373installdirs:
374        $(mkinstalldirs)  $(DESTDIR)$(libdir)
375        $(mkinstalldirs)  $(DESTDIR)$(bindir)
376        $(mkinstalldirs)  $(DESTDIR)$(pkglibdir)
377
378.PHONY: all binaries clean depend distclean doc install installdirs \
379libraries test
380
381# Tell versions [3.59,3.63) of GNU make to not export all variables.
382# Otherwise a system limit (for SysV at least) may be exceeded.
383.NOEXPORT:
Note: See TracBrowser for help on using the repository browser.