1# BEGIN LICENSE BLOCK 2# Version: CMPL 1.1 3# 4# The contents of this file are subject to the Cisco-style Mozilla Public 5# License Version 1.1 (the "License"); you may not use this file except 6# in compliance with the License. You may obtain a copy of the License 7# at www.eclipse-clp.org/license. 8# 9# Software distributed under the License is distributed on an "AS IS" 10# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See 11# the License for the specific language governing rights and limitations 12# under the License. 13# 14# The Original Code is The ECLiPSe Constraint Logic Programming System. 15# The Initial Developer of the Original Code is Cisco Systems, Inc. 16# Portions created by the Initial Developer are 17# Copyright (C) 1988-2006 Cisco Systems, Inc. All Rights Reserved. 18# 19# Contributor(s): 20# 21# END LICENSE BLOCK 22 23# SCCS CONTROL BLOCK: 24# 25# $Id: Makefile.in,v 1.19 2014/02/07 15:04:40 jschimpf Exp $ 26# 27# IDENTIFICATION: Makefile.in 28# 29# DESCRIPTION: Makefile for ECLiPSe kernel 30# 31# 32 33 34# *************** DIRECTORIES *************** 35 36top_srcdir = @top_srcdir@ 37top_builddir = @top_builddir@ 38 39# This is where the installation goes, default should be ../.. 40PREFIX=@prefix@ 41 42ARCH = @ARCH@ 43 44# The directory of the 'sepia' subsystem 45SEPIA = .. 46 47# where to find our auxiliary libraries, e.g. lamsg, lshm etc. 48SYS_LIB = $(top_builddir)/sys_lib/$(ARCH) 49# where to find library header files, e.g. amsg.h gmp.h, memman.h 50SYS_INCL = $(top_builddir)/sys_include 51# where to find/install the runtime libraries 52RUN_LIB = $(PREFIX)/lib/$(ARCH) 53# Relative ld-run-path for our libraries. This prevents the need 54# for LD_LIBRARY_PATH when loading from the right current directory 55RELRUNPATH = . 56 57 58# where to find sources 59VPATH = ../src 60 61# *************** MACROS *************** 62OBJECT = sepia 63 64N_HEAP = 130 130 65T_HEAP = 130 140 66S_HEAP = 256 300 67X_HEAP = 256 600 68O_HEAP = 3000 0 69N_SEPIA = $(OBJECT) 70T_SEPIA = $(OBJECT) 71S_SEPIA = s$(OBJECT) 72X_SEPIA = x$(OBJECT) 73 74.SUFFIXES: $(SUFFIXES) .S .i .@OBJECTS_SUFFIX@ .cxx 75 76# *************** Configuration dependent definitions *************** 77 78# ECLiPSe compiler flags 79 80ECO_DBG = off 81 82 83# C compiler flags and defines 84 85EXE = @EXEEXT@ 86CC = @CC@ 87CPP = @CPP@ 88CXX = @CXX@ 89CXXCPP = @CXXCPP@ 90LD = @LD@ 91AR = @AR@ 92OPT_FLAGS = @OPT_FLAGS@ 93OPT_FLAGS_EMU = @OPT_FLAGS_EMU@ 94OPT_FLAGS_ARITH = @OPT_FLAGS_ARITH@ 95LOCAL_FLAGS = @LOCAL_FLAGS@ 96FLOAT_ROUND_FLAGS = @FLOAT_ROUND_FLAGS@ 97CFLAGS = @CFLAGS@ 98OBJECTS_SUFFIX = @OBJECTS_SUFFIX@ 99LIB_PREFIX = @LIB_PREFIX@ 100 101RANLIB = @RANLIB@ 102 103 104# linker flags and libraries 105# For linking executables (prefer static): 106# $(CC) $(LDFLAGS) -L$(SYS_LIB) -L(RUN_LIB) <obj> $(BASIC_LIBS) $(LIBS) 107# For linking executables (prefer dynamic): 108# $(CC) $(LDFLAGS) -L(RUN_LIB) -L$(SYS_LIB) <obj> $(BASIC_LIBS) $(LIBS) 109# For linking shared objects: 110# $(DYLD) $(DYNLDFLAGS) -L(RUN_LIB) -L$(SYS_LIB) <obj> $(BASIC_LIBS) $(LIBS) 111# For incremental linking: 112# $(LD) -r <obj> 113 114DYLD = @DYLD@ 115DYNLDFLAGS = @DYNLDFLAGS@ 116LDFLAGS = @LDFLAGS@ 117LIBS = @LIBS@ 118GRAPHLIBS = @GRAPHLIBS@ 119GMP_LIBDIR = @GMP_LIBDIR@ 120GMP_LIB = @GMP_LIB@ 121GMP_LD = @GMP_LD@ 122LDTCL = @LDTCL@ 123RUNPATH_LDFLAG = @RUNPATH_LDFLAG@ 124RUNPATH_DYLDFLAG = @RUNPATH_DYLDFLAG@ 125 126# postprocessor for emu.s 127 128OPTIMIZE = @OPTIMIZE@ 129 130 131# *************** FLAGS *************** 132 133CPPFLAGS = $(LOCAL_FLAGS) -I. -I$(SEPIA)/src -I$(SYS_INCL) @OS_INCLUDES@ -DOC -DDFID 134LINTFLAGS = -b -h -x -DNEW_ORACLE 135 136 137# *************** INCLUDES *************** 138 139EXT_INCLUDES = external.h error.h sepia.h ec_public.h types.h config.h \ 140 embed.h eclipse_cc.h eclipseclass.h eclipse.h intervals.h 141 142 143# *************** LIBRARIES *************** 144 145BASIC_LIBS = @GMP_LD@ -lshm 146# GMP_EXE_LD is the static libgmp if rpath is not supported (e.g. MacOS X) 147BASIC_EXE_LIBS = @GMP_EXE_LD@ -lshm 148PAR_LIBS = -lnsrv -lpds 149 150# *************** BUILDING OPTIONS ********** 151 152BUILD_WITH_TCL = @BUILD_WITH_TCL@ 153 154# *************** OBJECTS *************** 155 156COMMON_OBJECTS = dict.o read.o lex.o \ 157 emu.o proc_desc.o bip_tconv.o io.o write.o bip_comp.o \ 158 mem.o operator.o bip_record.o \ 159 bip_bag.o bip_heapevents.o bip_shelf.o bip_store.o \ 160 bip_array.o bip_strings.o bip_serialize.o \ 161 bip_db.o property.o term_copy.o bip_io.o \ 162 procedure.o \ 163 handle.o intervals.o \ 164 bip_arith.o bigrat.o bip_module.o bip_control.o bip_delay.o \ 165 bip_domain.o bip_misc.o elipsys_fd.o \ 166 bip_load.o code.o init.o \ 167 emu_c_env.o emu_util.o error.o external.o gc_stacks.o \ 168 handlers.o printam.o \ 169 addrmap.o eclipsedir.o embed.o os_support.o 170 171DEVSYS_OBJECTS = main.o 172 173SEPIA_OBJECTS = $(DEVSYS_OBJECTS) $(COMMON_OBJECTS) $(EXT_OBJECTS) 174 175PAR_OBJECTS = bip_parallel.o emu_par.o scheduler.o sch_util.o \ 176 trace.o worker.o 177 178MPS_OBJECTS = bip_mps.o upcalls.o 179 180DUMMYLIBS = lib1.o lib2.o lib3.o lib4.o lib5.o lib6.o lib7.o \ 181 dummy_mps.o dummy_par.o dummy_upcalls.o dummy_wm.o \ 182 whereami_default.o 183 184ALLDUMMYLIBS = $(DUMMYLIBS) dummy_bigrat.o 185 186EXT_OBJECTS = 187 188# *************** Sources (for lint etc) *************** 189 190SEPIA_SRC = $(COMMON_OBJECTS:%.o=%.c) $(DEVSYS_OBJECTS:%.o=%.c) 191PAR_SRC = $(PAR_OBJECTS:%.o=%.c) 192MPS_SRC = $(MPS_OBJECTS:%.o=%.c) 193SHM_SRC = $(SHM_OBJECTS:%.o=%.c) 194LINT_SRC = lamsg.c lbmsg.c lnsrv.c 195EG_SRC = Makefile.external eg.cc minimain.c 196 197 198# *************** Generic Rules *************** 199 200# force deletion of targets when command failed 201.DELETE_ON_ERROR: 202 203.c.o: 204 $(CC) $(OPT_FLAGS) $(CFLAGS) $(CPPFLAGS) -c $< 205 206.cc.o: 207 $(CXX) $(OPT_FLAGS) $(CFLAGS) $(CPPFLAGS) -c $< 208 209.S.o: 210 @S_TO_O@ 211 212.c.i: 213 $(CPP) $(CPPFLAGS) -P $< > $*.i 214 215.cc.i: 216 $(CXXCPP) $(CPPFLAGS) -P $< > $*.i 217 218.cxx.i: 219 $(CXXCPP) $(CPPFLAGS) -P $< > $*.i 220 221@LL_C_SO@ 222 @LD_C_SO@ 223 224@PL_O_SO@ 225 @PD_O_SO@ 226 227 228 229# *************** Development Targets *************** 230 231default: sepia$(EXE) 232 233# A statically linked standard development system, sepia kernel only 234# This is used during installation, e.g. for making .eco and .eci files 235sepia: $(EXT_OBJECTS) $(DEVSYS_OBJECTS) $(LIB_PREFIX)eclipse.a whereami.o libdummies.a $(BOOT_ECOS) 236 $(CC) $(OPT_FLAGS) $(LDFLAGS) $(DEVSYS_OBJECTS) \ 237 $(LIB_PREFIX)eclipse.a $(EXT_OBJECTS) whereami.o \ 238 -L$(SYS_LIB) \ 239 $(RUNPATH_LDFLAG)$(GMP_LIBDIR) \ 240 libdummies.a $(BASIC_EXE_LIBS) $(LIBS) -o $@ 241 242# Similar for Windows 243sepia.exe: $(EXT_OBJECTS) $(DEVSYS_OBJECTS) $(LIB_PREFIX)eclipse.dll whereami.o libdummies.a $(BOOT_ECOS) 244 $(CC) $(OPT_FLAGS) $(LDFLAGS) $(DEVSYS_OBJECTS) \ 245 $(LIB_PREFIX)eclipse.dll $(EXT_OBJECTS) whereami.o \ 246 -L$(SYS_LIB) \ 247 $(RUNPATH_LDFLAG)$(GMP_LIBDIR) \ 248 libdummies.a $(BASIC_EXE_LIBS) $(LIBS) -o $@ 249 250 251# The default executable for the distribution (preferably dynamic, else static) 252# This requires an LD_LIBRARY_PATH, cannot give a meaningful run-path. 253# Order important: first RUN_LIB, then SYS_LIB (so we prefer dynamic libs)! 254# Note that we call this .exe even on Unix! 255eclipse.exe: $(DEVSYS_OBJECTS) $(LIB_PREFIX)eclipse.$(OBJECTS_SUFFIX) libdummies.a 256 $(CC) $(LDFLAGS) $(DEVSYS_OBJECTS) \ 257 $(LIB_PREFIX)eclipse.$(OBJECTS_SUFFIX) libdummies.a \ 258 -L$(RUN_LIB) -L$(SYS_LIB) \ 259 $(BASIC_LIBS) $(LIBS) -o $@ 260 261 262# A sepia with mps 263msepia$(EXE): $(DEVSYS_OBJECTS) $(COMMON_OBJECTS) mps.o whereami.o libdummies.a 264 $(CC) $(LDFLAGS) -L$(SYS_LIB) $(DEVSYS_OBJECTS) $(COMMON_OBJECTS) mps.o whereami.o $(PAR_LIBS) $(BASIC_LIBS) libdummies.a $(LIBS) -o $@ 265 266# An eclipse parallel worker (includes mps) 267weclipse: $(DEVSYS_OBJECTS) $(COMMON_OBJECTS) o parallel.o mps.o whereami.o libdummies.a 268 $(CC) $(LDFLAGS) -L$(SYS_LIB) $(DEVSYS_OBJECTS) $(COMMON_OBJECTS) parallel.o mps.o whereami.o $(PAR_LIBS) $(BASIC_LIBS) libdummies.a $(LIBS) -o $@ 269 270# The worker manager 271peclipse: wm.o whereami.o wm_interface.o eclipsedir.o os_support.o 272 $(CC) $(LDFLAGS) -L$(SYS_LIB) wm.o wm_interface.o whereami.o \ 273 eclipsedir.o os_support.o $(PAR_LIBS) $(BASIC_LIBS) $(GRAPHLIBS) $(LIBS) -o $@ 274 275 276# *************** Embedding test programs *************** 277 278eg_c_test: $(EXT_INCLUDES) eg_c_test.o libeclipse.a libdummies.a 279 $(CC) -o $@ eg_c_test.o \ 280 -L$(RUN_LIB) -L$(SYS_LIB) -L. \ 281 $(RUNPATH_LDFLAG)$(RUN_LIB) \ 282 -leclipse -ldummies $(BASIC_LIBS) $(LIBS) 283 284eg_cc_test: $(EXT_INCLUDES) eg_cc_test.o libeclipse.a libdummies.a 285 $(CXX) -o $@ eg_cc_test.o \ 286 -L$(RUN_LIB) -L$(SYS_LIB) -L. \ 287 $(RUNPATH_LDFLAG)$(RUN_LIB) \ 288 -leclipse -ldummies $(BASIC_LIBS) $(LIBS) 289 290 291# make lint is called in the src directory 292# -I../sun4 is needed for config.h 293lint: 294 -$(LINT) $(LINTFLAGS) $(CPPFLAGS) -I../sun4 \ 295 $(SEPIA_SRC) $(MPS_SRC) dummy_par.c $(SHM_SRC) \ 296 $(LINT_SRC) -lm 297 298tags: 299 ctags -tw *.c *.h 300 301distclean: clean 302 rm -f Makefile Makefile.external config.h INST_PARAMS 303 rm -f tags 304 305clean: archclean 306 307archclean: 308 rm -f *.i *.o emu*.s *.a *.$(OBJECTS_SUFFIX) 309 rm -f sepia$(EXE) eclipse.exe 310 rm -f whereami.c eclipse_cc.h eclipse.def 311 312ecoclean: bootecoclean 313 rm -rf $(ECO_LIB_DEST) 314 315# delete STABLE_ECLIPSE's boot-files only if AUX_SEPIA works 316bootecoclean: boot_test 317 rm -rf $(ECO_BOOT_DEST) 318 319# *************** Libraries and Compound Objects *************** 320 321objects: $(COMMON_OBJECTS) $(DEVSYS_OBJECTS) 322 323winecl.tgz: $(COMMON_OBJECTS) $(DEVSYS_OBJECTS) 324 gtar cvfz eclipse.tgz $(COMMON_OBJECTS) $(DEVSYS_OBJECTS) 325 326libeclipse.a: $(COMMON_OBJECTS) 327 $(AR) rc ./libeclipse.a $(COMMON_OBJECTS) 328 $(RANLIB) ./libeclipse.a 329 330tkexdr.a: tkexdr.o 331 $(AR) rc ./tkexdr.a tkexdr.o 332 $(RANLIB) ./tkexdr.a 333 334tkexdr.so: tkexdr.o 335 $(DYLD) $(DYNLDFLAGS) -L$(SYS_LIB) tkexdr.o \ 336 $(LIBS) -lc -o $@ 337 338tkexdr.dylib: tkexdr.o 339 $(DYLD) $(DYNLDFLAGS) -L$(SYS_LIB) tkexdr.o \ 340 $(LIBS) $(LDTCL) -o ./tkexdr.dylib 341 342tkexdr.dll: tkexdr.def tkexdr.o 343 $(DYLD) $(DYNLDFLAGS) -o $@ \ 344 -Wl,--out-implib,tkexdr.dll.a \ 345 $< tkexdr.o \ 346 -L$(SYS_LIB) $(GRAPHLIBS) $(LIBS) 347 348 349tkeclipse.a: tkeclipse.o 350 $(AR) rc ./tkeclipse.a tkeclipse.o 351 $(RANLIB) ./tkeclipse.a 352 353# the -lc works around a linker problem on linux 354tkeclipse.so: tkeclipse.o tkexdr.so $(LIB_PREFIX)eclipse.so 355 $(DYLD) $(DYNLDFLAGS) \ 356 -L$(RUN_LIB) -L$(SYS_LIB) \ 357 $(RUNPATH_DYLDFLAG)$(RELRUNPATH) \ 358 tkeclipse.o tkexdr.so $(LIB_PREFIX)eclipse.so \ 359 $(LIBS) -lc -o $@ 360 361# $(GMP_LD) $(LDTCL) needed for MacOSX 362tkeclipse.dylib: tkeclipse.o tkexdr.dylib $(LIB_PREFIX)eclipse.dylib 363 $(DYLD) $(DYNLDFLAGS) \ 364 -L$(RUN_LIB) -L$(SYS_LIB) \ 365 $(RUNPATH_DYLDFLAG)$(RELRUNPATH) \ 366 tkeclipse.o tkexdr.dylib $(LIB_PREFIX)eclipse.dylib \ 367 $(LIBS) $(GMP_LD) $(LDTCL) -o $@ 368 369tkeclipse.dll: tkeclipse.def tkeclipse.o tkexdr.dll $(LIB_PREFIX)eclipse.dll 370 $(DYLD) $(DYNLDFLAGS) -o $@ \ 371 -L$(RUN_LIB) -L$(SYS_LIB) \ 372 $< tkeclipse.o tkexdr.dll $(LIB_PREFIX)eclipse.dll \ 373 $(GRAPHLIBS) $(LIBS) 374 375# With Gnu ld we should use 376# -Wl,--version-script=eclipse.sym 377# to reduce the number of exported symbols, but we don't always 378# use Gnu ld, and it breaks on Solaris even with Gnu ld 379$(LIB_PREFIX)eclipse.so: $(COMMON_OBJECTS) $(DUMMYLIBS) 380 $(DYLD) $(DYNLDFLAGS) -o $@ \ 381 $(COMMON_OBJECTS) $(DUMMYLIBS) \ 382 -L$(RUN_LIB) -L$(SYS_LIB) \ 383 $(RUNPATH_DYLDFLAG)$(RELRUNPATH) \ 384 $(BASIC_LIBS) $(LIBS) 385 386$(LIB_PREFIX)eclipse.dylib: $(COMMON_OBJECTS) $(DUMMYLIBS) 387 $(DYLD) $(DYNLDFLAGS) -o $@ \ 388 $(COMMON_OBJECTS) $(DUMMYLIBS) \ 389 -L$(RUN_LIB) -L$(SYS_LIB) \ 390 $(BASIC_LIBS) $(LIBS) 391 392$(LIB_PREFIX)eclipse.dll: $(COMMON_OBJECTS) $(DUMMYLIBS) 393 $(DYLD) $(DYNLDFLAGS) -o $@ \ 394 -Wl,--out-implib,$(LIB_PREFIX)eclipse.dll.a \ 395 -Wl,--output-def,$(LIB_PREFIX)eclipse.def \ 396 $(COMMON_OBJECTS) $(DUMMYLIBS) \ 397 -L$(RUN_LIB) -L$(SYS_LIB) \ 398 $(BASIC_LIBS) $(LIBS) 399 400$(LIB_PREFIX)eclipse.dll.a: $(LIB_PREFIX)eclipse.dll 401 402 403libdummies.a: $(ALLDUMMYLIBS) 404 $(AR) rc ./libdummies.a $(ALLDUMMYLIBS) 405 $(RANLIB) ./libdummies.a 406 407sepia.o: $(COMMON_OBJECTS) 408 $(LD) -r $(COMMON_OBJECTS) -o $@ 409 410 411standalone.o: $(DEVSYS_OBJECTS) 412 $(LD) -r $(DEVSYS_OBJECTS) -o $@ 413 414 415parallel.o: $(PAR_OBJECTS) 416 $(LD) -r $(PAR_OBJECTS) -o $@ 417 418mps.o: $(MPS_OBJECTS) 419 $(LD) -r $(MPS_OBJECTS) -o $@ 420 421 422libeclipsemps.a: mps.o 423 $(AR) rc ./libeclipsemps.a mps.o 424 $(RANLIB) ./libeclipsemps.a 425 426whereami.c: 427 @echo char \* whereami\(void\) > whereami.c 428 @echo { return\(\"`cd ..;pwd|sed s-auto/--`\"\)\; } >> whereami.c 429 430 431# 432# Include file for C++ embedding 433# 434 435# cc/cxx -> i (uses suffix rule above) 436eclipse_cc.i: config.h ec_public.h types.h embed.h 437 438# i -> h 439eclipse_cc.h: eclipse_cc.i 440 /bin/cp eclipse_cc.i eclipse_cc.h 441 442 443# 444# Some files that need special compilation flags etc 445# 446 447bip_arith.o: bip_arith.c 448 $(CC) $(OPT_FLAGS_ARITH) $(CFLAGS) $(CPPFLAGS) -c $< 449 450emu.o: emu.c 451 $(CC) $(OPT_FLAGS_EMU) $(CFLAGS) $(CPPFLAGS) -S $< 452 /bin/mv -f emu.s emu.no.s 453 -$(OPTIMIZE) ./emu.no.s ./emu.s 454 @cmp -s ./emu.no.s ./emu.s || echo "Assembly code patched" 455 $(CC) $(CFLAGS) -c emu.s 456 457emu.obj: emu.o 458 /bin/cp emu.o emu.obj 459 460# On some systems we need to specify extra compiler flags when playing with 461# rounding modes. 462intervals.o: intervals.c 463 $(CC) $(OPT_FLAGS) $(FLOAT_ROUND_FLAGS) $(CFLAGS) $(CPPFLAGS) \ 464 -c $< 465 466wm.o: wm.c 467 $(CC) $(OPT_FLAGS) $(CFLAGS) $(CPPFLAGS) -c wm.c 468 469wm_interface.o: wm_interface.c 470 $(CC) $(OPT_FLAGS) $(CFLAGS) $(CPPFLAGS) \ 471 -c wm_interface.c 472 473 474# 475# External files 476# 477 478$(EXT_OBJECTS): $(EXT_INCLUDES) 479 480 481# 482# Rebuild configured files 483# 484 485config.h: stamp-h 486stamp-h: config.h.in 487 @( cd $(top_srcdir); \ 488 if grep "hostname = `hostname`" config.log ; then \ 489 ./config.status ; \ 490 else \ 491 echo === Please re-run configure on this host ; \ 492 fi ) 493 494Makefile: Makefile.in 495 @( cd $(top_srcdir); \ 496 if grep "hostname = `hostname`" config.log ; then \ 497 ./config.status ; \ 498 else \ 499 echo === Please re-run configure on this host ; \ 500 fi ) 501 502 503# ----------------------------------------------------------------------------- 504# ECLiPSe INSTALLATION 505# ----------------------------------------------------------------------------- 506 507AUX_SEPIA = ./sepia$(EXE) -D $(SEPIA) 508 509# install is configured as either install_all or install_cross 510install: @MAKE_TARGET@ 511install_all: sepia$(EXE) install_common install_machine 512install_cross: install_machine 513 514 515# Some machines don't support chmod -f 516# PERM = -f a+r,u+w,go-w 517PERM = a+r,u+w,go-w 518DIRPERM = 2755 519 520# ----------------------------------------------------------------------------- 521# Macros specifying the files to go in the binary release 522# 523# PL_LIBRARIES they go to $(PREFIX)/lib in source form (.pl) 524# ECL_ECO_LIBRARIES they go to $(PREFIX)/lib in source & compiled form 525# PL_ECO_LIBRARIES they go to $(PREFIX)/lib in source & compiled form 526# 527# BOOT_EXEC they go to $(PREFIX)/lib/$ARCH 528# LIB_OBJECTS they go to $(PREFIX)/lib/$ARCH 529# SYSLIB_OBJECTS they go there too 530# 531# EXT_INCLUDES they go to $(PREFIX)/include/$(ARCH) 532# EG_SOURCES they go to $(PREFIX)/doc/examples in source form 533# ----------------------------------------------------------------------------- 534 535# 536# Files to go to $(PREFIX)/lib in source form only (.pl). 537# 538 539PL_LIBRARIES = version.pl 540 541# 542# Files to go to $(PREFIX)/lib in both source (.ecl,.pl) and compiled form 543# (.eco). 544# 545 546ECL_ECO_LIBRARIES = constraint_pools.ecl document.ecl fcompile.ecl \ 547 format.ecl lazy_io.ecl csv.ecl \ 548 multifile.ecl notify_ports.ecl port_profiler.ecl \ 549 swi.ecl time_log.ecl timeout.ecl timeout_simple.ecl var_name.ecl \ 550 iso.ecl iso_light.ecl iso_error.ecl iso_strict.ecl iso_aux.ecl \ 551 lists_of_structures.ecl 552 553PL_ECO_LIBRARIES = anti_unify.pl apply.pl \ 554 apply_macros.pl atts.pl branch_and_bound.pl \ 555 calendar.pl cgi.pl cio.pl cprolog.pl \ 556 development_support.pl fd.pl \ 557 fd_arith.pl fd_chip.pl fd_domain.pl fd_elipsys.pl \ 558 fd_util.pl foreign.pl fromonto.pl heaps.pl \ 559 http.pl http_client.pl http_grammar.pl http_method.pl \ 560 http_server.pl linearize.pl lips.pl lists.pl \ 561 matrix_util.pl \ 562 modes.pl notinstance.pl numbervars.pl oldio.pl ordset.pl \ 563 paddy.pl par_util.pl pretty_print.pl profile.pl queues.pl \ 564 quintus.pl quintus_util.pl rationals.pl remote_tools.pl \ 565 sepia.pl sicstus.pl sockets.pl \ 566 source_storage.pl spell.pl structures.pl \ 567 systools.pl t_all.pl test_util.pl toplevel.pl \ 568 tracer_tcl.pl tracer_tty.pl util.pl 569 570BOOT_ECL_ECO_LIBRARIES = \ 571 hash.ecl \ 572 module_options.ecl \ 573 eclipse_language.ecl 574 575BOOT_PL_ECO_LIBRARIES = \ 576 asm.pl \ 577 suspend.pl 578 579BOOT_ECO_MODULES = \ 580 kernel \ 581 $(BOOT_PL_ECO_LIBRARIES:%.pl=%) \ 582 $(BOOT_ECL_ECO_LIBRARIES:%.ecl=%) 583 584 585# Files from which .eci files will be produced (.ecl,.pl) 586 587ECI_ECL_LIBRARIES = hash.ecl document.ecl format.ecl lazy_io.ecl csv.ecl \ 588 var_name.ecl time_log.ecl module_options.ecl \ 589 notify_ports.ecl constraint_pools.ecl port_profiler.ecl \ 590 swi.ecl timeout.ecl timeout_simple.ecl fcompile.ecl multifile.ecl \ 591 iso.ecl iso_light.ecl iso_strict.ecl lists_of_structures.ecl 592 593 594ECI_PL_LIBRARIES = anti_unify.pl apply.pl apply_macros.pl \ 595 asm.pl atts.pl branch_and_bound.pl cgi.pl \ 596 calendar.pl cio.pl cprolog.pl \ 597 foreign.pl fromonto.pl heaps.pl \ 598 http.pl http_server.pl http_client.pl \ 599 linearize.pl lips.pl lists.pl \ 600 matrix_util.pl notinstance.pl numbervars.pl \ 601 ordset.pl par_util.pl \ 602 pretty_print.pl profile.pl queues.pl quintus.pl \ 603 quintus_util.pl remote_tools.pl sepia.pl \ 604 sicstus.pl sockets.pl spell.pl \ 605 suspend.pl util.pl \ 606 test_util.pl toplevel.pl \ 607 fd.pl 608 609 610TCL_LIBRARIES = menu.tcl 611 612KERNEL_PARTS = kernel.pl events.pl meta.pl array.pl pdb.pl debug.pl \ 613 dynamic.pl environment.pl io.pl setof.pl tconv.pl \ 614 kernel_bips.pl tracer.pl 615 616COMPILER_MODULES = \ 617 ecl_compiler \ 618 compiler_analysis \ 619 compiler_codegen \ 620 compiler_common \ 621 compiler_indexing \ 622 compiler_normalise \ 623 compiler_peephole \ 624 compiler_regassign \ 625 compiler_varclass \ 626 compiler_map \ 627 source_processor 628 629 630BOOT_EXEC = INST_PARAMS Makefile.external eclipse.exe 631 632# Library-related files only needed on certain architectures 633ifeq ($(BUILD_WITH_TCL),yes) 634LIB_OBJECTS_TCL_NT = tkexdr.dll.a tkexdr.def 635LIB_OBJECTS_TCL = tkeclipse.$(OBJECTS_SUFFIX) tkexdr.$(OBJECTS_SUFFIX) 636else 637LIB_OBJECTS_TCL_NT = 638LIB_OBJECTS_TCL = 639endif 640 641LIB_OBJECTS_i386_nt = $(LIB_PREFIX)eclipse.dll.a $(LIB_PREFIX)eclipse.def \ 642 $(LIB_OBJECTS_TCL_NT) 643 644LIB_OBJECTS_x86_64_nt = $(LIB_PREFIX)eclipse.dll.a $(LIB_PREFIX)eclipse.def \ 645 $(LIB_OBJECTS_TCL_NT) 646 647LIB_OBJECTS_ARCH = $(LIB_OBJECTS_$(ARCH)) 648 649LIB_OBJECTS = $(LIB_PREFIX)eclipse.$(OBJECTS_SUFFIX) \ 650 $(LIB_OBJECTS_TCL) \ 651 $(LIB_OBJECTS_ARCH) 652 653# add these to LIB_OBJECTS if you want to have the parallel stuff: 654PARLIB_OBJECTS = parallel.o wm.o wm_interface.o libeclipsemps.a \ 655 libpds.a nsrv_ping.o nsrv_server.o 656 657 658EG_SOURCES = eg_c_main.c eg_cc_main.cc \ 659 eg_c_fail_loop.c eg_cc_fail_loop.cc \ 660 eg_c_sendmore.c eg_cc_sendmore.cc \ 661 eg_c_handle.c eg_cc_handle.cc \ 662 eg_c_mip.c eg_cc_mip.cc \ 663 eg_c_basic.c eg_cc_basic.cc \ 664 eg_c_test.c eg_cc_test.cc \ 665 eg_c_external.c eg_cc_external.cc 666 667 668# ----------------------------------------------------------------------------- 669# The destination filenames, derived from the above 670# ----------------------------------------------------------------------------- 671 672PL_DEST = $(PL_LIBRARIES:%.pl=$(PREFIX)/lib/%.pl) \ 673 $(PL_ECO_LIBRARIES:%.pl=$(PREFIX)/lib/%.pl) \ 674 $(BOOT_PL_ECO_LIBRARIES:%.pl=$(PREFIX)/lib/%.pl) 675ECI_DEST = $(ECI_PL_LIBRARIES:%.pl=$(PREFIX)/lib/%.eci) \ 676 $(ECI_ECL_LIBRARIES:%.ecl=$(PREFIX)/lib/%.eci) 677ECL_DEST = $(ECL_ECO_LIBRARIES:%.ecl=$(PREFIX)/lib/%.ecl) \ 678 $(BOOT_ECL_ECO_LIBRARIES:%.ecl=$(PREFIX)/lib/%.ecl) 679TCL_DEST = $(TCL_LIBRARIES:%.tcl=$(PREFIX)/lib/%.tcl) 680ECO_LIB_DEST = $(ECL_ECO_LIBRARIES:%.ecl=$(PREFIX)/lib/%.eco) \ 681 $(PL_ECO_LIBRARIES:%.pl=$(PREFIX)/lib/%.eco) 682ECO_BOOT_DEST = $(BOOT_ECO_MODULES:%=$(PREFIX)/lib/%.eco) \ 683 $(COMPILER_MODULES:%=$(PREFIX)/lib/%.eco) 684SYSLIB_DEST = $(SYSLIB_OBJECTS:%=$(PREFIX)/lib/$(ARCH)/%) 685BOOT_EXE_DEST = $(BOOT_EXEC:%=$(PREFIX)/lib/$(ARCH)/%) 686LIB_OBJ_DEST = $(LIB_OBJECTS:%=$(PREFIX)/lib/$(ARCH)/%) 687EG_SOURCES_DEST = $(EG_SOURCES:%=$(PREFIX)/doc/examples/%) 688EXT_INC_DEST = $(EXT_INCLUDES:%=$(PREFIX)/include/$(ARCH)/%) 689 690# These files are in the repository, so the system can be bootstrapped: 691BOOT_ECOS = $(BOOT_ECO_MODULES:%=$(SEPIA)/lib/%.eco) 692COMPILER_ECOS: $(COMPILER_MODULES:%=$(SEPIA)/lib/%.eco) 693 694 695# ----------------------------------------------------------------------------- 696# how to install the machine independent files 697# ----------------------------------------------------------------------------- 698 699install_common: $(C_DEST) $(ECL_DEST) $(ECI_DEST) $(PL_DEST) \ 700 $(ECO_LIB_DEST) $(ECO_BOOT_DEST) \ 701 $(TCL_DEST) $(EG_SOURCES_DEST) 702 703$(PREFIX)/lib/%.c: $(SEPIA)/src/%.c $(PREFIX)/lib/.stamp 704 /bin/cp $< $@ 705 @/bin/chmod $(PERM) $@ 706 707$(PREFIX)/lib/%.pl: $(SEPIA)/lib/%.pl $(PREFIX)/lib/.stamp 708 /bin/cp $< $@ 709 @/bin/chmod $(PERM) $@ 710 711$(PREFIX)/lib/%.ecl: $(SEPIA)/lib/%.ecl $(PREFIX)/lib/.stamp 712 /bin/cp $< $@ 713 @/bin/chmod $(PERM) $@ 714 715$(PREFIX)/lib/%.tcl: $(SEPIA)/lib/%.tcl $(PREFIX)/lib/.stamp 716 /bin/cp $< $@ 717 @/bin/chmod $(PERM) $@ 718 719# copy the version file, replacing the date with the current one 720$(PREFIX)/lib/version.pl: $(SEPIA)/lib/version.pl $(PREFIX)/lib/.stamp 721 $(AUX_SEPIA) -e "date(D), substring(D, 1, 16, D1),\ 722 substring(D, 20, 5, D2), concat_strings(D1, D2, DD),\ 723 compile(library(version)),\ 724 sepia_stage(Stage), sepia_build(Build),\ 725 open(\"$@\", write, V), writeq(V, sepia_date(DD)),\ 726 writeln(V, .), writeq(V, sepia_stage(Stage)),\ 727 writeln(V, .), writeq(V, sepia_build(Build)),\ 728 writeln(V, .), close(V)" 729 @/bin/chmod $(PERM) $@ 730 731 732# These boot-files are in the repository in .eco format and are only copied. 733# If you want to re-make them, use make bootfiles 734$(PREFIX)/lib/kernel.eco: $(SEPIA)/lib/kernel.eco 735$(PREFIX)/lib/suspend.eco: $(SEPIA)/lib/suspend.eco 736$(PREFIX)/lib/eclipse_language.eco: $(SEPIA)/lib/eclipse_language.eco 737$(PREFIX)/lib/asm.eco: $(SEPIA)/lib/asm.eco 738$(PREFIX)/lib/hash.eco: $(SEPIA)/lib/hash.eco 739$(PREFIX)/lib/module_options.eco: $(SEPIA)/lib/module_options.eco 740 741$(PREFIX)/lib/%.eco: $(SEPIA)/lib/%.eco boot_test $(PREFIX)/lib/.stamp 742 /bin/cp $< $@ 743 @/bin/chmod $(PERM) $@ 744 745 746# This goal tries to make sure that the core system actually boots and that 747# the compiler works (by compiling util.pl). Could be more thorough! 748boot_test: sepia$(EXE) $(BOOT_ECOS) $(COMPILER_ECOS) 749 $(AUX_SEPIA) -e 'compile("$(SEPIA)/lib/util"),util:compiled' 750 touch $@ 751 752 753$(PREFIX)/lib/%.eco: $(SEPIA)/lib/%.ecl $(PREFIX)/lib/.stamp 754 $(AUX_SEPIA) -e "compile(\"$<\",\ 755 [debug:$(ECO_DBG),srcroot:\"$(top_srcdir)\",outdir:\"$(@D)\",output:eco])" 756 @/bin/chmod $(PERM) $@ 757 758$(PREFIX)/lib/%.eco: $(SEPIA)/lib/%.pl $(PREFIX)/lib/.stamp 759 $(AUX_SEPIA) -e "compile(\"$<\",\ 760 [debug:$(ECO_DBG),srcroot:\"$(top_srcdir)\",outdir:\"$(@D)\",output:eco])" 761 @/bin/chmod $(PERM) $@ 762 763$(PREFIX)/lib/%.eci: $(SEPIA)/lib/%.ecl $(PREFIX)/lib/.stamp 764 $(AUX_SEPIA) -e 'lib(document),icompile("$<","$(@D)")' 765 @/bin/chmod $(PERM) $@ 766 767$(PREFIX)/lib/%.eci: $(SEPIA)/lib/%.pl $(PREFIX)/lib/.stamp 768 $(AUX_SEPIA) -e 'lib(document),icompile("$<","$(@D)")' 769 @/bin/chmod $(PERM) $@ 770 771$(PREFIX)/doc/examples/%.c: %.c $(PREFIX)/doc/examples/.stamp 772 /bin/cp $< $@ 773 @/bin/chmod $(PERM) $@ 774 775$(PREFIX)/doc/examples/%.cc: %.cc $(PREFIX)/doc/examples/.stamp 776 /bin/cp $< $@ 777 @/bin/chmod $(PERM) $@ 778 779$(PREFIX)/include/$(ARCH)/%.h: %.h $(PREFIX)/include/$(ARCH)/.stamp 780 /bin/cp $< $@ 781 @/bin/chmod $(PERM) $@ 782 783 784# ----------------------------------------------------------------------------- 785# Re-create .eco files that are needed for booting 786# This only needs to be done when the source for these files was changed. 787# The resulting .eco files should must be checked into the repository along 788# with the modified sources. The compiler files also belong into this group, 789# but are created via the Compiler/Makefile 790# ----------------------------------------------------------------------------- 791 792STABLE_ECLIPSE = $(PREFIX)/bin/$(ARCH)/eclipse 793 794# force re-making all the bootfiles 795new_bootfiles: 796 rm -f $(BOOT_ECOS) 797 $(MAKE) $(BOOT_ECOS) 798 799bootfiles: $(BOOT_ECOS) 800 801$(SEPIA)/lib/kernel.eco: $(KERNEL_PARTS:%=$(SEPIA)/lib/%) 802 @if test -x $(STABLE_ECLIPSE) ; then \ 803 echo "Rebuilding bootfile $@ [debug:$(ECO_DBG)]"; \ 804 $(STABLE_ECLIPSE) -D $(PREFIX) -e 'unlock(sepia_kernel,"Sepia"),compile("$(SEPIA)/lib/kernel.pl",[debug:$(ECO_DBG),srcroot:"$(top_srcdir)",outdir:"$(@D)",load:none,output:eco])'; \ 805 else \ 806 touch $@; echo "WARNING: $@ out-of-date, but cannot rebuild without stable eclipse"; \ 807 fi 808 @/bin/chmod $(PERM) $@ 809 810$(SEPIA)/lib/%.eco: $(SEPIA)/lib/%.ecl 811 @if test -x $(STABLE_ECLIPSE) ; then \ 812 echo "Rebuilding bootfile $@ [debug:$(ECO_DBG)]"; \ 813 $(STABLE_ECLIPSE) -D $(PREFIX) -e 'compile("$<", [debug:$(ECO_DBG),srcroot:"$(top_srcdir)",outdir:"$(@D)",output:eco,load:none])'; \ 814 else \ 815 touch $@; echo "WARNING: $@ out-of-date, but cannot rebuild without stable eclipse"; \ 816 fi 817 @/bin/chmod $(PERM) $@ 818 819$(SEPIA)/lib/%.eco: $(SEPIA)/lib/%.pl 820 @if test -x $(STABLE_ECLIPSE) ; then \ 821 echo "Rebuilding bootfile $@ [debug:$(ECO_DBG)]"; \ 822 $(STABLE_ECLIPSE) -D $(PREFIX) -e 'compile("$<", [debug:$(ECO_DBG),srcroot:"$(top_srcdir)",outdir:"$(@D)",output:eco,load:none])'; \ 823 else \ 824 touch $@; echo "WARNING: $@ out-of-date, but cannot rebuild without stable eclipse"; \ 825 fi 826 @/bin/chmod $(PERM) $@ 827 828 829# ----------------------------------------------------------------------------- 830# how to install the machine dependent stuff 831# ----------------------------------------------------------------------------- 832 833install_machine: @INSTALL_GMP@ $(BOOT_EXE_DEST) $(LIB_OBJ_DEST) $(EXT_INC_DEST) 834 835 836# the .dll.a file is created as a side effect of making the .dll 837$(PREFIX)/lib/i386_nt/%.dll.a: %.dll $(PREFIX)/lib/i386_nt/.stamp 838 /bin/cp $(@F) $@ 839 @/bin/chmod $(PERM) $@ 840 841# the .def file is created as a side effect of making the .dll 842$(PREFIX)/lib/i386_nt/eclipse.def: eclipse.dll $(PREFIX)/lib/i386_nt/.stamp 843 /bin/cp $(@F) $@ 844 @/bin/chmod $(PERM) $@ 845 846# this also copies from ../src/%.def because of VPATH 847$(PREFIX)/lib/i386_nt/%.def: %.def $(PREFIX)/lib/i386_nt/.stamp 848 /bin/cp $< $@ 849 @/bin/chmod $(PERM) $@ 850 851# this also copies from ../src/%.reg because of VPATH 852$(PREFIX)/lib/i386_nt/%.reg: %.reg $(PREFIX)/lib/i386_nt/.stamp 853 /bin/cp $(@F) $@ 854 @/bin/chmod $(PERM) $@ 855 856# the .dll.a file is created as a side effect of making the .dll 857$(PREFIX)/lib/x86_64_nt/%.dll.a: %.dll $(PREFIX)/lib/x86_64_nt/.stamp 858 /bin/cp $(@F) $@ 859 @/bin/chmod $(PERM) $@ 860 861# the .def file is created as a side effect of making the .dll 862$(PREFIX)/lib/x86_64_nt/eclipse.def: eclipse.dll $(PREFIX)/lib/x86_64_nt/.stamp 863 /bin/cp $(@F) $@ 864 @/bin/chmod $(PERM) $@ 865 866# this also copies from ../src/%.def because of VPATH 867$(PREFIX)/lib/x86_64_nt/%.def: %.def $(PREFIX)/lib/x86_64_nt/.stamp 868 /bin/cp $< $@ 869 @/bin/chmod $(PERM) $@ 870 871# this also copies from ../src/%.reg because of VPATH 872$(PREFIX)/lib/x86_64_nt/%.reg: %.reg $(PREFIX)/lib/x86_64_nt/.stamp 873 /bin/cp $(@F) $@ 874 @/bin/chmod $(PERM) $@ 875 876$(PREFIX)/lib/$(ARCH)/INST_PARAMS: INST_PARAMS $(PREFIX)/lib/$(ARCH)/.stamp 877 -/bin/cp $< $@ 878 -@/bin/chmod $(PERM) $@ 879 880$(PREFIX)/lib/$(ARCH)/Makefile.external: Makefile.external $(PREFIX)/lib/$(ARCH)/.stamp 881 -/bin/cp $< $@ 882 -@/bin/chmod $(PERM) $@ 883 884$(PREFIX)/lib/$(ARCH)/%.o: %.o $(PREFIX)/lib/$(ARCH)/.stamp 885 /bin/cp $< $@ 886 @/bin/chmod $(PERM) $@ 887 888$(PREFIX)/lib/$(ARCH)/%.$(OBJECTS_SUFFIX): %.$(OBJECTS_SUFFIX) $(PREFIX)/lib/$(ARCH)/.stamp 889 /bin/cp $< $@ 890 @/bin/chmod $(PERM) $@ 891 892$(PREFIX)/lib/$(ARCH)/%.exe: %.exe $(PREFIX)/lib/$(ARCH)/.stamp 893 /bin/cp $< $@ 894 @/bin/chmod $(PERM) $@ 895 896$(PREFIX)/lib/$(ARCH)/%.$(OBJECTS_SUFFIX): $(SYS_LIB)/%.$(OBJECTS_SUFFIX) $(PREFIX)/lib/$(ARCH)/.stamp 897 /bin/cp $< $@ 898 @/bin/chmod $(PERM) $@ 899 900$(PREFIX)/lib/$(ARCH)/%.a: %.a $(PREFIX)/lib/$(ARCH)/.stamp 901 /bin/cp $< $@ 902 @$(RANLIB) $@ 903 @/bin/chmod $(PERM) $@ 904 905$(PREFIX)/lib/$(ARCH)/%.a: $(SYS_LIB)/%.a $(PREFIX)/lib/$(ARCH)/.stamp 906 /bin/cp $< $@ 907 @$(RANLIB) $@ 908 @/bin/chmod $(PERM) $@ 909 910$(PREFIX)/lib/$(ARCH)/%.o: $(SYS_LIB)/%.o $(PREFIX)/lib/$(ARCH)/.stamp 911 /bin/cp $< $@ 912 @/bin/chmod $(PERM) $@ 913 914 915install_gmp: $(PREFIX)/lib/$(ARCH)/$(LIB_PREFIX)$(GMP_LIB).$(OBJECTS_SUFFIX) 916 917$(PREFIX)/lib/$(ARCH)/$(LIB_PREFIX)$(GMP_LIB).$(OBJECTS_SUFFIX): $(GMP_LIBDIR)/$(LIB_PREFIX)$(GMP_LIB).$(OBJECTS_SUFFIX) $(PREFIX)/lib/$(ARCH)/.stamp 918 # copy using tar to keep symbolic link structure 919 (cd $(GMP_LIBDIR); tar cf - $(LIB_PREFIX)$(GMP_LIB)*) | (cd $(PREFIX)/lib/$(ARCH); tar xfBp -) 920 @/bin/chmod $(PERM) $@ 921 touch $@ 922 923 924# ----------------------------------------------------------------------------- 925# make the installation directories 926# (we use timestamp files to remember when the directory was created) 927# ----------------------------------------------------------------------------- 928 929%/.stamp: 930 mkdir -p $(@D) 931 @/bin/chmod $(DIRPERM) $(@D) 932 @touch $@; /bin/chmod $(PERM) $@ 933 934 935# ----------------------------------------------------------------------------- 936# Pretty-print the sources 937# This only works after make install and RUNME 938# ----------------------------------------------------------------------------- 939 940PRETTY_DIR = $(PREFIX)/doc_internal/lib 941 942HTML_DEST = $(PL_LIBRARIES:%.pl=$(PRETTY_DIR)/%.html) \ 943 $(PL_ECO_LIBRARIES:%.pl=$(PRETTY_DIR)/%.html) \ 944 $(ECL_ECO_LIBRARIES:%.ecl=$(PRETTY_DIR)/%.html) 945 946pretty: $(PRETTY_DIR)/.stamp $(HTML_DEST) 947 948 949$(PRETTY_DIR)/%.html: $(SEPIA)/lib/%.pl $(PRETTY_DIR)/.stamp 950 -@$(PREFIX)/bin/$(ARCH)/eclipse -e \ 951 "lib(pretty_printer),argv(all,[_,O|F]),pretty_print(F,[outdir:O])" \ 952 -- "$(PRETTY_DIR)" $< 953 954$(PRETTY_DIR)/%.html: $(SEPIA)/lib/%.ecl $(PRETTY_DIR)/.stamp 955 -@$(PREFIX)/bin/$(ARCH)/eclipse -e \ 956 "lib(pretty_printer),argv(all,[_,O|F]),pretty_print(F,[outdir:O])" \ 957 -- "$(PRETTY_DIR)" $< 958 959 960# ----------------------------------------------------------------------------- 961# Automatically generated dependencies 962# makedepend -Y -fMakefile.in *.c 963# ----------------------------------------------------------------------------- 964 965# DO NOT DELETE 966 967Test_script.o: config.h 968addrmap.o: config.h 969bigrat.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h dict.h 970bigrat.o: emu_export.h 971bip_arith.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h 972bip_arith.o: dict.h emu_export.h rounding_control.h 973bip_array.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h 974bip_array.o: dict.h emu_export.h property.h module.h 975bip_bag.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h dict.h 976bip_comp.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h dict.h 977bip_comp.o: opcode.h emu_export.h 978bip_control.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h 979bip_control.o: ec_io.h dict.h emu_export.h debug.h module.h property.h 980bip_control.o: os_support.h 981bip_db.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h ec_io.h 982bip_db.o: opcode.h gencode.h dict.h database.h emu_export.h 983bip_db.o: module.h debug.h property.h 984bip_delay.o: config.h sepia.h ec_public.h types.h embed.h mem.h debug.h 985bip_delay.o: error.h dict.h emu_export.h property.h 986bip_domain.o: config.h sepia.h ec_public.h types.h embed.h mem.h dict.h 987bip_domain.o: error.h emu_export.h fd.h 988bip_heapevents.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h dict.h 989bip_io.o: config.h os_support.h sepia.h ec_public.h types.h embed.h mem.h 990bip_io.o: error.h ec_io.h dict.h lex.h emu_export.h property.h 991bip_load.o: config.h sepia.h ec_public.h types.h embed.h mem.h dict.h 992bip_load.o: emu_export.h error.h opcode.h ec_io.h property.h module.h 993bip_load.o: os_support.h 994bip_misc.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h dict.h 995bip_misc.o: emu_export.h os_support.h 996bip_module.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h ec_io.h 997bip_module.o: dict.h database.h emu_export.h debug.h gencode.h module.h 998bip_module.o: opcode.h property.h 999bip_mps.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h dict.h 1000bip_parallel.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h 1001bip_parallel.o: ec_io.h dict.h emu_export.h property.h module.h opcode.h 1002bip_record.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h 1003bip_record.o: dict.h property.h module.h 1004bip_serialize.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h dict.h 1005bip_serialize.o: ec_io.h emu_export.h module.h 1006bip_shelf.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h 1007bip_shelf.o: dict.h property.h 1008bip_store.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h 1009bip_store.o: dict.h property.h 1010bip_strings.o: config.h sepia.h ec_public.h types.h embed.h mem.h dict.h 1011bip_strings.o: emu_export.h error.h sha.c 1012bip_tconv.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h 1013bip_tconv.o: dict.h emu_export.h ec_io.h lex.h property.h module.h 1014code.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h dict.h 1015code.o: emu_export.h opcode.h gencode.h debug.h module.h database.h 1016dict.o: config.h os_support.h sepia.h ec_public.h types.h embed.h error.h 1017dict.o: mem.h ec_io.h dict.h emu_export.h 1018dummy_bigrat.o: config.h sepia.h ec_public.h types.h error.h 1019dummy_par.o: config.h ec_public.h error.h 1020eclipsedir.o: config.h os_support.h 1021eg_c_basic.o: eclipse.h config.h ec_public.h types.h embed.h 1022eg_c_external.o: eclipse.h config.h ec_public.h types.h embed.h 1023eg_c_fail_loop.o: eclipse.h config.h ec_public.h types.h embed.h 1024eg_c_handle.o: eclipse.h config.h ec_public.h types.h embed.h 1025eg_c_main.o: eclipse.h config.h ec_public.h types.h embed.h 1026eg_c_mip.o: eclipse.h config.h ec_public.h types.h embed.h 1027eg_c_sendmore.o: eclipse.h config.h ec_public.h types.h embed.h 1028eg_c_test.o: eclipse.h config.h ec_public.h types.h embed.h 1029elipsys_fd.o: config.h sepia.h ec_public.h types.h embed.h mem.h dict.h fd.h 1030elipsys_fd.o: error.h 1031embed.o: config.h sepia.h ec_public.h types.h error.h mem.h dict.h module.h 1032embed.o: emu_export.h embed.h os_support.h 1033emu.o: config.h sepia.h ec_public.h types.h error.h mem.h dict.h emu_export.h 1034emu.o: embed.h opcode.h database.h module.h debug.h property.h ec_io.h 1035emu_c_env.o: config.h sepia.h ec_public.h types.h error.h embed.h mem.h ec_io.h 1036emu_c_env.o: dict.h emu_export.h module.h debug.h opcode.h 1037emu_par.o: config.h sepia.h ec_public.h types.h embed.h error.h ec_io.h mem.h 1038emu_par.o: dict.h emu_export.h opcode.h wm.h sch_eng_interface.h trace.h 1039emu_util.o: config.h sepia.h ec_public.h types.h debug.h embed.h error.h 1040emu_util.o: mem.h opcode.h dict.h module.h emu_export.h ec_io.h 1041error.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h dict.h 1042error.o: emu_export.h ec_io.h os_support.h 1043example.o: external.h config.h sepia.h ec_public.h types.h error.h embed.h 1044external.o: config.h sepia.h ec_public.h types.h embed.h mem.h dict.h error.h 1045external.o: emu_export.h 1046gc_stacks.o: config.h os_support.h sepia.h ec_public.h types.h embed.h 1047gc_stacks.o: error.h mem.h dict.h ec_io.h opcode.h emu_export.h 1048handle.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h ec_io.h 1049handle.o: dict.h database.h emu_export.h 1050handlers.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h dict.h 1051handlers.o: emu_export.h ec_io.h module.h property.h os_support.h 1052init.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h dict.h 1053init.o: module.h os_support.h ec_io.h 1054intervals.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h 1055intervals.o: dict.h emu_export.h opcode.h intervals.h rounding_control.h 1056io.o: config.h os_support.h sepia.h ec_public.h types.h embed.h mem.h error.h 1057io.o: dict.h lex.h ec_io.h emu_export.h property.h module.h 1058lex.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h dict.h 1059lex.o: lex.h ec_io.h emu_export.h module.h property.h os_support.h 1060lex.o: rounding_control.h 1061main.o: config.h os_support.h sepia.h ec_public.h types.h embed.h error.h 1062main.o: mem.h dict.h emu_export.h module.h property.h 1063manual_examples.o: external.h config.h sepia.h ec_public.h types.h error.h 1064manual_examples.o: embed.h 1065mem.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h dict.h ec_io.h 1066mem.o: emu_export.h os_support.h 1067operator.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h dict.h 1068operator.o: emu_export.h property.h module.h lex.h 1069os_support.o: config.h os_support.h 1070printam.o: config.h names.h sepia.h ec_public.h types.h embed.h error.h mem.h 1071printam.o: opcode.h ec_io.h dict.h emu_export.h database.h gencode.h 1072printam.o: module.h debug.h 1073proc_desc.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h 1074proc_desc.o: opcode.h dict.h emu_export.h database.h module.h 1075proc_desc.o: property.h gencode.h 1076procedure.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h 1077procedure.o: dict.h emu_export.h property.h opcode.h gencode.h 1078procedure.o: ec_io.h database.h module.h read.h os_support.h 1079property.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h dict.h 1080property.o: module.h property.h 1081read.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h dict.h 1082read.o: lex.h emu_export.h ec_io.h read.h module.h property.h 1083sch_util.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h dict.h 1084sch_util.o: sch_types.h sch_macros.h 1085scheduler.o: config.h trace.h error.h sch_types.h sch_eng_interface.h 1086scheduler.o: sch_macros.h 1087st2.o: config.h 1088term_copy.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h dict.h 1089term_copy.o: emu_export.h 1090test.o: sepia.h ec_public.h types.h 1091tkeclipse.o: eclipse.h config.h ec_public.h types.h embed.h tkcommon.h 1092tkexdr.o: config.h tkcommon.h 1093trace.o: config.h os_support.h sepia.h ec_public.h types.h embed.h error.h 1094trace.o: mem.h dict.h trace.h wm_msgs.h wm.h 1095types_external.o: config.h sepia.h ec_public.h types.h 1096upcalls.o: config.h 1097wm.o: config.h sch_types.h trace.h wm_msgs.h wm_types.h 1098wm_interface.o: config.h sch_types.h trace.h wm_msgs.h wm_types.h 1099worker.o: config.h sepia.h ec_public.h types.h embed.h error.h mem.h dict.h 1100worker.o: trace.h wm_msgs.h wm.h sch_types.h sch_eng_interface.h 1101write.o: config.h sepia.h ec_public.h types.h embed.h mem.h error.h dict.h 1102write.o: lex.h ec_io.h emu_export.h module.h property.h 1103