Mercurial > hg > xemacs-beta
comparison src/Makefile.in.in @ 404:2f8bb876ab1d r21-2-32
Import from CVS: tag r21-2-32
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:16:07 +0200 |
parents | 5a2589c672dc |
children | b8cc9ab3f761 |
comparison
equal
deleted
inserted
replaced
403:9f011ab08d48 | 404:2f8bb876ab1d |
---|---|
23 | 23 |
24 ## Synched up with: Not synched with FSF. | 24 ## Synched up with: Not synched with FSF. |
25 | 25 |
26 PROGNAME=@PROGNAME@ | 26 PROGNAME=@PROGNAME@ |
27 | 27 |
28 all: ${PROGNAME} | 28 #define NOT_C_CODE |
29 #include "config.h" | |
30 | |
31 #ifdef PDUMP | |
32 DUMP_TARGET = ${PROGNAME}.dmp | |
33 EXE_TARGET = ${PROGNAME} | |
34 ID_FILE = dump-id.c | |
35 #else | |
36 DUMP_TARGET = ${PROGNAME} | |
37 EXE_TARGET = temacs | |
38 ID_FILE = | |
39 #endif | |
40 | |
41 all: ${DUMP_TARGET} | |
29 .PHONY : all release dump-elc dump-elcs all-elc all-elcs lint | 42 .PHONY : all release dump-elc dump-elcs all-elc all-elcs lint |
30 | 43 |
31 ## For performance and consistency, no built-in rules. | 44 ## For performance and consistency, no built-in rules. |
32 .SUFFIXES: | 45 .SUFFIXES: |
33 .SUFFIXES: .c .h .o .i .s .dep | 46 .SUFFIXES: .c .h .o .i .s .dep |
71 start_flags=@start_flags@ | 84 start_flags=@start_flags@ |
72 LD=@ld@ | 85 LD=@ld@ |
73 lib_gcc=@lib_gcc@ | 86 lib_gcc=@lib_gcc@ |
74 ##libmcheck=@libmcheck@ | 87 ##libmcheck=@libmcheck@ |
75 | 88 |
76 #define NOT_C_CODE | |
77 #include "config.h" | |
78 | 89 |
79 ## With the traditional VPATH setting, it is not possible to | 90 ## With the traditional VPATH setting, it is not possible to |
80 ## simultaneously compile in-place and in another directory. The | 91 ## simultaneously compile in-place and in another directory. The |
81 ## mistaken definition is that *all* dependencies are searched for in | 92 ## mistaken definition is that *all* dependencies are searched for in |
82 ## the VPATH directory, rather than just the dependencies that are not | 93 ## the VPATH directory, rather than just the dependencies that are not |
96 ## (e.g. a .in file). | 107 ## (e.g. a .in file). |
97 vpath config.h | 108 vpath config.h |
98 vpath paths.h | 109 vpath paths.h |
99 vpath Emacs.ad.h | 110 vpath Emacs.ad.h |
100 vpath sheap-adjust.h | 111 vpath sheap-adjust.h |
112 vpath dump-id.c | |
101 #else | 113 #else |
102 VPATH=@srcdir@ | 114 VPATH=@srcdir@ |
103 #endif | 115 #endif |
104 | 116 |
105 RM = rm -f | 117 RM = rm -f |
124 #endif /* AIX4 */ | 136 #endif /* AIX4 */ |
125 | 137 |
126 X11_libs = $(LIBI18N) | 138 X11_libs = $(LIBI18N) |
127 #endif /* HAVE_X_WINDOWS */ | 139 #endif /* HAVE_X_WINDOWS */ |
128 | 140 |
129 #ifdef HEAP_IN_DATA | 141 #if defined (HEAP_IN_DATA) && !defined(PDUMP) |
130 sheap_obj=sheap.o | 142 sheap_obj=sheap.o |
131 #endif | 143 #endif |
132 | 144 |
133 ## -Demacs is needed to make some files produce the correct version | 145 ## -Demacs is needed to make some files produce the correct version |
134 ## for use in Emacs. | 146 ## for use in Emacs. |
307 #ifdef I18N3 | 319 #ifdef I18N3 |
308 mo_dir = ${etcdir} | 320 mo_dir = ${etcdir} |
309 mo_file = ${mo_dir}emacs.mo | 321 mo_file = ${mo_dir}emacs.mo |
310 #endif | 322 #endif |
311 | 323 |
312 temacs_loadup = ./temacs -batch -l ${srcdir}/../lisp/loadup.el | 324 temacs_loadup = ./${EXE_TARGET} -nd -batch -l ${srcdir}/../lisp/loadup.el |
313 dump_temacs = ${temacs_loadup} dump | 325 dump_temacs = ${temacs_loadup} dump |
314 run_temacs = ${temacs_loadup} run-temacs | 326 run_temacs = ${temacs_loadup} run-temacs |
315 debug_temacs = gdb temacs | 327 debug_temacs = gdb ${EXE_TARGET} |
316 | 328 |
317 release: temacs ${libsrc}DOC $(mo_file) ${other_files} | 329 release: ${EXE_TARGET} ${libsrc}DOC $(mo_file) ${other_files} |
318 #ifdef CANNOT_DUMP | 330 #ifdef CANNOT_DUMP |
319 ln temacs ${PROGNAME} | 331 ln ${EXE_TARGET} ${PROGNAME} |
320 #else | 332 #else |
321 -if [ -w ${srcdir}/../lisp ]; then \ | 333 -if [ -w ${srcdir}/../lisp ]; then \ |
322 w=`pwd`; cd ${srcdir} && $${w}/temacs -batch -l ${srcdir}/../lisp/inc-vers; \ | 334 w=`pwd`; cd ${srcdir} && $${w}/${EXE_TARGET} -nd -batch -l ${srcdir}/../lisp/inc-vers; \ |
323 else true; fi | 335 else true; fi |
324 -./temacs -batch -l ${srcdir}/../lisp/loadup.el dump | 336 -./${EXE_TARGET} -nd -batch -l ${srcdir}/../lisp/loadup.el dump |
325 touch release | 337 touch release |
326 #endif /* ! defined (CANNOT_DUMP) */ | 338 #endif /* ! defined (CANNOT_DUMP) */ |
327 | 339 |
328 ${PROGNAME}: temacs ${libsrc}DOC $(mo_file) ${other_files} update-elc.stamp | 340 ${DUMP_TARGET}: ${EXE_TARGET} ${libsrc}DOC $(mo_file) ${other_files} update-elc.stamp |
329 #ifdef HEAP_IN_DATA | 341 #ifdef HEAP_IN_DATA |
330 @$(RM) $@ $@.exe && touch SATISFIED | 342 @$(RM) $@ && touch SATISFIED |
331 -${dump_temacs} | 343 -${dump_temacs} |
332 @if test -f $@; then if test -f SATISFIED; then \ | 344 @if test -f $@; then if test -f SATISFIED; then \ |
333 echo "Testing for Lisp shadows ..."; \ | 345 echo "Testing for Lisp shadows ..."; \ |
334 ./${PROGNAME} -batch -vanilla -f list-load-path-shadows; fi; \ | 346 ./${PROGNAME} -batch -vanilla -f list-load-path-shadows; fi; \ |
335 $(RM) SATISFIED; exit 0; fi; \ | 347 $(RM) SATISFIED; exit 0; fi; \ |
336 if test -f SATISFIED; then $(RM) SATISFIED; exit 1; fi; \ | 348 if test -f SATISFIED; then $(RM) SATISFIED; exit 1; fi; \ |
337 $(RECURSIVE_MAKE) $@; | 349 $(RECURSIVE_MAKE) $@; |
338 #else | 350 #else |
339 @$(RM) $@ xemacs.dmp | 351 @$(RM) $@ |
340 ${dump_temacs} | 352 ${dump_temacs} |
341 #ifdef PDUMP | |
342 @mv temacs $@ | |
343 #endif | |
344 @echo "Testing for Lisp shadows ..." | 353 @echo "Testing for Lisp shadows ..." |
345 @./${PROGNAME} -batch -vanilla -f list-load-path-shadows | 354 @./${PROGNAME} -batch -vanilla -f list-load-path-shadows |
346 #endif | 355 #endif |
347 | 356 |
348 fastdump: temacs | 357 fastdump: ${EXE_TARGET} |
349 @$(RM) ${PROGNAME} && touch SATISFIED | 358 @$(RM) ${DUMP_TARGET} && touch SATISFIED |
350 -${dump_temacs} | 359 -${dump_temacs} |
351 @./${PROGNAME} -batch -vanilla -f list-load-path-shadows | 360 @./${PROGNAME} -batch -vanilla -f list-load-path-shadows |
352 | 361 |
353 FRC.update-elc.stamp : | 362 FRC.update-elc.stamp : |
354 | 363 |
355 update-elc.stamp : temacs FRC.update-elc.stamp | 364 update-elc.stamp : ${EXE_TARGET} FRC.update-elc.stamp |
356 @touch NOBYTECOMPILE | 365 @touch NOBYTECOMPILE |
357 ./temacs -batch -l ${srcdir}/../lisp/update-elc.el | 366 ./${EXE_TARGET} -nd -batch -l ${srcdir}/../lisp/update-elc.el |
358 @if test ! -f $@ -o -f NOBYTECOMPILE; then touch $@; fi; \ | 367 @if test ! -f $@ -o -f NOBYTECOMPILE; then touch $@; fi; \ |
359 $(RM) NOBYTECOMPILE | 368 $(RM) NOBYTECOMPILE |
360 | 369 |
361 obj_src = $(objs:.o=.c) | 370 obj_src = $(objs:.o=.c) |
362 | 371 |
371 dynodump_deps = ../dynodump/dynodump.so | 380 dynodump_deps = ../dynodump/dynodump.so |
372 ../dynodump/dynodump.so: | 381 ../dynodump/dynodump.so: |
373 cd ../dynodump && $(RECURSIVE_MAKE) | 382 cd ../dynodump && $(RECURSIVE_MAKE) |
374 #endif /* DYNODUMP */ | 383 #endif /* DYNODUMP */ |
375 | 384 |
376 ${libsrc}DOC: temacs update-elc.stamp | 385 ${libsrc}DOC: ${EXE_TARGET} update-elc.stamp |
377 $(RM) ${libsrc}DOC; \ | 386 $(RM) ${libsrc}DOC; \ |
378 ${DUMPENV} ./temacs -batch -l ${srcdir}/../lisp/make-docfile.el -- \ | 387 ${DUMPENV} ./${EXE_TARGET} -nd -batch -l ${srcdir}/../lisp/make-docfile.el -- \ |
379 -o ${libsrc}DOC -d ${srcdir} -i ${libsrc}../site-packages \ | 388 -o ${libsrc}DOC -d ${srcdir} -i ${libsrc}../site-packages \ |
380 ${obj_src} ${mallocdocsrc} ${rallocdocsrc} | 389 ${obj_src} ${mallocdocsrc} ${rallocdocsrc} |
381 | 390 |
382 dump_elcs: dump-elcs | 391 dump_elcs: dump-elcs |
383 | 392 |
384 dump-elcs: temacs | 393 dump-elcs: ${EXE_TARGET} |
385 -${DUMPENV} ./temacs -batch -l ${srcdir}/../lisp/update-elc.el | 394 -${DUMPENV} ./${EXE_TARGET} -nd -batch -l ${srcdir}/../lisp/update-elc.el |
386 | 395 |
387 all-elc all-elcs: | 396 all-elc all-elcs: |
388 cd .. && $(RECURSIVE_MAKE) all-elc | 397 cd .. && $(RECURSIVE_MAKE) all-elc |
389 | 398 |
390 #ifdef I18N3 | 399 #ifdef I18N3 |
413 | 422 |
414 ${libsrc}make-po: | 423 ${libsrc}make-po: |
415 cd ${libsrc} && $(RECURSIVE_MAKE) make-po | 424 cd ${libsrc} && $(RECURSIVE_MAKE) make-po |
416 | 425 |
417 #endif /* I18N3 */ | 426 #endif /* I18N3 */ |
427 | |
428 ${libsrc}make-dump-id: | |
429 cd ${libsrc} && $(RECURSIVE_MAKE) make-dump-id | |
418 | 430 |
419 ${libsrc}make-docfile: | 431 ${libsrc}make-docfile: |
420 cd ${libsrc} && $(RECURSIVE_MAKE) make-docfile | 432 cd ${libsrc} && $(RECURSIVE_MAKE) make-docfile |
421 | 433 |
422 ## Lint Section | 434 ## Lint Section |
427 LINTFLAGS= -fd -m -s -u -v -x | 439 LINTFLAGS= -fd -m -s -u -v -x |
428 lint: $(LINTFILES) | 440 lint: $(LINTFILES) |
429 $(LINT.c) $(LINTFILES) | 441 $(LINT.c) $(LINTFILES) |
430 ## end of Lint Section | 442 ## end of Lint Section |
431 | 443 |
432 temacs_deps=\ | 444 link_deps=\ |
433 $(start_files) ${objs} ${otherobjs}\ | 445 $(start_files) ${objs} ${otherobjs}\ |
434 $(lwlib_deps) $(dynodump_deps) | 446 $(lwlib_deps) $(dynodump_deps) |
435 | 447 |
448 temacs_deps=\ | |
449 $(link_deps) $(ID_FILE) | |
450 | |
436 temacs_link_args=\ | 451 temacs_link_args=\ |
437 ${start_flags} ${ldflags}\ | 452 ${start_flags} ${ldflags} -I${srcdir} \ |
438 -o $@ ${start_files} ${objs} ${otherobjs} ${LIBES} | 453 -o $@ ${start_files} ${objs} ${otherobjs} ${ID_FILE} ${LIBES} |
439 | 454 |
440 temacs: $(temacs_deps) | 455 ${EXE_TARGET}: $(temacs_deps) |
441 $(LD) $(temacs_link_args) | 456 $(LD) $(temacs_link_args) |
442 #ifdef PDUMP | 457 |
443 @$(RM) xemacs.dmp | 458 dump-id.c: ${libsrc}make-dump-id ${link_deps} |
444 #endif | 459 ${libsrc}make-dump-id |
445 | 460 |
446 .PHONY : run-temacs | 461 .PHONY : run-temacs |
447 | 462 |
448 run-temacs: temacs | 463 run-temacs: ${EXE_TARGET} |
449 -${run_temacs} | 464 -${run_temacs} |
450 | 465 |
451 ## We have automated tests!! | 466 ## We have automated tests!! |
452 testdir = ${srcdir}/../tests/automated | 467 testdir = ${srcdir}/../tests/automated |
453 batch_test_emacs = -batch -l ${testdir}/test-harness.el -f batch-test-emacs ${testdir} | 468 batch_test_emacs = -batch -l ${testdir}/test-harness.el -f batch-test-emacs ${testdir} |
468 ## RTC is Sun WorkShop's Run Time Checking, integrated with dbx | 483 ## RTC is Sun WorkShop's Run Time Checking, integrated with dbx |
469 rtc_patch.o: | 484 rtc_patch.o: |
470 rtc_patch_area -o $@ | 485 rtc_patch_area -o $@ |
471 | 486 |
472 rtcmacs: $(temacs_deps) rtc_patch.o | 487 rtcmacs: $(temacs_deps) rtc_patch.o |
473 $(RM) temacs; $(RECURSIVE_MAKE) temacs RTC_patch_objs=rtc_patch.o | 488 $(RM) ${EXE_TARGET}; $(RECURSIVE_MAKE) ${EXE_TARGET} RTC_patch_objs=rtc_patch.o |
474 mv temacs rtcmacs | 489 mv ${EXE_TARGET} rtcmacs |
475 | 490 |
476 .PHONY: run-rtcmacs | 491 .PHONY: run-rtcmacs |
477 run-rtcmacs: rtcmacs | 492 run-rtcmacs: rtcmacs |
478 dbx -q -C -c \ | 493 dbx -q -C -c \ |
479 'dbxenv rtc_error_log_file_name /dev/fd/1; \ | 494 'dbxenv rtc_error_log_file_name /dev/fd/1; \ |
482 check -access; \ | 497 check -access; \ |
483 suppress rui; \ | 498 suppress rui; \ |
484 runargs -batch -l ${srcdir}/../lisp/loadup.el run-temacs -q; \ | 499 runargs -batch -l ${srcdir}/../lisp/loadup.el run-temacs -q; \ |
485 run' rtcmacs | 500 run' rtcmacs |
486 | 501 |
487 debug-temacs: temacs | 502 debug-temacs: ${EXE_TARGET} |
488 -${debug_temacs} | 503 -${debug_temacs} |
489 | 504 |
490 ## Purify, Quantify, PureCoverage are software quality products from | 505 ## Purify, Quantify, PureCoverage are software quality products from |
491 ## Rational, formerly Pure Atria, formerly Pure Software. | 506 ## Rational, formerly Pure Atria, formerly Pure Software. |
492 ## | 507 ## |
500 -cache-dir=./purecache -always-use-cache-dir=yes | 515 -cache-dir=./purecache -always-use-cache-dir=yes |
501 | 516 |
502 PURIFY_LIBS = -lpthread | 517 PURIFY_LIBS = -lpthread |
503 puremacs: $(temacs_deps) | 518 puremacs: $(temacs_deps) |
504 $(PURIFY_PROG) $(PURIFY_FLAGS) $(LD) $(temacs_link_args) $(PURIFY_LIBS) | 519 $(PURIFY_PROG) $(PURIFY_FLAGS) $(LD) $(temacs_link_args) $(PURIFY_LIBS) |
505 cp $@ temacs | 520 cp $@ ${EXE_TARGET} |
506 | 521 |
507 ## Quantify | 522 ## Quantify |
508 #ifdef QUANTIFY | 523 #ifdef QUANTIFY |
509 QUANTIFY_PROG = quantify | 524 QUANTIFY_PROG = quantify |
510 QUANTIFY_HOME = `$(QUANTIFY_PROG) -print-home-dir` | 525 QUANTIFY_HOME = `$(QUANTIFY_PROG) -print-home-dir` |
512 cppflags += -I$(QUANTIFY_HOME) | 527 cppflags += -I$(QUANTIFY_HOME) |
513 temacs_link_args += $(QUANTIFY_HOME)/quantify_stubs.a | 528 temacs_link_args += $(QUANTIFY_HOME)/quantify_stubs.a |
514 | 529 |
515 quantmacs: $(temacs_deps) | 530 quantmacs: $(temacs_deps) |
516 $(QUANTIFY_PROG) $(QUANTIFY_FLAGS) $(LD) $(temacs_link_args) | 531 $(QUANTIFY_PROG) $(QUANTIFY_FLAGS) $(LD) $(temacs_link_args) |
517 cp $@ temacs | 532 cp $@ ${EXE_TARGET} |
518 #endif /* QUANTIFY */ | 533 #endif /* QUANTIFY */ |
519 | 534 |
520 | 535 |
521 PURECOV_PROG=purecov | 536 PURECOV_PROG=purecov |
522 covmacs: $(temacs_deps) | 537 covmacs: $(temacs_deps) |