* target.c (target_async_permitted, target_async_permitted_1)

(set_maintenance_target_async_permitted)
        (show_maintenance_target_async_permitted): New.
        (initialize_targets): Register 'set target-async'.
        * target.h (target_async_permitted): Declare.
        * linux-nat.c (linux_nat_async_enabled)
        (linux_nat_async_permitted, set_maintenance_linux_async_permitted)
        (show_maintenance_linux_async_permitted): Remove.
        (sigchld_handler, linux_nat_is_async_p, linux_nat_can_async_p)
        (get_pending_events, linux_nat_async): Use target_async_permitted.
        (linux_nat_set_async_mode): Remove, moving the only used bits
        into...
        (linux_nat_setup_async): This.
        (_initialize_linux_nat): Do not register 'maint set linux-async'.
        Use linux_nat_setup_async.
        * remote.c (remote_async_permitted, remote_async_permitted_set)
        (set_maintenance_remote_async_permitted)
        (show_maintenance_remote_async_permitted): Remove.
        (remote_open_1, remote_terminal_inferior, remote_can_async_p)
        (remote_is_async_p): Use target_async_permitted.
        (_initialize_remote): Don't register 'main set remote-async'.
        * mi/mi-cmds.c (mi_cmds): Register -list-target-features.
        * mi/mi-cmds.h (mi_cmd_list_target_features): New.
        * mi/mi-main.c (mi_cmd_list_target_features): New.
This commit is contained in:
Vladimir Prus
2008-08-19 13:05:02 +00:00
parent 073120b913
commit c6ebd6cf99
13 changed files with 163 additions and 136 deletions

View File

@@ -956,6 +956,10 @@ int target_follow_fork (int follow_child);
#define target_can_lock_scheduler \
(current_target.to_has_thread_control & tc_schedlock)
/* Should the target enable async mode if it is supported? Temporary
cludge until async mode is a strict superset of sync mode. */
extern int target_async_permitted;
/* Can the target support asynchronous execution? */
#define target_can_async_p() (current_target.to_can_async_p ())