1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21# 22# Copyright 2008 Sun Microsystems, Inc. All rights reserved. 23# Use is subject to license terms. 24# 25# ident "%Z%%M% %I% %E% SMI" 26# 27 28SHELL=/usr/bin/ksh 29 30LIBRARY= libast.a 31VERS= .1 32 33# platform-independent sources are in common/ 34OBJECTS += \ 35 common/cdt/dtclose.o \ 36 common/cdt/dtdisc.o \ 37 common/cdt/dtextract.o \ 38 common/cdt/dtflatten.o \ 39 common/cdt/dthash.o \ 40 common/cdt/dtlist.o \ 41 common/cdt/dtmethod.o \ 42 common/cdt/dtnew.o \ 43 common/cdt/dtopen.o \ 44 common/cdt/dtrenew.o \ 45 common/cdt/dtrestore.o \ 46 common/cdt/dtsize.o \ 47 common/cdt/dtstat.o \ 48 common/cdt/dtstrhash.o \ 49 common/cdt/dttree.o \ 50 common/cdt/dttreeset.o \ 51 common/cdt/dtview.o \ 52 common/cdt/dtwalk.o \ 53 common/comp/atexit.o \ 54 common/comp/basename.o \ 55 common/comp/catopen.o \ 56 common/comp/closelog.o \ 57 common/comp/creat64.o \ 58 common/comp/dirname.o \ 59 common/comp/dup2.o \ 60 common/comp/eaccess.o \ 61 common/comp/errno.o \ 62 common/comp/execlp.o \ 63 common/comp/execve.o \ 64 common/comp/execvp.o \ 65 common/comp/execvpe.o \ 66 common/comp/fcntl.o \ 67 common/comp/fmtmsglib.o \ 68 common/comp/fnmatch.o \ 69 common/comp/frexp.o \ 70 common/comp/frexpl.o \ 71 common/comp/fsync.o \ 72 common/comp/ftw.o \ 73 common/comp/getdate.o \ 74 common/comp/getgroups.o \ 75 common/comp/getlogin.o \ 76 common/comp/getopt.o \ 77 common/comp/getoptl.o \ 78 common/comp/getpgrp.o \ 79 common/comp/getsubopt.o \ 80 common/comp/getwd.o \ 81 common/comp/gross.o \ 82 common/comp/hsearch.o \ 83 common/comp/iconv.o \ 84 common/comp/killpg.o \ 85 common/comp/link.o \ 86 common/comp/localeconv.o \ 87 common/comp/lstat.o \ 88 common/comp/memccpy.o \ 89 common/comp/memchr.o \ 90 common/comp/memcmp.o \ 91 common/comp/memcpy.o \ 92 common/comp/memmove.o \ 93 common/comp/memset.o \ 94 common/comp/mkdir.o \ 95 common/comp/mkfifo.o \ 96 common/comp/mknod.o \ 97 common/comp/mktemp.o \ 98 common/comp/mktime.o \ 99 common/comp/mount.o \ 100 common/comp/nftw.o \ 101 common/comp/omitted.o \ 102 common/comp/open.o \ 103 common/comp/openlog.o \ 104 common/comp/putenv.o \ 105 common/comp/re_comp.o \ 106 common/comp/readlink.o \ 107 common/comp/realpath.o \ 108 common/comp/regcmp.o \ 109 common/comp/regexp.o \ 110 common/comp/remove.o \ 111 common/comp/rename.o \ 112 common/comp/resolvepath.o \ 113 common/comp/rmdir.o \ 114 common/comp/setenv.o \ 115 common/comp/setlocale.o \ 116 common/comp/setlogmask.o \ 117 common/comp/setpgid.o \ 118 common/comp/setsid.o \ 119 common/comp/sigunblock.o \ 120 common/comp/spawnveg.o \ 121 common/comp/statvfs.o \ 122 common/comp/strcasecmp.o \ 123 common/comp/strchr.o \ 124 common/comp/strftime.o \ 125 common/comp/strncasecmp.o \ 126 common/comp/strptime.o \ 127 common/comp/strrchr.o \ 128 common/comp/strstr.o \ 129 common/comp/strtod.o \ 130 common/comp/strtol.o \ 131 common/comp/strtold.o \ 132 common/comp/strtoll.o \ 133 common/comp/strtoul.o \ 134 common/comp/strtoull.o \ 135 common/comp/swab.o \ 136 common/comp/symlink.o \ 137 common/comp/syslog.o \ 138 common/comp/system.o \ 139 common/comp/tempnam.o \ 140 common/comp/tmpnam.o \ 141 common/comp/transition.o \ 142 common/comp/tsearch.o \ 143 common/comp/unlink.o \ 144 common/comp/unsetenv.o \ 145 common/comp/vfork.o \ 146 common/comp/waitpid.o \ 147 common/comp/wc.o \ 148 common/comp/wordexp.o \ 149 common/dir/getdents.o \ 150 common/dir/opendir.o \ 151 common/dir/readdir.o \ 152 common/dir/rewinddir.o \ 153 common/dir/seekdir.o \ 154 common/dir/telldir.o \ 155 common/disc/memfatal.o \ 156 common/disc/sfdcdio.o \ 157 common/disc/sfdcdos.o \ 158 common/disc/sfdcfilter.o \ 159 common/disc/sfdcmore.o \ 160 common/disc/sfdcprefix.o \ 161 common/disc/sfdcseekable.o \ 162 common/disc/sfdcslow.o \ 163 common/disc/sfdcsubstr.o \ 164 common/disc/sfdctee.o \ 165 common/disc/sfdcunion.o \ 166 common/disc/sfkeyprintf.o \ 167 common/disc/sfstrtmp.o \ 168 common/hash/hashalloc.o \ 169 common/hash/hashdump.o \ 170 common/hash/hashfree.o \ 171 common/hash/hashlast.o \ 172 common/hash/hashlook.o \ 173 common/hash/hashscan.o \ 174 common/hash/hashsize.o \ 175 common/hash/hashview.o \ 176 common/hash/hashwalk.o \ 177 common/hash/memhash.o \ 178 common/hash/memsum.o \ 179 common/hash/strhash.o \ 180 common/hash/strkey.o \ 181 common/hash/strsum.o \ 182 common/misc/error.o \ 183 common/misc/errorf.o \ 184 common/misc/errormsg.o \ 185 common/misc/errorx.o \ 186 common/misc/fastfind.o \ 187 common/misc/fmtrec.o \ 188 common/misc/fs3d.o \ 189 common/misc/fts.o \ 190 common/misc/ftwalk.o \ 191 common/misc/ftwflags.o \ 192 common/misc/getcwd.o \ 193 common/misc/glob.o \ 194 common/misc/liberror.o \ 195 common/misc/libevent.o \ 196 common/misc/magic.o \ 197 common/misc/mime.o \ 198 common/misc/mimetype.o \ 199 common/misc/optesc.o \ 200 common/misc/optget.o \ 201 common/misc/optjoin.o \ 202 common/misc/procclose.o \ 203 common/misc/procfree.o \ 204 common/misc/procopen.o \ 205 common/misc/procrun.o \ 206 common/misc/recfmt.o \ 207 common/misc/reclen.o \ 208 common/misc/recstr.o \ 209 common/misc/setenviron.o \ 210 common/misc/sigcrit.o \ 211 common/misc/sigdata.o \ 212 common/misc/signal.o \ 213 common/misc/stack.o \ 214 common/misc/state.o \ 215 common/misc/stk.o \ 216 common/misc/systrace.o \ 217 common/misc/translate.o \ 218 common/misc/univdata.o \ 219 common/obsolete/spawn.o \ 220 common/path/pathaccess.o \ 221 common/path/pathbin.o \ 222 common/path/pathcanon.o \ 223 common/path/pathcat.o \ 224 common/path/pathcd.o \ 225 common/path/pathcheck.o \ 226 common/path/pathexists.o \ 227 common/path/pathfind.o \ 228 common/path/pathgetlink.o \ 229 common/path/pathkey.o \ 230 common/path/pathnative.o \ 231 common/path/pathpath.o \ 232 common/path/pathposix.o \ 233 common/path/pathprobe.o \ 234 common/path/pathrepl.o \ 235 common/path/pathsetlink.o \ 236 common/path/pathshell.o \ 237 common/path/pathstat.o \ 238 common/path/pathtemp.o \ 239 common/path/pathtmp.o \ 240 common/port/astconf.o \ 241 common/port/astcopy.o \ 242 common/port/astdynamic.o \ 243 common/port/astlicense.o \ 244 common/port/astquery.o \ 245 common/port/aststatic.o \ 246 common/port/astwinsize.o \ 247 common/port/iblocks.o \ 248 common/port/lc.o \ 249 common/port/mc.o \ 250 common/port/mnt.o \ 251 common/port/touch.o \ 252 common/preroot/getpreroot.o \ 253 common/preroot/ispreroot.o \ 254 common/preroot/realopen.o \ 255 common/preroot/setpreroot.o \ 256 common/regex/regalloc.o \ 257 common/regex/regcache.o \ 258 common/regex/regclass.o \ 259 common/regex/regcoll.o \ 260 common/regex/regcomp.o \ 261 common/regex/regdecomp.o \ 262 common/regex/regerror.o \ 263 common/regex/regexec.o \ 264 common/regex/regfatal.o \ 265 common/regex/reginit.o \ 266 common/regex/regnexec.o \ 267 common/regex/regrecord.o \ 268 common/regex/regrexec.o \ 269 common/regex/regstat.o \ 270 common/regex/regsub.o \ 271 common/regex/regsubcomp.o \ 272 common/regex/regsubexec.o \ 273 common/sfio/_sfclrerr.o \ 274 common/sfio/_sfdlen.o \ 275 common/sfio/_sfeof.o \ 276 common/sfio/_sferror.o \ 277 common/sfio/_sffileno.o \ 278 common/sfio/_sfgetc.o \ 279 common/sfio/_sfgetl.o \ 280 common/sfio/_sfgetl2.o \ 281 common/sfio/_sfgetu.o \ 282 common/sfio/_sfgetu2.o \ 283 common/sfio/_sfllen.o \ 284 common/sfio/_sfopen.o \ 285 common/sfio/_sfputc.o \ 286 common/sfio/_sfputd.o \ 287 common/sfio/_sfputl.o \ 288 common/sfio/_sfputm.o \ 289 common/sfio/_sfputu.o \ 290 common/sfio/_sfslen.o \ 291 common/sfio/_sfstacked.o \ 292 common/sfio/_sfulen.o \ 293 common/sfio/_sfvalue.o \ 294 common/sfio/sfclose.o \ 295 common/sfio/sfclrlock.o \ 296 common/sfio/sfcvt.o \ 297 common/sfio/sfdisc.o \ 298 common/sfio/sfdlen.o \ 299 common/sfio/sfecvt.o \ 300 common/sfio/sfexcept.o \ 301 common/sfio/sfextern.o \ 302 common/sfio/sffcvt.o \ 303 common/sfio/sffilbuf.o \ 304 common/sfio/sfflsbuf.o \ 305 common/sfio/sfgetd.o \ 306 common/sfio/sfgetl.o \ 307 common/sfio/sfgetm.o \ 308 common/sfio/sfgetr.o \ 309 common/sfio/sfgetu.o \ 310 common/sfio/sfllen.o \ 311 common/sfio/sfmode.o \ 312 common/sfio/sfmove.o \ 313 common/sfio/sfmutex.o \ 314 common/sfio/sfnew.o \ 315 common/sfio/sfnotify.o \ 316 common/sfio/sfnputc.o \ 317 common/sfio/sfopen.o \ 318 common/sfio/sfpeek.o \ 319 common/sfio/sfpkrd.o \ 320 common/sfio/sfpoll.o \ 321 common/sfio/sfpool.o \ 322 common/sfio/sfpopen.o \ 323 common/sfio/sfprintf.o \ 324 common/sfio/sfprints.o \ 325 common/sfio/sfpurge.o \ 326 common/sfio/sfputd.o \ 327 common/sfio/sfputl.o \ 328 common/sfio/sfputm.o \ 329 common/sfio/sfputr.o \ 330 common/sfio/sfputu.o \ 331 common/sfio/sfraise.o \ 332 common/sfio/sfrd.o \ 333 common/sfio/sfread.o \ 334 common/sfio/sfreserve.o \ 335 common/sfio/sfresize.o \ 336 common/sfio/sfscanf.o \ 337 common/sfio/sfseek.o \ 338 common/sfio/sfset.o \ 339 common/sfio/sfsetbuf.o \ 340 common/sfio/sfsetfd.o \ 341 common/sfio/sfsize.o \ 342 common/sfio/sfsk.o \ 343 common/sfio/sfstack.o \ 344 common/sfio/sfstrtod.o \ 345 common/sfio/sfswap.o \ 346 common/sfio/sfsync.o \ 347 common/sfio/sftable.o \ 348 common/sfio/sftell.o \ 349 common/sfio/sftmp.o \ 350 common/sfio/sfungetc.o \ 351 common/sfio/sfvprintf.o \ 352 common/sfio/sfvscanf.o \ 353 common/sfio/sfwr.o \ 354 common/sfio/sfwrite.o \ 355 common/stdio/_doprnt.o \ 356 common/stdio/_doscan.o \ 357 common/stdio/_filbuf.o \ 358 common/stdio/_flsbuf.o \ 359 common/stdio/_stdfun.o \ 360 common/stdio/_stdopen.o \ 361 common/stdio/_stdprintf.o \ 362 common/stdio/_stdscanf.o \ 363 common/stdio/_stdsprnt.o \ 364 common/stdio/_stdvbuf.o \ 365 common/stdio/_stdvsnprnt.o \ 366 common/stdio/_stdvsprnt.o \ 367 common/stdio/_stdvsscn.o \ 368 common/stdio/asprintf.o \ 369 common/stdio/clearerr.o \ 370 common/stdio/fclose.o \ 371 common/stdio/fdopen.o \ 372 common/stdio/feof.o \ 373 common/stdio/ferror.o \ 374 common/stdio/fflush.o \ 375 common/stdio/fgetc.o \ 376 common/stdio/fgetpos.o \ 377 common/stdio/fgets.o \ 378 common/stdio/fgetwc.o \ 379 common/stdio/fgetws.o \ 380 common/stdio/fileno.o \ 381 common/stdio/fopen.o \ 382 common/stdio/fprintf.o \ 383 common/stdio/fpurge.o \ 384 common/stdio/fputc.o \ 385 common/stdio/fputs.o \ 386 common/stdio/fputwc.o \ 387 common/stdio/fputws.o \ 388 common/stdio/fread.o \ 389 common/stdio/freopen.o \ 390 common/stdio/fscanf.o \ 391 common/stdio/fseek.o \ 392 common/stdio/fseeko.o \ 393 common/stdio/fsetpos.o \ 394 common/stdio/ftell.o \ 395 common/stdio/ftello.o \ 396 common/stdio/fwide.o \ 397 common/stdio/fwprintf.o \ 398 common/stdio/fwrite.o \ 399 common/stdio/fwscanf.o \ 400 common/stdio/getc.o \ 401 common/stdio/getchar.o \ 402 common/stdio/getw.o \ 403 common/stdio/getwc.o \ 404 common/stdio/getwchar.o \ 405 common/stdio/pclose.o \ 406 common/stdio/popen.o \ 407 common/stdio/printf.o \ 408 common/stdio/putc.o \ 409 common/stdio/putchar.o \ 410 common/stdio/puts.o \ 411 common/stdio/putw.o \ 412 common/stdio/putwc.o \ 413 common/stdio/putwchar.o \ 414 common/stdio/rewind.o \ 415 common/stdio/scanf.o \ 416 common/stdio/setbuf.o \ 417 common/stdio/setbuffer.o \ 418 common/stdio/setlinebuf.o \ 419 common/stdio/setvbuf.o \ 420 common/stdio/snprintf.o \ 421 common/stdio/sprintf.o \ 422 common/stdio/sscanf.o \ 423 common/stdio/stdio_c99.o \ 424 common/stdio/stdio_gnu.o \ 425 common/stdio/swprintf.o \ 426 common/stdio/swscanf.o \ 427 common/stdio/tmpfile.o \ 428 common/stdio/ungetc.o \ 429 common/stdio/ungetwc.o \ 430 common/stdio/vasprintf.o \ 431 common/stdio/vfprintf.o \ 432 common/stdio/vfscanf.o \ 433 common/stdio/vfwprintf.o \ 434 common/stdio/vfwscanf.o \ 435 common/stdio/vprintf.o \ 436 common/stdio/vscanf.o \ 437 common/stdio/vsnprintf.o \ 438 common/stdio/vsprintf.o \ 439 common/stdio/vsscanf.o \ 440 common/stdio/vswprintf.o \ 441 common/stdio/vswscanf.o \ 442 common/stdio/vwprintf.o \ 443 common/stdio/vwscanf.o \ 444 common/stdio/wprintf.o \ 445 common/stdio/wscanf.o \ 446 common/string/base64.o \ 447 common/string/ccmap.o \ 448 common/string/ccmapid.o \ 449 common/string/ccnative.o \ 450 common/string/chresc.o \ 451 common/string/chrtoi.o \ 452 common/string/fmtbase.o \ 453 common/string/fmtbuf.o \ 454 common/string/fmtclock.o \ 455 common/string/fmtdev.o \ 456 common/string/fmtelapsed.o \ 457 common/string/fmterror.o \ 458 common/string/fmtesc.o \ 459 common/string/fmtfmt.o \ 460 common/string/fmtfs.o \ 461 common/string/fmtgid.o \ 462 common/string/fmtident.o \ 463 common/string/fmtip4.o \ 464 common/string/fmtls.o \ 465 common/string/fmtmatch.o \ 466 common/string/fmtmode.o \ 467 common/string/fmtnum.o \ 468 common/string/fmtperm.o \ 469 common/string/fmtre.o \ 470 common/string/fmtscale.o \ 471 common/string/fmtsignal.o \ 472 common/string/fmttime.o \ 473 common/string/fmttmx.o \ 474 common/string/fmttv.o \ 475 common/string/fmtuid.o \ 476 common/string/fmtversion.o \ 477 common/string/memdup.o \ 478 common/string/modedata.o \ 479 common/string/modei.o \ 480 common/string/modex.o \ 481 common/string/stracmp.o \ 482 common/string/strcopy.o \ 483 common/string/strdup.o \ 484 common/string/strelapsed.o \ 485 common/string/strerror.o \ 486 common/string/stresc.o \ 487 common/string/streval.o \ 488 common/string/strexpr.o \ 489 common/string/strgid.o \ 490 common/string/strlcat.o \ 491 common/string/strlcpy.o \ 492 common/string/strlook.o \ 493 common/string/strmatch.o \ 494 common/string/strmode.o \ 495 common/string/strnacmp.o \ 496 common/string/strncopy.o \ 497 common/string/strntod.o \ 498 common/string/strntol.o \ 499 common/string/strntold.o \ 500 common/string/strntoll.o \ 501 common/string/strntoul.o \ 502 common/string/strntoull.o \ 503 common/string/stropt.o \ 504 common/string/strperm.o \ 505 common/string/strpsearch.o \ 506 common/string/strsearch.o \ 507 common/string/strsort.o \ 508 common/string/strtape.o \ 509 common/string/strtoip4.o \ 510 common/string/strton.o \ 511 common/string/strtonll.o \ 512 common/string/struid.o \ 513 common/string/struniq.o \ 514 common/string/swapget.o \ 515 common/string/swapmem.o \ 516 common/string/swapop.o \ 517 common/string/swapput.o \ 518 common/string/tok.o \ 519 common/string/tokline.o \ 520 common/string/tokscan.o \ 521 common/tm/tmdata.o \ 522 common/tm/tmdate.o \ 523 common/tm/tmequiv.o \ 524 common/tm/tmfix.o \ 525 common/tm/tmfmt.o \ 526 common/tm/tmform.o \ 527 common/tm/tmgoff.o \ 528 common/tm/tminit.o \ 529 common/tm/tmleap.o \ 530 common/tm/tmlex.o \ 531 common/tm/tmlocale.o \ 532 common/tm/tmmake.o \ 533 common/tm/tmpoff.o \ 534 common/tm/tmscan.o \ 535 common/tm/tmsleep.o \ 536 common/tm/tmtime.o \ 537 common/tm/tmtype.o \ 538 common/tm/tmweek.o \ 539 common/tm/tmword.o \ 540 common/tm/tmxdate.o \ 541 common/tm/tmxfmt.o \ 542 common/tm/tmxgettime.o \ 543 common/tm/tmxleap.o \ 544 common/tm/tmxmake.o \ 545 common/tm/tmxscan.o \ 546 common/tm/tmxsettime.o \ 547 common/tm/tmxsleep.o \ 548 common/tm/tmxtime.o \ 549 common/tm/tmxtouch.o \ 550 common/tm/tmzone.o \ 551 common/tm/tvcmp.o \ 552 common/tm/tvgettime.o \ 553 common/tm/tvsettime.o \ 554 common/tm/tvsleep.o \ 555 common/tm/tvtouch.o \ 556 common/uwin/a64l.o \ 557 common/uwin/acosh.o \ 558 common/uwin/asinh.o \ 559 common/uwin/atanh.o \ 560 common/uwin/cbrt.o \ 561 common/uwin/crypt.o \ 562 common/uwin/erf.o \ 563 common/uwin/err.o \ 564 common/uwin/exp.o \ 565 common/uwin/exp__E.o \ 566 common/uwin/expm1.o \ 567 common/uwin/gamma.o \ 568 common/uwin/getpass.o \ 569 common/uwin/lgamma.o \ 570 common/uwin/log.o \ 571 common/uwin/log1p.o \ 572 common/uwin/log__L.o \ 573 common/uwin/rand48.o \ 574 common/uwin/random.o \ 575 common/uwin/rcmd.o \ 576 common/uwin/rint.o \ 577 common/uwin/support.o \ 578 common/vec/vecargs.o \ 579 common/vec/vecfile.o \ 580 common/vec/vecfree.o \ 581 common/vec/vecload.o \ 582 common/vec/vecstring.o \ 583 common/vmalloc/malloc.o \ 584 common/vmalloc/vmbest.o \ 585 common/vmalloc/vmclear.o \ 586 common/vmalloc/vmclose.o \ 587 common/vmalloc/vmdcheap.o \ 588 common/vmalloc/vmdebug.o \ 589 common/vmalloc/vmdisc.o \ 590 common/vmalloc/vmexit.o \ 591 common/vmalloc/vmgetmem.o \ 592 common/vmalloc/vmlast.o \ 593 common/vmalloc/vmmopen.o \ 594 common/vmalloc/vmopen.o \ 595 common/vmalloc/vmpool.o \ 596 common/vmalloc/vmprivate.o \ 597 common/vmalloc/vmprofile.o \ 598 common/vmalloc/vmregion.o \ 599 common/vmalloc/vmsegment.o \ 600 common/vmalloc/vmset.o \ 601 common/vmalloc/vmstat.o \ 602 common/vmalloc/vmstrdup.o \ 603 common/vmalloc/vmtrace.o \ 604 common/vmalloc/vmwalk.o 605 606# We are storing the object files into subdirs avoid the 607# confusion with having 550+ object files in the toplevel pics/ 608# directory (this matches the way how the original AST build system 609# deals with this "logistic" issue) - the rules below ensure that 610# the destination directory is available. 611OBJDIRS += \ 612 common/cdt \ 613 common/comp \ 614 common/dir \ 615 common/disc \ 616 common/hash \ 617 common/misc \ 618 common/obsolete \ 619 common/path \ 620 common/port \ 621 common/preroot \ 622 common/regex \ 623 common/sfio \ 624 common/stdio \ 625 common/string \ 626 common/tm \ 627 common/uwin \ 628 common/vec \ 629 common/vmalloc 630PICSDIRS= $(OBJDIRS:%=pics/%) 631mkpicdirs: 632 @mkdir -p $(PICSDIRS) 633 634# We need our own rules here since some source files come from 635# the plaftorm-specific directories and the default rules do 636# not cover this 637pics/%.o: ../%.c 638 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $< 639 $(POST_PROCESS_O) 640 641include ../../Makefile.astmsg 642 643include ../../Makefile.lib 644 645# mapfile-vers does not live with the sources in in common/ to make 646# automated code updates easier. 647MAPFILES= ../mapfile-vers 648 649# Set common AST build flags (e.g., needed to support the math stuff). 650include ../../../Makefile.ast 651 652# special rule because sources live both ../common (normal) 653# and $(TRANSMACH) (generated) 654SRCS= $(OBJECTS:%.o=../%.c) 655 656LIBS = $(DYNLIB) $(LINTLIB) 657 658LDLIBS += -lsocket -lm -lc 659 660$(LINTLIB) := SRCS = $(SRCDIR)/$(LINTSRC) 661 662SRCDIR = ../common 663 664# We use "=" here since using $(CPPFLAGS.master) is very tricky in our 665# case - it MUST come as the last element but future changes in -D options 666# may then cause silent breakage in the AST sources because the last -D 667# option specified overrides previous -D options so we prefer the current 668# way to explicitly list each single flag. 669# Notes: 670# - "-D_BLD_DLL" comes from ${mam_cc_DLL} in Mamfile 671# - Be careful with "-D__OBSOLETE__=xxx". Make sure this is in sync with 672# upstream (see Mamfile) and do not change the |__OBSOLETE__| value 673# without examining the symbols that will be removed, and evaluating 674# whether that breaks compatibility with upstream binaries. 675CPPFLAGS = \ 676 $(DTEXTDOM) $(DTS_ERRNO) \ 677 $(ASTPLATFORMCPPFLAGS) \ 678 -Isrc/lib/libast \ 679 -I$(SRCDIR) \ 680 -I$(SRCDIR)/comp \ 681 -I$(SRCDIR)/include \ 682 -I$(SRCDIR)/std \ 683 -I$(SRCDIR)/dir \ 684 -I$(SRCDIR)/port \ 685 -I$(SRCDIR)/sfio \ 686 -I$(SRCDIR)/astsa \ 687 -I$(SRCDIR)/misc \ 688 -I$(SRCDIR)/string \ 689 -Iinclude/ast \ 690 '-DCONF_LIBSUFFIX=".so"' \ 691 '-DCONF_LIBPREFIX="lib"' \ 692 -DERROR_CATALOG=\""libast"\" \ 693 -D__OBSOLETE__=20060101 \ 694 -D_BLD_ast \ 695 -D_PACKAGE_ast \ 696 -D_BLD_DLL 697 698CFLAGS += \ 699 $(CCVERBOSE) \ 700 -xstrconst 701CFLAGS64 += \ 702 $(CCVERBOSE) \ 703 -xstrconst 704 705pics/$(MACH)/src/lib/libast/conftab.o := CERRWARN += -erroff=E_C99_INTEGER_PROMOTION 706pics/$(MACH)/src/lib/libast/conftab.o \ 707pics/$(MACH64)/src/lib/libast/conftab.o := CERRWARN += -erroff=E_INIT_DOES_NOT_FIT 708pics/common/hash/hashlook.o := CERRWARN += -erroff=E_CONST_PROMOTED_UNSIGNED_LONG 709pics/common/hash/memhash.o := CERRWARN += -erroff=E_CONST_PROMOTED_UNSIGNED_LONG 710pics/common/hash/memsum.o := CERRWARN += -erroff=E_CONST_PROMOTED_UNSIGNED_LONG 711pics/common/hash/strhash.o := CERRWARN += -erroff=E_CONST_PROMOTED_UNSIGNED_LONG 712pics/common/hash/strsum.o := CERRWARN += -erroff=E_CONST_PROMOTED_UNSIGNED_LONG 713pics/common/path/pathkey.o := CERRWARN += -erroff=E_CONST_PROMOTED_UNSIGNED_LONG 714pics/common/comp/setlocale.o := CERRWARN += -erroff=E_INTEGER_OVERFLOW_DETECTED 715pics/common/comp/setlocale.o := CERRWARN += -erroff=E_INIT_DOES_NOT_FIT 716pics/common/misc/translate.o := CERRWARN += -erroff=E_INTEGER_OVERFLOW_DETECTED 717pics/common/misc/recstr.o := CERRWARN += -erroff=E_INTEGER_OVERFLOW_DETECTED 718pics/common/sfio/sfmove.o := CERRWARN += -erroff=E_NO_IMPLICIT_DECL_ALLOWED 719pics/common/sfio/sfrd.o := CERRWARN += -erroff=E_NO_IMPLICIT_DECL_ALLOWED 720pics/common/sfio/sfvscanf.o := CERRWARN += -erroff=E_END_OF_LOOP_CODE_NOT_REACHED 721pics/common/port/astconf.o := CERRWARN += -erroff=E_CONST_OBJ_SHOULD_HAVE_INITIZR 722 723.KEEP_STATE: 724 725all: mkpicdirs .WAIT $(LIBS) 726 727# 728# libast is not lint-clean yet; fake up a target. (You can use 729# "make lintcheck" to actually run lint; please send all lint fixes 730# upstream (to AT&T) so the next update will pull them into ON.) 731# 732lint: 733 @ print "usr/src/lib/libast is not lint-clean: skipping" 734 @ $(TRUE) 735 736include ../../Makefile.targ 737