|
|
1.1 ! root 1: # Main Makefile fragment for GNU Mach. ! 2: ! 3: # Copyright (C) 1997, 1999, 2004, 2006, 2007, 2009 Free Software ! 4: # Foundation, Inc. ! 5: ! 6: # Permission to use, copy, modify and distribute this software and its ! 7: # documentation is hereby granted, provided that both the copyright ! 8: # notice and this permission notice appear in all copies of the ! 9: # software, derivative works or modified versions, and any portions ! 10: # thereof, and that both notices appear in supporting documentation. ! 11: # ! 12: # THE FREE SOFTWARE FOUNDATION ALLOWS FREE USE OF THIS SOFTWARE IN ITS ! 13: # "AS IS" CONDITION. THE FREE SOFTWARE FOUNDATION DISCLAIMS ANY ! 14: # LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE ! 15: # USE OF THIS SOFTWARE. ! 16: ! 17: # ! 18: # DDB support --- eventually to die. Please. ! 19: # ! 20: ! 21: # Do we want the icky kernel debugger? ! 22: if enable_kdb ! 23: libkernel_a_SOURCES += \ ! 24: ddb/db_access.c \ ! 25: ddb/db_access.h \ ! 26: ddb/db_aout.c \ ! 27: ddb/db_break.c \ ! 28: ddb/db_break.h \ ! 29: ddb/db_command.c \ ! 30: ddb/db_command.h \ ! 31: ddb/db_cond.c \ ! 32: ddb/db_cond.h \ ! 33: ddb/db_examine.c \ ! 34: ddb/db_examine.h \ ! 35: ddb/db_expr.c \ ! 36: ddb/db_expr.h \ ! 37: ddb/db_ext_symtab.c \ ! 38: ddb/db_input.c \ ! 39: ddb/db_input.h \ ! 40: ddb/db_lex.c \ ! 41: ddb/db_lex.h \ ! 42: ddb/db_macro.c \ ! 43: ddb/db_macro.h \ ! 44: ddb/db_mp.c \ ! 45: ddb/db_output.c \ ! 46: ddb/db_output.h \ ! 47: ddb/db_print.c \ ! 48: ddb/db_print.h \ ! 49: ddb/db_run.c \ ! 50: ddb/db_run.h \ ! 51: ddb/db_sym.c \ ! 52: ddb/db_sym.h \ ! 53: ddb/db_task_thread.c \ ! 54: ddb/db_task_thread.h \ ! 55: ddb/db_trap.c \ ! 56: ddb/db_trap.h \ ! 57: ddb/db_variables.c \ ! 58: ddb/db_variables.h \ ! 59: ddb/db_watch.c \ ! 60: ddb/db_watch.h \ ! 61: ddb/db_write_cmd.c \ ! 62: ddb/nlist.h \ ! 63: ddb/stab.h \ ! 64: ddb/tr.h ! 65: ! 66: # We need frame pointers for trace to work properly. ! 67: AM_CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls ! 68: endif ! 69: ! 70: ! 71: # ! 72: # IPC implementation. ! 73: # ! 74: ! 75: libkernel_a_SOURCES += \ ! 76: ipc/ipc_entry.c \ ! 77: ipc/ipc_entry.h \ ! 78: ipc/ipc_hash.c \ ! 79: ipc/ipc_hash.h \ ! 80: ipc/ipc_init.c \ ! 81: ipc/ipc_init.h \ ! 82: ipc/ipc_kmsg.c \ ! 83: ipc/ipc_kmsg.h \ ! 84: ipc/ipc_kmsg_queue.h \ ! 85: ipc/ipc_machdep.h \ ! 86: ipc/ipc_marequest.c \ ! 87: ipc/ipc_marequest.h \ ! 88: ipc/ipc_mqueue.c \ ! 89: ipc/ipc_mqueue.h \ ! 90: ipc/ipc_notify.c \ ! 91: ipc/ipc_notify.h \ ! 92: ipc/ipc_object.c \ ! 93: ipc/ipc_object.h \ ! 94: ipc/ipc_port.c \ ! 95: ipc/ipc_port.h \ ! 96: ipc/ipc_pset.c \ ! 97: ipc/ipc_pset.h \ ! 98: ipc/ipc_right.c \ ! 99: ipc/ipc_right.h \ ! 100: ipc/ipc_space.c \ ! 101: ipc/ipc_space.h \ ! 102: ipc/ipc_splay.c \ ! 103: ipc/ipc_splay.h \ ! 104: ipc/ipc_table.c \ ! 105: ipc/ipc_table.h \ ! 106: ipc/ipc_target.c \ ! 107: ipc/ipc_target.h \ ! 108: ipc/ipc_thread.c \ ! 109: ipc/ipc_thread.h \ ! 110: ipc/ipc_types.h \ ! 111: ipc/mach_msg.c \ ! 112: ipc/mach_msg.h \ ! 113: ipc/mach_port.c \ ! 114: ipc/mach_port.h \ ! 115: ipc/mach_rpc.c \ ! 116: ipc/mach_debug.c \ ! 117: ipc/port.h ! 118: EXTRA_DIST += \ ! 119: ipc/mach_port.srv ! 120: ! 121: ! 122: # ! 123: # `kernel' implementation (tasks, threads, trivia, etc.). ! 124: # ! 125: ! 126: libkernel_a_SOURCES += \ ! 127: kern/act.c \ ! 128: kern/act.h \ ! 129: kern/assert.h \ ! 130: kern/ast.c \ ! 131: kern/ast.h \ ! 132: kern/boot_script.h \ ! 133: kern/bootstrap.c \ ! 134: kern/counters.c \ ! 135: kern/counters.h \ ! 136: kern/cpu_number.h \ ! 137: kern/debug.c \ ! 138: kern/debug.h \ ! 139: kern/eventcount.c \ ! 140: kern/eventcount.h \ ! 141: kern/exception.c \ ! 142: kern/host.c \ ! 143: kern/host.h \ ! 144: kern/ipc_host.c \ ! 145: kern/ipc_host.h \ ! 146: kern/ipc_kobject.c \ ! 147: kern/ipc_kobject.h \ ! 148: kern/ipc_mig.c \ ! 149: kern/ipc_mig.h \ ! 150: kern/ipc_sched.c \ ! 151: kern/ipc_sched.h \ ! 152: kern/ipc_tt.c \ ! 153: kern/ipc_tt.h \ ! 154: kern/kalloc.h \ ! 155: kern/kern_types.h \ ! 156: kern/list.h \ ! 157: kern/lock.c \ ! 158: kern/lock.h \ ! 159: kern/lock_mon.c \ ! 160: kern/mach_clock.c \ ! 161: kern/mach_clock.h \ ! 162: kern/mach_factor.c \ ! 163: kern/mach_factor.h \ ! 164: kern/machine.c \ ! 165: kern/machine.h \ ! 166: kern/macro_help.h \ ! 167: kern/pc_sample.c \ ! 168: kern/pc_sample.h \ ! 169: kern/printf.c \ ! 170: kern/printf.h \ ! 171: kern/priority.c \ ! 172: kern/processor.c \ ! 173: kern/processor.h \ ! 174: kern/profile.c \ ! 175: kern/queue.c \ ! 176: kern/queue.h \ ! 177: kern/rbtree.c \ ! 178: kern/rbtree.h \ ! 179: kern/rbtree_i.h \ ! 180: kern/refcount.h \ ! 181: kern/slab.c \ ! 182: kern/slab.h \ ! 183: kern/sched.h \ ! 184: kern/sched_prim.c \ ! 185: kern/sched_prim.h \ ! 186: kern/shuttle.h \ ! 187: kern/startup.c \ ! 188: kern/strings.c \ ! 189: kern/syscall_emulation.c \ ! 190: kern/syscall_emulation.h \ ! 191: kern/syscall_subr.c \ ! 192: kern/syscall_subr.h \ ! 193: kern/syscall_sw.c \ ! 194: kern/syscall_sw.h \ ! 195: kern/task.c \ ! 196: kern/task.h \ ! 197: kern/thread.c \ ! 198: kern/thread.h \ ! 199: kern/thread_swap.c \ ! 200: kern/thread_swap.h \ ! 201: kern/time_stamp.c \ ! 202: kern/time_stamp.h \ ! 203: kern/timer.c \ ! 204: kern/timer.h \ ! 205: kern/xpr.c \ ! 206: kern/xpr.h \ ! 207: kern/elf-load.c \ ! 208: kern/boot_script.c ! 209: EXTRA_DIST += \ ! 210: kern/mach.srv \ ! 211: kern/mach4.srv \ ! 212: kern/gnumach.srv \ ! 213: kern/mach_debug.srv \ ! 214: kern/mach_host.srv ! 215: ! 216: ! 217: # ! 218: # Still more trivia. ! 219: # ! 220: ! 221: libkernel_a_SOURCES += \ ! 222: util/putchar.c \ ! 223: util/putchar.h \ ! 224: util/puts.c \ ! 225: util/atoi.c \ ! 226: util/atoi.h ! 227: ! 228: # ! 229: # Virtual memory implementation. ! 230: # ! 231: ! 232: libkernel_a_SOURCES += \ ! 233: vm/memory_object_proxy.c \ ! 234: vm/memory_object_proxy.h \ ! 235: vm/memory_object.c \ ! 236: vm/memory_object.h \ ! 237: vm/pmap.h \ ! 238: vm/vm_debug.c \ ! 239: vm/vm_external.c \ ! 240: vm/vm_external.h \ ! 241: vm/vm_fault.c \ ! 242: vm/vm_fault.h \ ! 243: vm/vm_init.c \ ! 244: vm/vm_kern.c \ ! 245: vm/vm_kern.h \ ! 246: vm/vm_map.c \ ! 247: vm/vm_map.h \ ! 248: vm/vm_object.c \ ! 249: vm/vm_object.h \ ! 250: vm/vm_page.h \ ! 251: vm/vm_pageout.c \ ! 252: vm/vm_pageout.h \ ! 253: vm/vm_resident.c \ ! 254: vm/vm_resident.h \ ! 255: vm/vm_types.h \ ! 256: vm/vm_user.c \ ! 257: vm/vm_user.h ! 258: EXTRA_DIST += \ ! 259: vm/memory_object_default.cli \ ! 260: vm/memory_object_user.cli ! 261: ! 262: ! 263: # ! 264: # Device driver support. ! 265: # ! 266: ! 267: # These device support files are always needed; the others are needed only if ! 268: # particular drivers want the routines. ! 269: # TODO. Functions in device/subrs.c should each be moved elsewhere. ! 270: libkernel_a_SOURCES += \ ! 271: device/blkio.c \ ! 272: device/buf.h \ ! 273: device/chario.c \ ! 274: device/cirbuf.h \ ! 275: device/conf.h \ ! 276: device/cons.c \ ! 277: device/cons.h \ ! 278: device/device_emul.h \ ! 279: device/dev_hdr.h \ ! 280: device/dev_lookup.c \ ! 281: device/dev_master.h \ ! 282: device/dev_name.c \ ! 283: device/dev_pager.c \ ! 284: device/device_init.c \ ! 285: device/device_port.h \ ! 286: device/device_types_kernel.h \ ! 287: device/ds_routines.c \ ! 288: device/ds_routines.h \ ! 289: device/if_ether.h \ ! 290: device/if_hdr.h \ ! 291: device/io_req.h \ ! 292: device/net_io.c \ ! 293: device/net_io.h \ ! 294: device/param.h \ ! 295: device/subrs.c \ ! 296: device/subrs.h \ ! 297: device/tty.h ! 298: EXTRA_DIST += \ ! 299: device/device.srv \ ! 300: device/device_pager.srv \ ! 301: device/device_reply.cli \ ! 302: device/memory_object_reply.cli ! 303: ! 304: ! 305: # ! 306: # `kmsg' device. ! 307: # ! 308: ! 309: if enable_kmsg ! 310: libkernel_a_SOURCES += \ ! 311: device/kmsg.c \ ! 312: device/kmsg.h ! 313: endif ! 314: ! 315: ! 316: # ! 317: # Version number. ! 318: # ! 319: ! 320: nodist_libkernel_a_SOURCES += \ ! 321: version.c ! 322: ! 323: # ! 324: # Installation. ! 325: # ! 326: ! 327: include_devicedir = $(includedir)/device ! 328: include_device_HEADERS = \ ! 329: include/device/audio_status.h \ ! 330: include/device/bpf.h \ ! 331: include/device/device.defs \ ! 332: include/device/device_reply.defs \ ! 333: include/device/device_request.defs \ ! 334: include/device/device_types.defs \ ! 335: include/device/device_types.h \ ! 336: include/device/disk_status.h \ ! 337: include/device/net_status.h \ ! 338: include/device/tape_status.h \ ! 339: include/device/tty_status.h ! 340: ! 341: include_machdir = $(includedir)/mach ! 342: include_mach_HEADERS = \ ! 343: include/mach/bootstrap.defs \ ! 344: include/mach/default_pager.defs \ ! 345: include/mach/default_pager_helper.defs \ ! 346: include/mach/default_pager_types.defs \ ! 347: include/mach/exc.defs \ ! 348: include/mach/mach.defs \ ! 349: include/mach/mach4.defs \ ! 350: include/mach/gnumach.defs \ ! 351: include/mach/mach_host.defs \ ! 352: include/mach/mach_port.defs \ ! 353: include/mach/mach_types.defs \ ! 354: include/mach/memory_object.defs \ ! 355: include/mach/memory_object_default.defs \ ! 356: include/mach/notify.defs \ ! 357: include/mach/std_types.defs \ ! 358: include/mach/alert.h \ ! 359: include/mach/boolean.h \ ! 360: include/mach/boot.h \ ! 361: include/mach/default_pager_types.h \ ! 362: include/mach/exception.h \ ! 363: include/mach/host_info.h \ ! 364: include/mach/kern_return.h \ ! 365: include/mach/mach_param.h \ ! 366: include/mach/mach_types.h \ ! 367: include/mach/machine.h \ ! 368: include/mach/macro_help.h \ ! 369: include/mach/memory_object.h \ ! 370: include/mach/message.h \ ! 371: include/mach/mig_errors.h \ ! 372: include/mach/msg_type.h \ ! 373: include/mach/multiboot.h \ ! 374: include/mach/notify.h \ ! 375: include/mach/pc_sample.h \ ! 376: include/mach/policy.h \ ! 377: include/mach/port.h \ ! 378: include/mach/processor_info.h \ ! 379: include/mach/profil.h \ ! 380: include/mach/profilparam.h \ ! 381: include/mach/rpc.h \ ! 382: include/mach/std_types.h \ ! 383: include/mach/syscall_sw.h \ ! 384: include/mach/task_info.h \ ! 385: include/mach/task_special_ports.h \ ! 386: include/mach/thread_info.h \ ! 387: include/mach/thread_special_ports.h \ ! 388: include/mach/thread_status.h \ ! 389: include/mach/thread_switch.h \ ! 390: include/mach/time_value.h \ ! 391: include/mach/version.h \ ! 392: include/mach/vm_attributes.h \ ! 393: include/mach/vm_cache_statistics.h \ ! 394: include/mach/vm_inherit.h \ ! 395: include/mach/vm_param.h \ ! 396: include/mach/vm_prot.h \ ! 397: include/mach/vm_statistics.h \ ! 398: include/mach/inline.h \ ! 399: include/mach/xen.h ! 400: ! 401: # If we name this `*_execdir', Automake won't add it to `install-data'... ! 402: include_mach_eXecdir = $(includedir)/mach/exec ! 403: include_mach_eXec_HEADERS = \ ! 404: include/mach/exec/a.out.h \ ! 405: include/mach/exec/elf.h \ ! 406: include/mach/exec/exec.h ! 407: ! 408: # mach-debug-headers:= $(addprefix mach_debug/, hash_info.h ipc_info.h \ ! 409: # mach_debug.defs mach_debug_types.defs mach_debug_types.h \ ! 410: # pc_info.h vm_info.h slab_info.h) ! 411: ! 412: # Other headers for the distribution. We don't install these, because the ! 413: # GNU C library has correct versions for users to use. ! 414: # other-sys-headers := types.h time.h reboot.h ioctl.h ! 415: # other-mach-headers := mig_support.h mach_traps.h error.h ! 416: # other-headers := alloca.h ! 417: ! 418: install-data-hook: ! 419: rm -f '$(DESTDIR)$(include_machdir)'/machine ! 420: ln -s '$(systype)' '$(DESTDIR)$(include_machdir)'/machine ! 421: ! 422: # ! 423: # Building a distribution. ! 424: # ! 425: ! 426: # Enable all available features. ! 427: DISTCHECK_CONFIGURE_FLAGS += \ ! 428: --enable-kdb ! 429: ! 430: # Instead of listing each file individually... ! 431: EXTRA_DIST += \ ! 432: include ! 433: ! 434: # ! 435: # Automatically generated source files. ! 436: # ! 437: # See Makerules.mig.am. ! 438: # ! 439: ! 440: # User stubs. ! 441: nodist_lib_dep_tr_for_defs_a_SOURCES += \ ! 442: vm/memory_object_user.user.defs.c \ ! 443: vm/memory_object_default.user.defs.c ! 444: nodist_libkernel_a_SOURCES += \ ! 445: vm/memory_object_user.user.h \ ! 446: vm/memory_object_user.user.c \ ! 447: vm/memory_object_user.user.msgids \ ! 448: vm/memory_object_default.user.h \ ! 449: vm/memory_object_default.user.c \ ! 450: vm/memory_object_default.user.msgids ! 451: # vm/memory_object_user.user.defs ! 452: # vm/memory_object_default.user.defs ! 453: nodist_lib_dep_tr_for_defs_a_SOURCES += \ ! 454: device/device_reply.user.defs.c \ ! 455: device/memory_object_reply.user.defs.c ! 456: nodist_libkernel_a_SOURCES += \ ! 457: device/device_reply.user.h \ ! 458: device/device_reply.user.c \ ! 459: device/device_reply.user.msgids \ ! 460: device/memory_object_reply.user.h \ ! 461: device/memory_object_reply.user.c \ ! 462: device/memory_object_reply.user.msgids ! 463: # device/device_reply.user.defs ! 464: # device/memory_object_reply.user.defs ! 465: ! 466: # Server stubs. ! 467: nodist_lib_dep_tr_for_defs_a_SOURCES += \ ! 468: device/device.server.defs.c \ ! 469: device/device_pager.server.defs.c ! 470: nodist_libkernel_a_SOURCES += \ ! 471: device/device.server.h \ ! 472: device/device.server.c \ ! 473: device/device.server.msgids \ ! 474: device/device_pager.server.h \ ! 475: device/device_pager.server.c \ ! 476: device/device_pager.server.msgids ! 477: # device/device.server.defs ! 478: # device/device_pager.server.defs ! 479: nodist_lib_dep_tr_for_defs_a_SOURCES += \ ! 480: ipc/mach_port.server.defs.c ! 481: nodist_libkernel_a_SOURCES += \ ! 482: ipc/mach_port.server.h \ ! 483: ipc/mach_port.server.c \ ! 484: ipc/mach_port.server.msgids ! 485: # ipc/mach_port.server.defs ! 486: nodist_lib_dep_tr_for_defs_a_SOURCES += \ ! 487: kern/mach.server.defs.c \ ! 488: kern/mach4.server.defs.c \ ! 489: kern/gnumach.server.defs.c \ ! 490: kern/mach_debug.server.defs.c \ ! 491: kern/mach_host.server.defs.c ! 492: nodist_libkernel_a_SOURCES += \ ! 493: kern/mach.server.h \ ! 494: kern/mach.server.c \ ! 495: kern/mach.server.msgids \ ! 496: kern/mach4.server.h \ ! 497: kern/mach4.server.c \ ! 498: kern/mach4.server.msgids \ ! 499: kern/gnumach.server.h \ ! 500: kern/gnumach.server.c \ ! 501: kern/gnumach.server.msgids \ ! 502: kern/mach_debug.server.h \ ! 503: kern/mach_debug.server.c \ ! 504: kern/mach_debug.server.msgids \ ! 505: kern/mach_host.server.h \ ! 506: kern/mach_host.server.c \ ! 507: kern/mach_host.server.msgids ! 508: # kern/mach.server.defs ! 509: # kern/mach4.server.defs ! 510: # kern/gnumach.server.defs ! 511: # kern/mach_debug.server.defs ! 512: # kern/mach_host.server.defs ! 513: ! 514: # rpctrace can make use of that. ! 515: MOSTLYCLEANFILES += \ ! 516: gnumach.msgids ! 517: gnumach.msgids: $(filter %.msgids,$(nodist_libkernel_a_SOURCES)) ! 518: $(AM_V_at) cat $^ > [email protected] ! 519: $(AM_V_GEN) mv [email protected] $@ ! 520: # `exec_' prefix, so that we don't try to build that file during when running ! 521: # `make install-data', as it may fail there, but isn't needed there either. ! 522: exec_msgidsdir = $(datadir)/msgids ! 523: exec_msgids_DATA = gnumach.msgids ! 524: ! 525: # ! 526: # Specific code. ! 527: # ! 528: ! 529: # Linux device drivers and the glue code. ! 530: include linux/Makefrag.am ! 531: ! 532: # ! 533: # Platform specific parts. ! 534: # ! 535: ! 536: # Xen. ! 537: if PLATFORM_xen ! 538: include xen/Makefrag.am ! 539: endif ! 540: ! 541: # ! 542: # Architecture specific parts. ! 543: # ! 544: ! 545: # ix86. ! 546: if HOST_ix86 ! 547: include i386/Makefrag.am ! 548: endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.