1# makefile for Gambit system. 2 3# Copyright (c) 1994-2018 by Marc Feeley, All Rights Reserved. 4 5PACKAGE_SHORTNAME = @PACKAGE_SHORTNAME@ 6PACKAGE_NAME = @PACKAGE_NAME@ 7PACKAGE_VERSION = @PACKAGE_VERSION@ 8PACKAGE_STRING = @PACKAGE_STRING@ 9PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ 10PACKAGE_TARNAME = @PACKAGE_TARNAME@ 11 12@SET_MAKE@ 13 14srcdir = @srcdir@ 15VPATH = @srcdir@ 16srcdirpfx = @srcdirpfx@ 17 18CONFIGURE_COMMAND = @CONFIGURE_COMMAND@ 19 20C_COMPILER = @C_COMPILER_MF@ 21C_PREPROC = @C_PREPROC_MF@ 22FLAGS_OBJ = -pipe -O2 -fno-strict-aliasing 23FLAGS_DYN = -pipe -O2 -fno-strict-aliasing 24FLAGS_LIB = @FLAGS_LIB_MF@ 25FLAGS_EXE = @FLAGS_EXE_MF@ 26FLAGS_OPT = @FLAGS_OPT_MF@ 27FLAGS_OPT_RTS = @FLAGS_OPT_RTS_MF@ 28DEFS = @DEFS@ 29LIBS = @LIBS@ 30 31GAMBITLIB_DEFS = @GAMBITLIB_DEFS_MF@ 32LIB_PREFIX = @LIB_PREFIX@ 33LIB_VERSION_SUFFIX = @LIB_VERSION_SUFFIX@ 34LIB_MAJOR_VERSION_SUFFIX = @LIB_MAJOR_VERSION_SUFFIX@ 35 36LIB_EXTENSION = @LIB_EXTENSION@ 37GAMBITLIB = @GAMBITLIB@ 38GAMBITGSCLIB = @GAMBITGSCLIB@ 39GAMBITGSILIB = @GAMBITGSILIB@ 40INSTALL = @INSTALL@ 41INSTALL_DATA = @INSTALL_DATA@ 42INSTALL_LIB = @INSTALL_LIB@ 43INSTALL_PROGRAM = @INSTALL_PROGRAM@ 44LN_S = @LN_S@ 45RANLIB = @RANLIB@ 46AR = @AR@ 47RC = @RC@ 48GIT = @GIT@ 49HG = @HG@ 50 51prefix = @prefix@ 52exec_prefix = @exec_prefix@ 53includedir = @includedir@ 54libdir = @libdir@ 55bindir = @bindir@ 56docdir = @docdir@ 57infodir = @infodir@ 58emacsdir = @emacsdir@ 59libexecdir = @libexecdir@ 60datarootdir = @datarootdir@ 61datadir = @datadir@ 62htmldir = @htmldir@ 63dvidir = @dvidir@ 64pdfdir = @pdfdir@ 65psdir = @psdir@ 66localedir = @localedir@ 67mandir = @mandir@ 68 69# This directory's subdirectories are mostly independent; you can cd 70# into them and run `make' without going through this makefile. 71# To change the values of `make' variables: instead of editing makefiles, 72# (1) if the variable is set in `config.status', edit `config.status' 73# (which will cause the makefiles to be regenerated when you run `make'); 74# (2) otherwise, pass the desired values on the `make' command line. 75 76MDEFINES = prefix="$(prefix)" exec_prefix="$(exec_prefix)" \ 77includedir="$(includedir)" libdir="$(libdir)" \ 78bindir="$(bindir)" docdir="$(docdir)" \ 79infodir="$(infodir)" emacsdir="$(emacsdir)" 80 81SUBDIRS = include lib gsi gsc bin misc doc tests examples contrib prebuilt bench githooks 82 83RCFILES = README INSTALL.txt LICENSE-2.0.txt LGPL.txt \ 84makefile.in configure configure.ac config.guess config.sub install-sh mkidirs \ 85relpath gsc-boot.unix gsc-boot.bat.windows 86 87GITRCFILES = .gitignore .gitattributes 88HGRCFILES = .hgignore .hgtags 89 90GENDISTFILES = 91 92DISTFILES = $(RCFILES) $(GENDISTFILES) 93 94GITDISTFILES = $(GITRCFILES) 95HGDISTFILES = $(HGRCFILES) 96 97#BUILD_FARM = farm 98BUILD_FARM = localhost 99#BUILD_HOST = baro.iro.umontreal.ca 100BUILD_HOST = localhost 101 102.SUFFIXES: 103 104all: 105 106all-pre: gsc-boot@exe@ 107 108all-post: 109 110from-scratch: fake_target 111 $(MAKE) bootclean 112 $(MAKE) bootstrap # make gsc compiler corresponding to repo HEAD 113 $(MAKE) bootclean 114 $(MAKE) all # make everything with repo HEAD gsc compiler 115 116boot-most-recent-release: fake_target 117 @if test -x "boot/gsc-boot@exe@" && \ 118 test "`boot/gsc-boot@exe@ -v | sed -e 's/ .*//'`" = "$(PACKAGE_VERSION)"; then \ 119 echo "**** boot/gsc-boot@exe@ doesn't need to be rebuilt"; \ 120 else \ 121 $(MAKE) boot-most-recent-release-gsc-boot; \ 122 fi 123 124boot-most-recent-release-gsc-boot: fake_target 125 @echo "**** building boot/gsc-boot@exe@" 126 rm -rf boot 127 mkdir -p boot 128 $(GIT) archive tags/$(PACKAGE_VERSION) | (cd boot && tar xf -) 129 cd boot && \ 130 ./configure CC='$(C_COMPILER)' && \ 131 $(MAKE) bootstrap 132 133boot-wip-compiler: fake_target 134 @if test -x "boot/gsc/gsc@exe@" && \ 135 test "`boot/gsc/gsc -v | sed -e 's/ .*//'`" = "$(PACKAGE_VERSION)" && \ 136 test "`find gsc/makefile.in gsc/*.scm -exec diff -q \{\} boot/\{\} \; 2>&1`" = ""; then \ 137 echo "**** boot/gsc/gsc@exe@ doesn't need to be rebuilt"; \ 138 else \ 139 $(MAKE) boot-wip-compiler-gsc-gsc && $(MAKE) bootclean; \ 140 fi 141 142boot-wip-compiler-gsc-gsc: boot-most-recent-release 143 @echo "**** building boot/gsc/gsc@exe@ using boot/gsc-boot@exe@" 144 cd boot && \ 145 rm -f gsc/makefile && \ 146 cp ../gsc/makefile.in ../gsc/*.scm gsc && \ 147 ./configure CC='$(C_COMPILER)' && \ 148 for i in lib gsi gsc ; do (cd $$i ; $(MAKE) all) ; done 149 150wip-gsc-boot: boot-wip-compiler 151 cp boot/gsc/gsc@exe@ gsc-boot@exe@ 152 153current-gsc-boot: wip-gsc-boot 154 155dummy-gsc-boot: 156 rm -f gsc-boot@bat@ gsc-boot@exe@ 157 cp gsc-boot.bat.windows gsc-boot@bat@ 158 cp gsc-boot.unix gsc-boot@exe@ 159 chmod +x gsc-boot@exe@ 160 161gsc-boot@exe@: 162 @if [ -e .git ] && \ 163 $(GIT) --version > /dev/null 2> /dev/null && \ 164 $(GIT) describe --tags > /dev/null 2> /dev/null && \ 165 test "`$(GIT) describe --tags`" != "$(PACKAGE_VERSION)"; then \ 166 echo "**** checking if current gsc-boot must be built"; \ 167 $(MAKE) current-gsc-boot; \ 168 else \ 169 echo "**** using a dummy gsc-boot"; \ 170 $(MAKE) dummy-gsc-boot; \ 171 fi 172 173fake_target: 174 175doc info pdf html txt: fake_target 176 @cd doc && $(MAKE) $(MDEFINES) $@ 177 178check ut ut-C ut-js ut-python ut-ruby ut-php ut-java st st-C st-js st-python st-ruby st-php st-java: fake_target all 179 @cd tests && $(MAKE) $(MDEFINES) $@ 180 181bench: fake_target all 182 @cd bench && $(MAKE) $(MDEFINES) $@ 183 184examples: fake_target all 185 @cd examples && $(MAKE) $(MDEFINES) $@ 186 187prebuilt: dist dist-devel 188 PATH="gsi:$$PATH" prebuilt/remote-connect $(BUILD_FARM) "" "(define tmpdir \"gambtmp0\")(define gambit-dist \"$(PACKAGE_TARNAME)\")(define timeout 3000)(ssh timeout (string-append \"rm -rf \" tmpdir \";mkdir \" tmpdir \";echo \\\"logged in on:\\\";hostname\"))(scp-to timeout (string-append gambit-dist \".tgz\") (string-append tmpdir \"/.\"))(ssh timeout (string-append \"ssh $(BUILD_HOST) \\\"cd \" tmpdir \";tar zxf \" gambit-dist \".tgz;cd \" gambit-dist \";./configure;make -j 4;mv ../\" gambit-dist \".tgz .;cd prebuilt;make prebuilt\\\"\"))(scp-from timeout (string-append tmpdir \"/\" gambit-dist \"/$(PACKAGE_TARNAME)-*\") \".\")" 189 @# cd prebuilt && $(MAKE) $(MDEFINES) $@ 190 191xactlog@exe@: fake_target 192 @cd contrib/xactlog && $(MAKE) $(MDEFINES) $@ 193 194stamp: fake_target 195 @cd include && $(MAKE) $(MDEFINES) $@ 196 197commit: stamp deselect-gen-for-commit 198 $(RC) commit 199 200diff: fake_target 201 @$(RC) diff | cat 202 203log: fake_target 204 @$(RC) log | cat 205 206status: fake_target 207 @$(RC) status || : 208 209push: fake_target 210 @if test "$(RC)" = "$(GIT)"; then \ 211 $(GIT) push git@github.com:gambit/gambit.git; \ 212 $(GIT) push --tags git@github.com:gambit/gambit.git; \ 213 else \ 214 $(HG) push; \ 215 fi 216 217pull: fake_target 218 @if test "$(RC)" = "$(GIT)"; then \ 219 $(GIT) pull; \ 220 $(GIT) fetch --tags; \ 221 else \ 222 $(HG) pull; \ 223 fi 224 225update-nopull: fake_target 226 @if test "$(RC)" = "$(GIT)"; then \ 227 next_version=`$(GIT) tag | fgrep -e '-bootstrap' | sed -e 's/v//g' -e 's/-bootstrap.*//g' | sort -r -s -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n | sed 's/^/v/g' | sed -n '/^$(PACKAGE_VERSION)/{n;p;}'`; \ 228 else \ 229 next_version=`$(HG) tags | fgrep -e '-bootstrap' | sed -e 's/v//g' -e 's/-bootstrap.*//g' | sort -r -s -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n | sed 's/^/v/g' | sed -n '/^$(PACKAGE_VERSION)/{n;p;}'`; \ 230 fi; \ 231 if test "$$next_version" = ""; then \ 232 if test "$(RC)" = "$(GIT)"; then \ 233 $(GIT) checkout master; \ 234 else \ 235 $(HG) checkout; \ 236 fi; \ 237 else \ 238 $(RC) checkout $$next_version-bootstrap; \ 239 $(MAKE) bootstrap; \ 240 $(RC) checkout $$next_version; \ 241 $(MAKE) bootclean bootstrap update; \ 242 fi 243 244update: pull update-nopull 245 $(MAKE) 246 247new-major: fake_target 248 major=`echo $(PACKAGE_VERSION) | sed -e "s/v//g" -e "s/\.[^.]*\.[^.]*//g"`; \ 249 next_major=`eval expr 1 + $$major`; \ 250 next_version=v$$next_major.0.0; \ 251 $(MAKE) NEW_VERSION=$$next_version change-version 252 253new-minor: fake_target 254 major=`echo $(PACKAGE_VERSION) | sed -e "s/v//g" -e "s/\.[^.]*\.[^.]*//g"`; \ 255 minor=`echo $(PACKAGE_VERSION) | sed -e "s/v[^.]*\.//g" -e "s/\.[^.]*//g"`; \ 256 next_minor=`eval expr 1 + $$minor`; \ 257 next_version=v$$major.$$next_minor.0; \ 258 $(MAKE) NEW_VERSION=$$next_version change-version 259 260new-revision: fake_target 261 major=`echo $(PACKAGE_VERSION) | sed -e "s/v//g" -e "s/\.[^.]*\.[^.]*//g"`; \ 262 minor=`echo $(PACKAGE_VERSION) | sed -e "s/v[^.]*\.//g" -e "s/\.[^.]*//g"`; \ 263 revision=`echo $(PACKAGE_VERSION) | sed -e "s/v[^.]*\.[^.]*\.//g" -e "s///g"`; \ 264 next_revision=`eval expr 1 + $$revision`; \ 265 next_version=v$$major.$$minor.$$next_revision; \ 266 $(MAKE) NEW_VERSION=$$next_version change-version 267 268change-version: deselect-gen-for-commit 269 major=`echo $(PACKAGE_VERSION) | sed -e "s/v//g" -e "s/\.[^.]*\.[^.]*//g"`; \ 270 minor=`echo $(PACKAGE_VERSION) | sed -e "s/v[^.]*\.//g" -e "s/\.[^.]*//g"`; \ 271 revision=`echo $(PACKAGE_VERSION) | sed -e "s/v[^.]*\.[^.]*\.//g" -e "s///g"`; \ 272 next_major=`echo $(NEW_VERSION) | sed -e "s/v//g" -e "s/\.[^.]*\.[^.]*//g"`; \ 273 next_minor=`echo $(NEW_VERSION) | sed -e "s/v[^.]*\.//g" -e "s/\.[^.]*//g"`; \ 274 next_revision=`echo $(NEW_VERSION) | sed -e "s/v[^.]*\.[^.]*\.//g" -e "s///g"`; \ 275 version_num=`eval expr "\( 100000 \\* $$major \) + \( 1000 \\* $$minor \) + $$revision"`; \ 276 new_version_num=`eval expr "\( 100000 \\* $$next_major \) + \( 1000 \\* $$next_minor \) + $$next_revision"`; \ 277 sed -e "/(define (compiler-version) $$version_num)/s/$$version_num/$$new_version_num/" gsc/_parms.scm > gsc/_parms.scm-new; \ 278 if ! diff gsc/_parms.scm gsc/_parms.scm-new > /dev/null; then \ 279 mv gsc/_parms.scm-new gsc/_parms.scm; \ 280 if test "$(RC)" = "$(GIT)"; then \ 281 $(GIT) commit -a -m "[COMPILER CHANGES NEEDED FOR $(NEW_VERSION)] Changed version in compiler"; \ 282 else \ 283 $(HG) commit -m "[COMPILER CHANGES NEEDED FOR $(NEW_VERSION)] Changed version in compiler"; \ 284 fi; \ 285 $(RC) tag $(NEW_VERSION)-bootstrap; \ 286 if $(MAKE) bootstrap; then \ 287 misc/changev $$version_num $$new_version_num; \ 288 touch doc/gambit.txi; \ 289 cd tests; @SETDLPATH@ ../gsc/gsc -:~~bin=../bin,~~lib=../lib,~~include=../include -f -warnings -c mix.scm; mv mix.c test5.ok; cd ..; \ 290 if $(MAKE) bootclean && $(MAKE) -j 2 && $(MAKE) check && $(MAKE) doc && $(MAKE) select-gen-for-commit; then \ 291 if test "$(RC)" = "$(GIT)"; then \ 292 $(GIT) commit -a -m "[RUNTIME CHANGES NEEDED FOR $(NEW_VERSION)] Changed version of runtime using misc/changev"; \ 293 else \ 294 $(HG) commit -m "[RUNTIME CHANGES NEEDED FOR $(NEW_VERSION)] Changed version of runtime using misc/changev"; \ 295 fi; \ 296 $(RC) tag $(NEW_VERSION); \ 297 fi; \ 298 fi; \ 299 else \ 300 echo Compiler version in gsc/_parms.scm is inconsistent with PACKAGE_VERSION; \ 301 fi 302 303release: fake_target 304 $(MAKE) bootstrap 305 $(MAKE) clean 306 $(MAKE) all 307 $(MAKE) check 308 $(MAKE) doc 309 rm -f $(PACKAGE_TARNAME).tgz $(PACKAGE_TARNAME)-*.* 310 $(MAKE) prebuilt 311 312publish-release: fake_target 313 misc/publish-release $(PACKAGE_VERSION) $(PACKAGE_TARNAME).tgz $(PACKAGE_TARNAME)-*.* 314 315bootstrap-pre: all 316 317bootstrap-post: 318 319install-pre: 320 @if test "@ENABLE_SHARED@" = "yes" -a "@ENABLE_ABSOLUTE_SHARED_LIBS@" = "yes" -a "$(DESTDIR)" != ""; then \ 321 echo "*** The use of --enable-shared and --enable-absolute-shared-libs is"; \ 322 echo "*** incompatible with the use of DESTDIR. You can either specify an"; \ 323 echo "*** empty DESTDIR or reconfigure with --disable-absolute-shared-libs."; \ 324 exit 1; \ 325 fi 326 327install-post: all 328 if test "@ENABLE_MULTIPLE_VERSIONS@" = "yes"; then \ 329 if test "@bat@" = ""; then \ 330 $(srcdirpfx)./mkidirs "$(DESTDIR)$(prefix)"; \ 331 rm -f "$(DESTDIR)$(prefix)/../current" \ 332 "$(DESTDIR)$(prefix)/../current.lnk"; \ 333 (cd "$(DESTDIR)$(prefix)/.." && $(LN_S) $(PACKAGE_VERSION) current); \ 334 fi; \ 335 fi 336 337uninstall-pre: 338 339uninstall-post: 340 if test "@ENABLE_MULTIPLE_VERSIONS@" = "yes"; then \ 341 if test "@bat@" = ""; then \ 342 (cd "$(DESTDIR)$(prefix)/.." && \ 343 rm -f current && \ 344 rmdir $(PACKAGE_VERSION)); \ 345 fi; \ 346 fi 347 348select-gen-for-commit-pre: 349 350select-gen-for-commit-post: 351 352deselect-gen-for-commit-pre: 353 354deselect-gen-for-commit-post: 355 356mostlyclean-pre: 357 358mostlyclean-post: 359 360clean-pre: mostlyclean-pre 361 362clean-post: mostlyclean-post 363 364distclean-pre: clean-pre 365 366distclean-post: clean-post 367 368bootclean-pre: distclean-pre 369 370bootclean-post: distclean-post 371 372realclean-pre: bootclean-pre 373 374realclean-post: bootclean-post 375 rm -f config.log config.status makefile 376 377rc-setup-pre: 378 $(RC) init 379 @if test "$(RC)" = "$(GIT)"; then \ 380 $(GIT) add $(RCFILES) $(GITRCFILES); \ 381 rm -f .git/config; \ 382 echo '[core]' >> .git/config; \ 383 echo ' repositoryformatversion = 0' >> .git/config; \ 384 echo ' fileMode = false' >> .git/config; \ 385 echo ' bare = false' >> .git/config; \ 386 echo ' logallrefupdates = true' >> .git/config; \ 387 echo ' ignorecase = true' >> .git/config; \ 388 echo ' autocrlf = false' >> .git/config; \ 389 echo '[remote "origin"]' >> .git/config; \ 390 echo ' url = git@github.com:gambit/gambit.git' >> .git/config; \ 391 echo ' fetch = +refs/heads/*:refs/remotes/origin/*' >> .git/config; \ 392 echo '[branch "master"]' >> .git/config; \ 393 echo ' remote = origin' >> .git/config; \ 394 echo ' merge = refs/heads/master' >> .git/config; \ 395 else \ 396 $(HG) add $(RCFILES) $(HGRCFILES); \ 397 rm -f .hg/hgrc; \ 398 echo "[paths]" > .hg/hgrc; \ 399 echo "default-push = ssh://gambit@frontal07.iro.umontreal.ca/HTML/repo/gambit" >> .hg/hgrc; \ 400 echo "default = http://www.iro.umontreal.ca/~gambit/repo/gambit/" >> .hg/hgrc; \ 401 fi 402 403rc-setup-post: 404 @if test "$(RC)" = "$(GIT)"; then \ 405 $(GIT) commit -a -m "Initial commit of $(PACKAGE_STRING)"; \ 406 else \ 407 $(HG) commit -m "Initial commit of $(PACKAGE_STRING)"; \ 408 fi 409 410dist-pre: 411 rm -rf $(PACKAGE_TARNAME) 412 mkdir $(PACKAGE_TARNAME) 413 chmod 777 $(PACKAGE_TARNAME) 414 @echo " Copying distribution files:" 415 @for file in $(DISTFILES); do \ 416 echo " $$file"; \ 417 ln $(srcdirpfx)$$file $(PACKAGE_TARNAME) 2> /dev/null \ 418 || cp -p $(srcdirpfx)$$file $(PACKAGE_TARNAME); \ 419 done 420 421dist-post: 422 COPYFILE_DISABLE=1 tar chof $(PACKAGE_TARNAME).tar $(PACKAGE_TARNAME) 423 gzip -9 $(PACKAGE_TARNAME).tar 424 mv $(PACKAGE_TARNAME).tar.gz $(PACKAGE_TARNAME).tgz 425 rm -rf $(PACKAGE_TARNAME) 426 427dist-devel-pre: 428 rm -rf $(PACKAGE_TARNAME) 429 mkdir $(PACKAGE_TARNAME) 430 chmod 777 $(PACKAGE_TARNAME) 431 @echo " Copying distribution files:" 432 @for file in $(DISTFILES); do \ 433 echo " $$file"; \ 434 ln $(srcdirpfx)$$file $(PACKAGE_TARNAME) 2> /dev/null \ 435 || cp -p $(srcdirpfx)$$file $(PACKAGE_TARNAME); \ 436 done 437 @if test "$(RC)" = "$(GIT)"; then \ 438 for file in $(GITDISTFILES); do \ 439 echo " $$file"; \ 440 ln $(srcdirpfx)$$file $(PACKAGE_TARNAME) 2> /dev/null \ 441 || cp -p $(srcdirpfx)$$file $(PACKAGE_TARNAME); \ 442 done; \ 443 echo " .git"; \ 444 ln $(srcdirpfx).git $(PACKAGE_TARNAME) 2> /dev/null \ 445 || cp -p -R $(srcdirpfx).git $(PACKAGE_TARNAME); \ 446 else \ 447 for file in $(HGDISTFILES); do \ 448 echo " $$file"; \ 449 ln $(srcdirpfx)$$file $(PACKAGE_TARNAME) 2> /dev/null \ 450 || cp -p $(srcdirpfx)$$file $(PACKAGE_TARNAME); \ 451 done; \ 452 echo " .hg"; \ 453 ln $(srcdirpfx).hg $(PACKAGE_TARNAME) 2> /dev/null \ 454 || cp -p -R $(srcdirpfx).hg $(PACKAGE_TARNAME); \ 455 fi 456 457dist-devel-post: 458 rm -rf $(PACKAGE_TARNAME)-devel 459 mv $(PACKAGE_TARNAME) $(PACKAGE_TARNAME)-devel 460 COPYFILE_DISABLE=1 tar chof $(PACKAGE_TARNAME)-devel.tar $(PACKAGE_TARNAME)-devel 461 gzip -9 $(PACKAGE_TARNAME)-devel.tar 462 mv $(PACKAGE_TARNAME)-devel.tar.gz $(PACKAGE_TARNAME)-devel.tgz 463 rm -rf $(PACKAGE_TARNAME)-devel 464 465all-recursive bootstrap-recursive install-recursive uninstall-recursive select-gen-for-commit-recursive deselect-gen-for-commit-recursive mostlyclean-recursive clean-recursive distclean-recursive bootclean-recursive realclean-recursive rc-setup-recursive dist-recursive dist-devel-recursive: 466 @for subdir in $(SUBDIRS); do \ 467 target=`echo $@ | sed 's/-recursive//'`; \ 468 echo making $$target in $$subdir; \ 469 (cd $$subdir && $(MAKE) $$target) || exit 1; \ 470 done 471 472all: all-post 473 474all-post: all-recursive 475 476all-recursive: all-pre 477 478bootstrap: bootstrap-post 479 480bootstrap-post: bootstrap-recursive 481 482bootstrap-recursive: bootstrap-pre 483 484install: install-post 485 486install-post: install-recursive 487 488install-recursive: install-pre 489 490uninstall: uninstall-post 491 492uninstall-post: uninstall-recursive 493 494uninstall-recursive: uninstall-pre 495 496select-gen-for-commit: select-gen-for-commit-post 497 498select-gen-for-commit-post: select-gen-for-commit-recursive 499 500select-gen-for-commit-recursive: select-gen-for-commit-pre 501 502deselect-gen-for-commit: deselect-gen-for-commit-post 503 504deselect-gen-for-commit-post: deselect-gen-for-commit-recursive 505 506deselect-gen-for-commit-recursive: deselect-gen-for-commit-pre 507 508mostlyclean: mostlyclean-post 509 510mostlyclean-post: mostlyclean-recursive 511 512mostlyclean-recursive: mostlyclean-pre 513 514clean: clean-post 515 516clean-post: clean-recursive 517 518clean-recursive: clean-pre 519 520distclean: distclean-post 521 522distclean-post: distclean-recursive 523 524distclean-recursive: distclean-pre 525 526bootclean: bootclean-post 527 528bootclean-post: bootclean-recursive 529 530bootclean-recursive: bootclean-pre 531 532realclean: realclean-post 533 534realclean-post: realclean-recursive 535 536realclean-recursive: realclean-pre 537 538rc-setup: rc-setup-post 539 540rc-setup-post: rc-setup-recursive 541 542rc-setup-recursive: rc-setup-pre 543 544dist: doc dist-post 545 546dist-post: dist-recursive 547 548dist-recursive: dist-pre 549 550dist-devel: doc dist-devel-post 551 552dist-devel-post: dist-devel-recursive 553 554dist-devel-recursive: dist-devel-pre 555 556# For an explanation of the following makefile rules, see node 557# `Automatic Remaking' in GNU Autoconf documentation. 558 559makefile: makefile.in config.status 560 CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status 561 562config.status: configure 563 ./config.status --recheck 564 565configure: configure.ac 566 cd $(srcdir) && autoconf configure.ac > configure && chmod 755 configure 567 568# Tell versions [3.59,3.63) of GNU make not to export all variables. 569# Otherwise a system limit (for SysV at least) may be exceeded. 570.NOEXPORT: 571