diff --git a/build/jam/BuildSetup b/build/jam/BuildSetup index efc486cbd5..855a69ac6b 100644 --- a/build/jam/BuildSetup +++ b/build/jam/BuildSetup @@ -323,11 +323,17 @@ if $(HAIKU_GCC_VERSION[1]) >= 3 { HAIKU_DEFINES += _BEOS_R5_COMPATIBLE_ ; } +# private shared kernel/libroot headers +HAIKU_PRIVATE_SYSTEM_HEADERS = + [ PrivateHeaders $(DOT) system system/arch/$(HAIKU_ARCH) ] +; + # private kernel headers to be used when compiling kernel code HAIKU_PRIVATE_KERNEL_HEADERS = [ PrivateHeaders $(DOT) kernel libroot kernel/boot/platform/$(HAIKU_BOOT_PLATFORM) ] [ ArchHeaders $(HAIKU_ARCH) ] + $(HAIKU_PRIVATE_SYSTEM_HEADERS) ; # Add some grist to the libgcc objects @@ -550,6 +556,9 @@ if $(HOST_ARCH) = x86 && $(HAIKU_HOST_USE_32BIT) = 1 { # private kernel headers do be used when compiling kernel code HOST_PRIVATE_KERNEL_HEADERS = ; +# private shared kernel/libroot headers +HOST_PRIVATE_SYSTEM_HEADERS = ; + # under BeOS use copyattr instead of cp if $(HOST_PLATFORM_BEOS_COMPATIBLE) { @@ -748,6 +757,7 @@ local buildVars = KERNEL_DEBUG_$(HAIKU_DEBUG_LEVELS)_C++FLAGS PRIVATE_KERNEL_HEADERS + PRIVATE_SYSTEM_HEADERS LIBSTDC++ LIBSUPC++ diff --git a/build/jam/HeadersRules b/build/jam/HeadersRules index f0b43ed0f3..9e2db14bef 100644 --- a/build/jam/HeadersRules +++ b/build/jam/HeadersRules @@ -343,6 +343,11 @@ rule UsePrivateKernelHeaders UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; } +rule UsePrivateSystemHeaders +{ + UseHeaders $(TARGET_PRIVATE_SYSTEM_HEADERS) : true ; +} + rule FStandardOSHeaders { local osIncludes = add-ons add-ons/file_system add-ons/graphics diff --git a/headers/private/kernel/arch/x86/apm.h b/headers/private/kernel/arch/x86/apm.h index 47a1762a6c..905ac0d249 100644 --- a/headers/private/kernel/arch/x86/apm.h +++ b/headers/private/kernel/arch/x86/apm.h @@ -5,9 +5,11 @@ #ifndef KERNEL_APM_H #define KERNEL_APM_H - #include +#include + + struct kernel_args; @@ -47,17 +49,6 @@ typedef struct apm_info { } apm_info; -// temporary generic syscall interface -#define APM_SYSCALLS "apm" -#define APM_GET_BATTERY_INFO 1 - -struct battery_info { - bool online; - int32 percent; - time_t time_left; -}; - - #ifndef _BOOT_MODE #ifdef __cplusplus extern "C" { diff --git a/headers/private/kernel/commpage.h b/headers/private/kernel/commpage.h index 50b4613bac..65d1b8cf3e 100644 --- a/headers/private/kernel/commpage.h +++ b/headers/private/kernel/commpage.h @@ -5,32 +5,11 @@ #ifndef _KERNEL_COMMPAGE_H #define _KERNEL_COMMPAGE_H -/*! Some systemwide commpage constants, used in the kernel and libroot */ +#include -#ifndef _ASSEMBLER -# include -#endif +#include -/* be careful what you put here, this file is included from assembly */ -#define COMMPAGE_ENTRY_MAGIC 0 -#define COMMPAGE_ENTRY_VERSION 1 -#define COMMPAGE_ENTRY_REAL_TIME_DATA 2 -#define COMMPAGE_ENTRY_FIRST_ARCH_SPECIFIC 3 - -#define COMMPAGE_SIZE (0x8000) -#define COMMPAGE_TABLE_ENTRIES 64 - -#define COMMPAGE_SIGNATURE 'COMM' -#define COMMPAGE_VERSION 1 - -#define USER_COMMPAGE_ADDR ARCH_USER_COMMPAGE_ADDR - // set by the architecture specific implementation - -#ifndef _ASSEMBLER - -#define USER_COMMPAGE_TABLE ((void**)(USER_COMMPAGE_ADDR)) - #ifdef __cplusplus extern "C" { #endif @@ -46,8 +25,4 @@ status_t arch_commpage_init(void); } // extern "C" #endif -#endif // ! _ASSEMBLER - -#include - #endif /* _KERNEL_COMMPAGE_H */ diff --git a/headers/private/kernel/disk_device_manager/ddm_userland_interface.h b/headers/private/kernel/disk_device_manager/ddm_userland_interface.h index e4f90dd349..69e03b4562 100644 --- a/headers/private/kernel/disk_device_manager/ddm_userland_interface.h +++ b/headers/private/kernel/disk_device_manager/ddm_userland_interface.h @@ -12,62 +12,14 @@ #include +#include #include + #ifdef __cplusplus extern "C" { #endif -// userland partition representation -typedef struct user_partition_data user_partition_data; -struct user_partition_data { - partition_id id; - off_t offset; - off_t size; - off_t content_size; - uint32 block_size; - uint32 status; - uint32 flags; - dev_t volume; - int32 index; - int32 change_counter; // needed? - disk_system_id disk_system; - char *name; - char *content_name; - char *type; - char *content_type; - char *parameters; - char *content_parameters; - void *user_data; - int32 child_count; - user_partition_data *children[1]; -}; - -// userland disk device representation -typedef struct user_disk_device_data { - uint32 device_flags; - char *path; - user_partition_data device_partition_data; -} user_disk_device_data; - -// userland disk system representation -typedef struct user_disk_system_info { - disk_system_id id; - char name[B_FILE_NAME_LENGTH]; // better B_PATH_NAME_LENGTH? - char short_name[B_OS_NAME_LENGTH]; - char pretty_name[B_OS_NAME_LENGTH]; - uint32 flags; -} user_disk_system_info; - -// userland disk device job representation -typedef struct user_disk_device_job_info { - disk_job_id id; - uint32 type; - partition_id partition; - char description[256]; -} user_disk_device_job_info; - - /*! Syscalls entries */ // iterating, retrieving device/partition data diff --git a/headers/private/kernel/generic_syscall.h b/headers/private/kernel/generic_syscall.h index 6595c6f0c0..8f2a59f5db 100644 --- a/headers/private/kernel/generic_syscall.h +++ b/headers/private/kernel/generic_syscall.h @@ -8,6 +8,8 @@ #include +#include + /* If we decide to make this API public, the contents of this file * should be moved to KernelExport.h @@ -15,11 +17,6 @@ typedef status_t (*syscall_hook)(const char *subsystem, uint32 function, void *buffer, size_t bufferSize); -/* predefined functions */ -#define B_RESERVED_SYSCALL_BASE 0x80000000 -#define B_SYSCALL_INFO (B_RESERVED_SYSCALL_BASE) - // gets a minimum version uint32, and fills it with the current version on return - /* syscall flags */ #define B_SYSCALL_NOT_REPLACEABLE 1 #define B_DO_NOT_REPLACE_SYSCALL 2 diff --git a/headers/private/kernel/kernel.h b/headers/private/kernel/kernel.h index 4eb4fbe343..f83ffe82dc 100644 --- a/headers/private/kernel/kernel.h +++ b/headers/private/kernel/kernel.h @@ -34,13 +34,6 @@ #endif #define KERNEL_STACK_GUARD_PAGES 1 -/** Size of the stack given to teams in user space */ -#define USER_MAIN_THREAD_STACK_SIZE (16 * 1024 * 1024) // 16 MB -#define USER_STACK_SIZE (256 * 1024) // 256 kB -#define MIN_USER_STACK_SIZE (4 * 1024) // 4 KB -#define MAX_USER_STACK_SIZE (16 * 1024 * 1024) // 16 MB -#define USER_STACK_GUARD_PAGES 4 // 16 kB - /** Size of the environmental variables space for a process */ #define ENV_SIZE (B_PAGE_SIZE * 8) diff --git a/headers/private/kernel/posix/realtime_sem.h b/headers/private/kernel/posix/realtime_sem.h index c657d253dd..1fd8c5afd2 100644 --- a/headers/private/kernel/posix/realtime_sem.h +++ b/headers/private/kernel/posix/realtime_sem.h @@ -11,15 +11,12 @@ #include +#include + struct realtime_sem_context; -#define MAX_POSIX_SEMS_PER_TEAM 128 -#define MAX_POSIX_SEMS 1024 -#define MAX_POSIX_SEM_VALUE INT_MAX - - __BEGIN_DECLS void realtime_sem_init(); diff --git a/headers/private/kernel/safemode.h b/headers/private/kernel/safemode.h index 2300e4f841..c61ba0dd98 100644 --- a/headers/private/kernel/safemode.h +++ b/headers/private/kernel/safemode.h @@ -5,20 +5,9 @@ #ifndef _KERNEL_SAFEMODE_H #define _KERNEL_SAFEMODE_H - #include - -// these are BeOS compatible additions to the safemode -// constants in the driver_settings.h header - -#define B_SAFEMODE_DISABLE_USER_ADD_ONS "disableuseraddons" -#define B_SAFEMODE_DISABLE_IDE_DMA "disableidedma" -#define B_SAFEMODE_DISABLE_ACPI "disable_acpi" -#define B_SAFEMODE_DISABLE_APM "disable_apm" -#define B_SAFEMODE_DISABLE_SMP "disable_smp" -#define B_SAFEMODE_DISABLE_HYPER_THREADING "disable_hyperthreading" -#define B_SAFEMODE_FAIL_SAFE_VIDEO_MODE "fail_safe_video_mode" +#include #ifdef __cplusplus diff --git a/headers/private/kernel/thread.h b/headers/private/kernel/thread.h index 3511d434b6..5c629b255d 100644 --- a/headers/private/kernel/thread.h +++ b/headers/private/kernel/thread.h @@ -22,20 +22,6 @@ struct kernel_args; struct select_info; struct thread_creation_attributes; -struct thread_creation_attributes { - int32 (*entry)(thread_func, void *); - const char* name; - int32 priority; - void* args1; - void* args2; - void* stack_address; - size_t stack_size; - - // when calling kernel only - team_id team; - thread_id thread; -}; - #ifdef __cplusplus extern "C" { diff --git a/headers/private/kernel/thread_types.h b/headers/private/kernel/thread_types.h index 4b6b1456e4..2088f8c98a 100644 --- a/headers/private/kernel/thread_types.h +++ b/headers/private/kernel/thread_types.h @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include @@ -50,11 +51,6 @@ typedef enum job_control_state { JOB_CONTROL_STATE_DEAD } job_control_state; -#define THREAD_RETURN_EXIT 0x1 -#define THREAD_RETURN_INTERRUPTED 0x2 -#define THREAD_STOPPED 0x3 -#define THREAD_CONTINUED 0x4 - // The type of object a thread blocks on (thread::wait::type, set by // thread_prepare_to_block()). enum { diff --git a/headers/private/kernel/vfs.h b/headers/private/kernel/vfs.h index baba646522..ae6c408ec9 100644 --- a/headers/private/kernel/vfs.h +++ b/headers/private/kernel/vfs.h @@ -21,6 +21,8 @@ #include #include +#include + #define DEFAULT_FD_TABLE_SIZE 256 #define MAX_FD_TABLE_SIZE 8192 @@ -54,13 +56,6 @@ typedef struct io_context { uint32 max_monitors; } io_context; -struct fd_info { - int number; - int32 open_mode; - dev_t device; - ino_t node; -}; - /* macro to allocate a iovec array on the stack */ #define IOVECS(name, size) \ uint8 _##name[sizeof(iovecs) + (size)*sizeof(iovec)]; \ diff --git a/headers/private/kernel/vm.h b/headers/private/kernel/vm.h index 2cb00c0f68..f8106d5988 100644 --- a/headers/private/kernel/vm.h +++ b/headers/private/kernel/vm.h @@ -8,10 +8,10 @@ #ifndef _KERNEL_VM_H #define _KERNEL_VM_H +#include #include - -#include +#include struct kernel_args; @@ -23,63 +23,6 @@ struct vm_address_space; struct vnode; -// additional protection flags -// Note: the VM probably won't support all combinations - it will try -// its best, but create_area() will fail if it has to. -// Of course, the exact behaviour will be documented somewhere... -#define B_EXECUTE_AREA 0x04 -#define B_STACK_AREA 0x08 - // "stack" protection is not available on most platforms - it's used - // to only commit memory as needed, and have guard pages at the - // bottom of the stack. - // "execute" protection is currently ignored, but nevertheless, you - // should use it if you require to execute code in that area. - -#define B_KERNEL_EXECUTE_AREA 0x40 -#define B_KERNEL_STACK_AREA 0x80 - -#define B_USER_PROTECTION \ - (B_READ_AREA | B_WRITE_AREA | B_EXECUTE_AREA | B_STACK_AREA) -#define B_KERNEL_PROTECTION \ - (B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA | B_KERNEL_EXECUTE_AREA \ - | B_KERNEL_STACK_AREA) - -// TODO: These aren't really a protection flags, but since the "protection" -// field is the only flag field, we currently use it for this. -// A cleaner approach would be appreciated - maybe just an official generic -// flags region in the protection field. -#define B_OVERCOMMITTING_AREA 0x1000 -#define B_SHARED_AREA 0x2000 -#define B_KERNEL_AREA 0x4000 - // Usable from userland according to its protection flags, but the area - // itself is not deletable, resizable, etc from userland. - -#define B_USER_AREA_FLAGS (B_USER_PROTECTION) -#define B_KERNEL_AREA_FLAGS \ - (B_KERNEL_PROTECTION | B_USER_CLONEABLE_AREA | B_OVERCOMMITTING_AREA \ - | B_SHARED_AREA) - -// flags for vm_get_physical_page() -enum { - PHYSICAL_PAGE_NO_WAIT = 0, - PHYSICAL_PAGE_CAN_WAIT, -}; - -// mapping argument for several internal VM functions -enum { - REGION_NO_PRIVATE_MAP = 0, - REGION_PRIVATE_MAP -}; - -enum { - // ToDo: these are here only temporarily - it's a private - // addition to the BeOS create_area() lock flags - B_ALREADY_WIRED = 6, -}; - -#define MEMORY_TYPE_SHIFT 28 - - #ifdef __cplusplus extern "C" { #endif diff --git a/headers/private/libroot/user_thread.h b/headers/private/libroot/user_thread.h index 568fe0962f..5c234fe6eb 100644 --- a/headers/private/libroot/user_thread.h +++ b/headers/private/libroot/user_thread.h @@ -8,15 +8,8 @@ #include #include -#include /* kernel header */ - - -struct user_thread { - int32 defer_signals; // counter; 0 == signals allowed - uint32 pending_signals; // signals that are pending, when - // signals are deferred - status_t wait_status; -}; +#include +#include static inline user_thread* diff --git a/headers/private/kernel/arch/m68k/arch_commpage.h b/headers/private/system/arch/m68k/arch_commpage_defs.h similarity index 58% rename from headers/private/kernel/arch/m68k/arch_commpage.h rename to headers/private/system/arch/m68k/arch_commpage_defs.h index 7409a600f6..7fb98b76c6 100644 --- a/headers/private/kernel/arch/m68k/arch_commpage.h +++ b/headers/private/system/arch/m68k/arch_commpage_defs.h @@ -2,11 +2,11 @@ * Copyright 2007, Travis Geiselbrecht. All rights reserved. * Distributed under the terms of the MIT License. */ -#ifndef _KERNEL_ARCH_M68K_COMMPAGE_H -#define _KERNEL_ARCH_M68K_COMMPAGE_H +#ifndef _SYSTEM_ARCH_M68K_COMMPAGE_DEFS_H +#define _SYSTEM_ARCH_M68K_COMMPAGE_DEFS_H -#ifndef _KERNEL_COMMPAGE_H -# error Must not be included directly. Include instead! +#ifndef _SYSTEM_COMMPAGE_DEFS_H +# error Must not be included directly. Include instead! #endif #define COMMPAGE_ENTRY_M68K_SYSCALL (COMMPAGE_ENTRY_FIRST_ARCH_SPECIFIC + 0) @@ -14,4 +14,4 @@ #define ARCH_USER_COMMPAGE_ADDR (0xffff0000) -#endif /* _KERNEL_ARCH_M68K_COMMPAGE_H */ +#endif /* _SYSTEM_ARCH_M68K_COMMPAGE_DEFS_H */ diff --git a/headers/private/kernel/arch/m68k/arch_config.h b/headers/private/system/arch/m68k/arch_config.h similarity index 100% rename from headers/private/kernel/arch/m68k/arch_config.h rename to headers/private/system/arch/m68k/arch_config.h diff --git a/headers/private/kernel/arch/m68k/arch_elf.h b/headers/private/system/arch/m68k/arch_elf.h similarity index 100% rename from headers/private/kernel/arch/m68k/arch_elf.h rename to headers/private/system/arch/m68k/arch_elf.h diff --git a/headers/private/kernel/arch/m68k/arch_real_time_data.h b/headers/private/system/arch/m68k/arch_real_time_data.h similarity index 100% rename from headers/private/kernel/arch/m68k/arch_real_time_data.h rename to headers/private/system/arch/m68k/arch_real_time_data.h diff --git a/headers/private/kernel/arch/ppc/arch_commpage.h b/headers/private/system/arch/ppc/arch_commpage_defs.h similarity index 58% rename from headers/private/kernel/arch/ppc/arch_commpage.h rename to headers/private/system/arch/ppc/arch_commpage_defs.h index 6b4f8c3d3b..419d388a1a 100644 --- a/headers/private/kernel/arch/ppc/arch_commpage.h +++ b/headers/private/system/arch/ppc/arch_commpage_defs.h @@ -2,11 +2,11 @@ * Copyright 2007, Travis Geiselbrecht. All rights reserved. * Distributed under the terms of the MIT License. */ -#ifndef _KERNEL_ARCH_PPC_COMMPAGE_H -#define _KERNEL_ARCH_PPC_COMMPAGE_H +#ifndef _SYSTEM_ARCH_PPC_COMMPAGE_DEFS_H +#define _SYSTEM_ARCH_PPC_COMMPAGE_DEFS_H -#ifndef _KERNEL_COMMPAGE_H -# error Must not be included directly. Include instead! +#ifndef _SYSTEM_COMMPAGE_DEFS_H +# error Must not be included directly. Include instead! #endif #define COMMPAGE_ENTRY_PPC_SYSCALL (COMMPAGE_ENTRY_FIRST_ARCH_SPECIFIC + 0) @@ -14,4 +14,4 @@ #define ARCH_USER_COMMPAGE_ADDR (0xffff0000) -#endif /* _KERNEL_ARCH_PPC_COMMPAGE_H */ +#endif /* _SYSTEM_ARCH_PPC_COMMPAGE_DEFS_H */ diff --git a/headers/private/kernel/arch/ppc/arch_config.h b/headers/private/system/arch/ppc/arch_config.h similarity index 100% rename from headers/private/kernel/arch/ppc/arch_config.h rename to headers/private/system/arch/ppc/arch_config.h diff --git a/headers/private/kernel/arch/ppc/arch_elf.h b/headers/private/system/arch/ppc/arch_elf.h similarity index 100% rename from headers/private/kernel/arch/ppc/arch_elf.h rename to headers/private/system/arch/ppc/arch_elf.h diff --git a/headers/private/kernel/arch/ppc/arch_real_time_data.h b/headers/private/system/arch/ppc/arch_real_time_data.h similarity index 100% rename from headers/private/kernel/arch/ppc/arch_real_time_data.h rename to headers/private/system/arch/ppc/arch_real_time_data.h diff --git a/headers/private/system/arch/x86/apm_defs.h b/headers/private/system/arch/x86/apm_defs.h new file mode 100644 index 0000000000..b0cfa1f8fb --- /dev/null +++ b/headers/private/system/arch/x86/apm_defs.h @@ -0,0 +1,23 @@ +/* + * Copyright 2006, Axel Dörfler, axeld@pinc-software.de. All rights reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef SYSTEM_ARCH_X86_APM_DEFS_H +#define SYSTEM_ARCH_X86_APM_DEFS_H + + +#include + + +// temporary generic syscall interface +#define APM_SYSCALLS "apm" +#define APM_GET_BATTERY_INFO 1 + +struct battery_info { + bool online; + int32 percent; + time_t time_left; +}; + + +#endif /* SYSTEM_ARCH_X86_APM_DEFS_H */ diff --git a/headers/private/kernel/arch/x86/arch_commpage.h b/headers/private/system/arch/x86/arch_commpage_defs.h similarity index 58% rename from headers/private/kernel/arch/x86/arch_commpage.h rename to headers/private/system/arch/x86/arch_commpage_defs.h index 1673c7c043..df013c510e 100644 --- a/headers/private/kernel/arch/x86/arch_commpage.h +++ b/headers/private/system/arch/x86/arch_commpage_defs.h @@ -2,11 +2,11 @@ * Copyright 2007, Travis Geiselbrecht. All rights reserved. * Distributed under the terms of the MIT License. */ -#ifndef _KERNEL_ARCH_x86_COMMPAGE_H -#define _KERNEL_ARCH_x86_COMMPAGE_H +#ifndef _SYSTEM_ARCH_x86_COMMPAGE_DEFS_H +#define _SYSTEM_ARCH_x86_COMMPAGE_DEFS_H -#ifndef _KERNEL_COMMPAGE_H -# error Must not be included directly. Include instead! +#ifndef _SYSTEM_COMMPAGE_DEFS_H +# error Must not be included directly. Include instead! #endif #define COMMPAGE_ENTRY_X86_SYSCALL (COMMPAGE_ENTRY_FIRST_ARCH_SPECIFIC + 0) @@ -14,4 +14,4 @@ #define ARCH_USER_COMMPAGE_ADDR (0xffff0000) -#endif /* _KERNEL_ARCH_x86_COMMPAGE_H */ +#endif /* _SYSTEM_ARCH_x86_COMMPAGE_DEFS_H */ diff --git a/headers/private/kernel/arch/x86/arch_config.h b/headers/private/system/arch/x86/arch_config.h similarity index 100% rename from headers/private/kernel/arch/x86/arch_config.h rename to headers/private/system/arch/x86/arch_config.h diff --git a/headers/private/kernel/arch/x86/arch_elf.h b/headers/private/system/arch/x86/arch_elf.h similarity index 100% rename from headers/private/kernel/arch/x86/arch_elf.h rename to headers/private/system/arch/x86/arch_elf.h diff --git a/headers/private/kernel/arch/x86/arch_real_time_data.h b/headers/private/system/arch/x86/arch_real_time_data.h similarity index 100% rename from headers/private/kernel/arch/x86/arch_real_time_data.h rename to headers/private/system/arch/x86/arch_real_time_data.h diff --git a/headers/private/system/commpage_defs.h b/headers/private/system/commpage_defs.h new file mode 100644 index 0000000000..c47c0b828d --- /dev/null +++ b/headers/private/system/commpage_defs.h @@ -0,0 +1,29 @@ +/* + * Copyright 2007, Travis Geiselbrecht. All rights reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _SYSTEM_COMMPAGE_DEFS_H +#define _SYSTEM_COMMPAGE_DEFS_H + +/*! Some systemwide commpage constants, used in the kernel and libroot */ + +/* be careful what you put here, this file is included from assembly */ +#define COMMPAGE_ENTRY_MAGIC 0 +#define COMMPAGE_ENTRY_VERSION 1 +#define COMMPAGE_ENTRY_REAL_TIME_DATA 2 +#define COMMPAGE_ENTRY_FIRST_ARCH_SPECIFIC 3 + +#define COMMPAGE_SIZE (0x8000) +#define COMMPAGE_TABLE_ENTRIES 64 + +#define COMMPAGE_SIGNATURE 'COMM' +#define COMMPAGE_VERSION 1 + +#define USER_COMMPAGE_ADDR ARCH_USER_COMMPAGE_ADDR + // set by the architecture specific implementation + +#define USER_COMMPAGE_TABLE ((void**)(USER_COMMPAGE_ADDR)) + +#include + +#endif /* _SYSTEM_COMMPAGE_DEFS_H */ diff --git a/headers/private/system/ddm_userland_interface_defs.h b/headers/private/system/ddm_userland_interface_defs.h new file mode 100644 index 0000000000..e73190e70d --- /dev/null +++ b/headers/private/system/ddm_userland_interface_defs.h @@ -0,0 +1,66 @@ +/* + * Copyright 2003-2008, Haiku Inc. + * Distributed under the terms of the MIT License. + * + * Authors: + * Ingo Weinhold, bonefish@users.sf.net + */ +#ifndef _SYSTEM_DDM_USERLAND_INTERFACE_DEFS_H +#define _SYSTEM_DDM_USERLAND_INTERFACE_DEFS_H + +#include + +#include + + +// userland partition representation +typedef struct user_partition_data user_partition_data; +struct user_partition_data { + partition_id id; + off_t offset; + off_t size; + off_t content_size; + uint32 block_size; + uint32 status; + uint32 flags; + dev_t volume; + int32 index; + int32 change_counter; // needed? + disk_system_id disk_system; + char *name; + char *content_name; + char *type; + char *content_type; + char *parameters; + char *content_parameters; + void *user_data; + int32 child_count; + user_partition_data *children[1]; +}; + +// userland disk device representation +typedef struct user_disk_device_data { + uint32 device_flags; + char *path; + user_partition_data device_partition_data; +} user_disk_device_data; + +// userland disk system representation +typedef struct user_disk_system_info { + disk_system_id id; + char name[B_FILE_NAME_LENGTH]; // better B_PATH_NAME_LENGTH? + char short_name[B_OS_NAME_LENGTH]; + char pretty_name[B_OS_NAME_LENGTH]; + uint32 flags; +} user_disk_system_info; + +// userland disk device job representation +typedef struct user_disk_device_job_info { + disk_job_id id; + uint32 type; + partition_id partition; + char description[256]; +} user_disk_device_job_info; + + +#endif // _SYSTEM_DDM_USERLAND_INTERFACE_DEFS_H diff --git a/headers/private/kernel/elf32.h b/headers/private/system/elf32.h similarity index 99% rename from headers/private/kernel/elf32.h rename to headers/private/system/elf32.h index 19ddc0f0eb..69495581de 100644 --- a/headers/private/kernel/elf32.h +++ b/headers/private/system/elf32.h @@ -12,7 +12,7 @@ #include #include -#include +#include typedef uint32 Elf32_Addr; diff --git a/headers/private/system/generic_syscall_defs.h b/headers/private/system/generic_syscall_defs.h new file mode 100644 index 0000000000..a96e0c2664 --- /dev/null +++ b/headers/private/system/generic_syscall_defs.h @@ -0,0 +1,16 @@ +/* + * Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _SYSTEM_GENERIC_SYSCALLS_DEFS_H +#define _SYSTEM_GENERIC_SYSCALLS_DEFS_H + + +/* predefined functions */ +#define B_RESERVED_SYSCALL_BASE 0x80000000 +#define B_SYSCALL_INFO (B_RESERVED_SYSCALL_BASE) + // gets a minimum version uint32, and fills it with the current version on + // return + + +#endif /* _SYSTEM_GENERIC_SYSCALLS_DEFS_H */ diff --git a/headers/private/system/posix/realtime_sem_defs.h b/headers/private/system/posix/realtime_sem_defs.h new file mode 100644 index 0000000000..5e0a7b8bca --- /dev/null +++ b/headers/private/system/posix/realtime_sem_defs.h @@ -0,0 +1,12 @@ +/* + * Copyright 2008, Ingo Weinhold, ingo_weinhold@gmx.de. + * Distributed under the terms of the MIT License. + */ +#ifndef SYSTEM_REALTIME_SEM_H +#define SYSTEM_REALTIME_SEM_H + +#define MAX_POSIX_SEMS_PER_TEAM 128 +#define MAX_POSIX_SEMS 1024 +#define MAX_POSIX_SEM_VALUE INT_MAX + +#endif // SYSTEM_REALTIME_SEM_H diff --git a/headers/private/kernel/real_time_data.h b/headers/private/system/real_time_data.h similarity index 100% rename from headers/private/kernel/real_time_data.h rename to headers/private/system/real_time_data.h diff --git a/headers/private/system/safemode_defs.h b/headers/private/system/safemode_defs.h new file mode 100644 index 0000000000..060eaeccf8 --- /dev/null +++ b/headers/private/system/safemode_defs.h @@ -0,0 +1,21 @@ +/* + * Copyright 2004-2008, Axel Dörfler, axeld@pinc-software.de. All rights reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _SYSTEM_SAFEMODE_DEFS_H +#define _SYSTEM_SAFEMODE_DEFS_H + + +// these are BeOS compatible additions to the safemode +// constants in the driver_settings.h header + +#define B_SAFEMODE_DISABLE_USER_ADD_ONS "disableuseraddons" +#define B_SAFEMODE_DISABLE_IDE_DMA "disableidedma" +#define B_SAFEMODE_DISABLE_ACPI "disable_acpi" +#define B_SAFEMODE_DISABLE_APM "disable_apm" +#define B_SAFEMODE_DISABLE_SMP "disable_smp" +#define B_SAFEMODE_DISABLE_HYPER_THREADING "disable_hyperthreading" +#define B_SAFEMODE_FAIL_SAFE_VIDEO_MODE "fail_safe_video_mode" + + +#endif /* _SYSTEM_SAFEMODE_DEFS_H */ diff --git a/headers/private/kernel/syscall_process_info.h b/headers/private/system/syscall_process_info.h similarity index 63% rename from headers/private/kernel/syscall_process_info.h rename to headers/private/system/syscall_process_info.h index 970b25691d..13d3f04d09 100644 --- a/headers/private/kernel/syscall_process_info.h +++ b/headers/private/system/syscall_process_info.h @@ -2,8 +2,8 @@ ** Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved. ** Distributed under the terms of the Haiku License. */ -#ifndef _KERNEL_SYSCALL_PROCESS_INFO_H -#define _KERNEL_SYSCALL_PROCESS_INFO_H +#ifndef _SYSTEM_SYSCALL_PROCESS_INFO_H +#define _SYSTEM_SYSCALL_PROCESS_INFO_H enum which_process_info { SESSION_ID = 1, @@ -11,4 +11,4 @@ enum which_process_info { PARENT_ID, }; -#endif /* _KRENEL_SYSCALL_PROCESS_INFO_H */ +#endif /* _SYSTEM_SYSCALL_PROCESS_INFO_H */ diff --git a/headers/private/kernel/syscalls.h b/headers/private/system/syscalls.h similarity index 99% rename from headers/private/kernel/syscalls.h rename to headers/private/system/syscalls.h index 91c9b49cdb..e98ba75b64 100644 --- a/headers/private/kernel/syscalls.h +++ b/headers/private/system/syscalls.h @@ -2,8 +2,8 @@ * Copyright 2004-2008, Haiku Inc. All rights reserved. * Distributed under the terms of the MIT License. */ -#ifndef _KERNEL_SYSCALLS_H -#define _KERNEL_SYSCALLS_H +#ifndef _SYSTEM_SYSCALLS_H +#define _SYSTEM_SYSCALLS_H #include @@ -487,4 +487,4 @@ status_t stop_disk_device_watching(port_id, int32 token); } #endif -#endif /* _KERNEL_SYSCALLS_H */ +#endif /* _SYSTEM_SYSCALLS_H */ diff --git a/headers/private/system/thread_defs.h b/headers/private/system/thread_defs.h new file mode 100644 index 0000000000..15a0e36d05 --- /dev/null +++ b/headers/private/system/thread_defs.h @@ -0,0 +1,38 @@ +/* + * Copyright 2008, Ingo Weinhold, ingo_weinhold@gmx.de. + * Distributed under the terms of the MIT License. + */ +#ifndef _SYSTEM_THREAD_DEFS_H +#define _SYSTEM_THREAD_DEFS_H + +#include + + +#define THREAD_RETURN_EXIT 0x1 +#define THREAD_RETURN_INTERRUPTED 0x2 +#define THREAD_STOPPED 0x3 +#define THREAD_CONTINUED 0x4 + +/** Size of the stack given to teams in user space */ +#define USER_MAIN_THREAD_STACK_SIZE (16 * 1024 * 1024) // 16 MB +#define USER_STACK_SIZE (256 * 1024) // 256 kB +#define MIN_USER_STACK_SIZE (4 * 1024) // 4 KB +#define MAX_USER_STACK_SIZE (16 * 1024 * 1024) // 16 MB +#define USER_STACK_GUARD_PAGES 4 // 16 kB + + +struct thread_creation_attributes { + int32 (*entry)(thread_func, void *); + const char* name; + int32 priority; + void* args1; + void* args2; + void* stack_address; + size_t stack_size; + + // when calling from kernel only + team_id team; + thread_id thread; +}; + +#endif /* _SYSTEM_THREAD_DEFS_H */ diff --git a/headers/private/kernel/tls.h b/headers/private/system/tls.h similarity index 100% rename from headers/private/kernel/tls.h rename to headers/private/system/tls.h diff --git a/headers/private/kernel/user_runtime.h b/headers/private/system/user_runtime.h similarity index 100% rename from headers/private/kernel/user_runtime.h rename to headers/private/system/user_runtime.h diff --git a/headers/private/system/user_thread_defs.h b/headers/private/system/user_thread_defs.h new file mode 100644 index 0000000000..0bdd1f791a --- /dev/null +++ b/headers/private/system/user_thread_defs.h @@ -0,0 +1,19 @@ +/* + * Copyright 2008, Ingo Weinhold, ingo_weinhold@gmx.de. + * Distributed under the terms of the MIT License. + */ +#ifndef _SYSTEM_USER_THREAD_DEFS_H +#define _SYSTEM_USER_THREAD_DEFS_H + +#include + + +struct user_thread { + int32 defer_signals; // counter; 0 == signals allowed + uint32 pending_signals; // signals that are pending, when + // signals are deferred + status_t wait_status; +}; + + +#endif /* _SYSTEM_USER_THREAD_DEFS_H */ diff --git a/headers/private/system/vfs_defs.h b/headers/private/system/vfs_defs.h new file mode 100644 index 0000000000..9462ccd3b3 --- /dev/null +++ b/headers/private/system/vfs_defs.h @@ -0,0 +1,23 @@ +/* + * Copyright 2002-2008, Axel Dörfler, axeld@pinc-software.de. All rights reserved. + * Distributed under the terms of the MIT License. + * + * Copyright 2001-2002, Travis Geiselbrecht. All rights reserved. + * Distributed under the terms of the NewOS License. + */ +#ifndef _SYSTEM_VFS_DEFS_H +#define _SYSTEM_VFS_DEFS_H + +#include + +#include + + +struct fd_info { + int number; + int32 open_mode; + dev_t device; + ino_t node; +}; + +#endif /* _SYSTEM_VFS_DEFS_H */ diff --git a/headers/private/system/vm_defs.h b/headers/private/system/vm_defs.h new file mode 100644 index 0000000000..c4a98f52c2 --- /dev/null +++ b/headers/private/system/vm_defs.h @@ -0,0 +1,71 @@ +/* + * Copyright 2002-2008, Axel Dörfler, axeld@pinc-software.de. All rights reserved. + * Distributed under the terms of the MIT License. + * + * Copyright 2001-2002, Travis Geiselbrecht. All rights reserved. + * Distributed under the terms of the NewOS License. + */ +#ifndef _SYSTEM_VM_DEFS_H +#define _SYSTEM_VM_DEFS_H + +#include + + +// additional protection flags +// Note: the VM probably won't support all combinations - it will try +// its best, but create_area() will fail if it has to. +// Of course, the exact behaviour will be documented somewhere... +#define B_EXECUTE_AREA 0x04 +#define B_STACK_AREA 0x08 + // "stack" protection is not available on most platforms - it's used + // to only commit memory as needed, and have guard pages at the + // bottom of the stack. + // "execute" protection is currently ignored, but nevertheless, you + // should use it if you require to execute code in that area. + +#define B_KERNEL_EXECUTE_AREA 0x40 +#define B_KERNEL_STACK_AREA 0x80 + +#define B_USER_PROTECTION \ + (B_READ_AREA | B_WRITE_AREA | B_EXECUTE_AREA | B_STACK_AREA) +#define B_KERNEL_PROTECTION \ + (B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA | B_KERNEL_EXECUTE_AREA \ + | B_KERNEL_STACK_AREA) + +// TODO: These aren't really a protection flags, but since the "protection" +// field is the only flag field, we currently use it for this. +// A cleaner approach would be appreciated - maybe just an official generic +// flags region in the protection field. +#define B_OVERCOMMITTING_AREA 0x1000 +#define B_SHARED_AREA 0x2000 +#define B_KERNEL_AREA 0x4000 + // Usable from userland according to its protection flags, but the area + // itself is not deletable, resizable, etc from userland. + +#define B_USER_AREA_FLAGS (B_USER_PROTECTION) +#define B_KERNEL_AREA_FLAGS \ + (B_KERNEL_PROTECTION | B_USER_CLONEABLE_AREA | B_OVERCOMMITTING_AREA \ + | B_SHARED_AREA) + +// flags for vm_get_physical_page() +enum { + PHYSICAL_PAGE_NO_WAIT = 0, + PHYSICAL_PAGE_CAN_WAIT, +}; + +// mapping argument for several internal VM functions +enum { + REGION_NO_PRIVATE_MAP = 0, + REGION_PRIVATE_MAP +}; + +enum { + // ToDo: these are here only temporarily - it's a private + // addition to the BeOS create_area() lock flags + B_ALREADY_WIRED = 6, +}; + +#define MEMORY_TYPE_SHIFT 28 + + +#endif /* _SYSTEM_VM_DEFS_H */ diff --git a/src/add-ons/input_server/devices/keyboard/Jamfile b/src/add-ons/input_server/devices/keyboard/Jamfile index 64c15c90cd..ff131994c4 100644 --- a/src/add-ons/input_server/devices/keyboard/Jamfile +++ b/src/add-ons/input_server/devices/keyboard/Jamfile @@ -2,8 +2,8 @@ SubDir HAIKU_TOP src add-ons input_server devices keyboard ; SetSubDirSupportedPlatformsBeOSCompatible ; -UsePrivateHeaders input interface kernel tracker ; -UseArchHeaders $(TARGET_ARCH) ; +UsePrivateHeaders input interface tracker ; +UsePrivateSystemHeaders ; Addon keyboard : KeyboardInputDevice.cpp diff --git a/src/add-ons/kernel/bus_managers/agp_gart/Jamfile b/src/add-ons/kernel/bus_managers/agp_gart/Jamfile index 67cef21eac..9c35beef1e 100644 --- a/src/add-ons/kernel/bus_managers/agp_gart/Jamfile +++ b/src/add-ons/kernel/bus_managers/agp_gart/Jamfile @@ -3,10 +3,9 @@ SubDir HAIKU_TOP src add-ons kernel bus_managers agp_gart ; SetSubDirSupportedPlatformsBeOSCompatible ; SubDirC++Flags -fno-rtti ; -UsePrivateHeaders [ FDirName kernel boot platform $(TARGET_BOOT_PLATFORM) ] ; -UsePrivateHeaders [ FDirName kernel arch $(TARGET_ARCH) ] ; UsePrivateHeaders [ FDirName graphics intel_extreme ] ; -UsePrivateHeaders graphics kernel ; +UsePrivateHeaders graphics ; +UsePrivateKernelHeaders ; KernelAddon agp_gart : agp_gart.cpp diff --git a/src/add-ons/kernel/bus_managers/ide/Jamfile b/src/add-ons/kernel/bus_managers/ide/Jamfile index 1cdbd592a2..15c8d76736 100644 --- a/src/add-ons/kernel/bus_managers/ide/Jamfile +++ b/src/add-ons/kernel/bus_managers/ide/Jamfile @@ -1,8 +1,7 @@ SubDir HAIKU_TOP src add-ons kernel bus_managers ide ; -UsePrivateHeaders drivers kernel ; -UsePrivateHeaders [ FDirName kernel arch $(TARGET_ARCH) ] ; -UsePrivateHeaders [ FDirName kernel boot platform $(TARGET_BOOT_PLATFORM) ] ; +UsePrivateHeaders drivers ; +UsePrivateKernelHeaders ; KernelAddon ide : ata.c diff --git a/src/add-ons/kernel/bus_managers/isa/Jamfile b/src/add-ons/kernel/bus_managers/isa/Jamfile index e56ad6c257..598ee1a55f 100644 --- a/src/add-ons/kernel/bus_managers/isa/Jamfile +++ b/src/add-ons/kernel/bus_managers/isa/Jamfile @@ -1,8 +1,6 @@ SubDir HAIKU_TOP src add-ons kernel bus_managers isa ; -UsePrivateHeaders kernel ; -UsePrivateHeaders [ FDirName kernel arch $(TARGET_ARCH) ] ; -UsePrivateHeaders [ FDirName kernel boot platform $(TARGET_BOOT_PLATFORM) ] ; +UsePrivateKernelHeaders ; KernelAddon isa : isa.c diff --git a/src/add-ons/kernel/bus_managers/scsi/Jamfile b/src/add-ons/kernel/bus_managers/scsi/Jamfile index dd970c29e6..8ce5dac419 100644 --- a/src/add-ons/kernel/bus_managers/scsi/Jamfile +++ b/src/add-ons/kernel/bus_managers/scsi/Jamfile @@ -1,8 +1,7 @@ SubDir HAIKU_TOP src add-ons kernel bus_managers scsi ; -UsePrivateHeaders drivers kernel ; -UsePrivateHeaders [ FDirName kernel arch $(TARGET_ARCH) ] ; -UsePrivateHeaders [ FDirName kernel boot platform $(TARGET_BOOT_PLATFORM) ] ; +UsePrivateHeaders drivers ; +UsePrivateKernelHeaders ; # disable debug output, if debugging is disabled if $(DEBUG) = 0 { diff --git a/src/add-ons/kernel/bus_managers/usb/Jamfile b/src/add-ons/kernel/bus_managers/usb/Jamfile index 6e6c7da4ce..ef2e5941b4 100644 --- a/src/add-ons/kernel/bus_managers/usb/Jamfile +++ b/src/add-ons/kernel/bus_managers/usb/Jamfile @@ -5,12 +5,11 @@ SetSubDirSupportedPlatformsBeOSCompatible ; SubDirC++Flags -fno-rtti ; SubDirSysHdrs $(SUBDIR) ; -UsePrivateHeaders [ FDirName kernel ] ; if $(TARGET_PLATFORM) != haiku { - UsePublicHeaders [ FDirName drivers ] ; + UsePrivateHeaders kernel ; + UsePublicHeaders drivers ; } else { - UseArchHeaders $(TARGET_ARCH) ; - UsePrivateHeaders [ FDirName kernel boot platform $(TARGET_BOOT_PLATFORM) ] ; + UsePrivateKernelHeaders ; } KernelStaticLibrary libusb.a : diff --git a/src/add-ons/kernel/busses/scsi/ahci/Jamfile b/src/add-ons/kernel/busses/scsi/ahci/Jamfile index 57bd0a805a..2022679bf8 100644 --- a/src/add-ons/kernel/busses/scsi/ahci/Jamfile +++ b/src/add-ons/kernel/busses/scsi/ahci/Jamfile @@ -1,7 +1,7 @@ SubDir HAIKU_TOP src add-ons kernel busses scsi ahci ; -UsePrivateHeaders drivers kernel ; -UsePrivateHeaders [ FDirName kernel arch $(TARGET_ARCH) ] ; +UsePrivateHeaders drivers ; +UsePrivateKernelHeaders ; KernelAddon ahci : ahci.c diff --git a/src/add-ons/kernel/drivers/random/Jamfile b/src/add-ons/kernel/drivers/random/Jamfile index 377a320837..30853b8663 100644 --- a/src/add-ons/kernel/drivers/random/Jamfile +++ b/src/add-ons/kernel/drivers/random/Jamfile @@ -1,7 +1,6 @@ SubDir HAIKU_TOP src add-ons kernel drivers random ; -UsePrivateHeaders kernel [ FDirName kernel boot platform $(TARGET_BOOT_PLATFORM) ] ; -UseArchHeaders $(TARGET_ARCH) ; +UsePrivateKernelHeaders ; KernelAddon random : driver.c diff --git a/src/add-ons/kernel/generic/block_io/virtual_memory.c b/src/add-ons/kernel/generic/block_io/virtual_memory.c index 35d5a6fd2c..2f769ac9db 100644 --- a/src/add-ons/kernel/generic/block_io/virtual_memory.c +++ b/src/add-ons/kernel/generic/block_io/virtual_memory.c @@ -14,7 +14,6 @@ #include "virtual_memory.h" #include "wrapper.h" -#include #include diff --git a/src/apps/powerstatus/Jamfile b/src/apps/powerstatus/Jamfile index 67705a04c5..573ae76a3b 100644 --- a/src/apps/powerstatus/Jamfile +++ b/src/apps/powerstatus/Jamfile @@ -3,7 +3,7 @@ SubDir HAIKU_TOP src apps powerstatus ; SetSubDirSupportedPlatformsBeOSCompatible ; UsePrivateHeaders shared ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; Application PowerStatus : PowerStatusWindow.cpp diff --git a/src/apps/powerstatus/PowerStatusView.cpp b/src/apps/powerstatus/PowerStatusView.cpp index 948d7d6f86..1aa1086097 100644 --- a/src/apps/powerstatus/PowerStatusView.cpp +++ b/src/apps/powerstatus/PowerStatusView.cpp @@ -11,8 +11,8 @@ #include "PowerStatus.h" #ifdef HAIKU_TARGET_PLATFORM_HAIKU -# include -# include +# include +# include # include // temporary, as long as there is no real power state API #endif diff --git a/src/bin/Jamfile b/src/bin/Jamfile index 12db0cdd07..d2e1447227 100644 --- a/src/bin/Jamfile +++ b/src/bin/Jamfile @@ -6,7 +6,7 @@ UsePrivateHeaders app ; UsePrivateHeaders shared ; UsePrivateHeaders storage ; UseLibraryHeaders usb ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; SubDirHdrs $(HAIKU_TOP) src add-ons kernel file_cache ; local haiku-utils_rsrc = [ FGristFiles haiku-utils.rsrc ] ; diff --git a/src/bin/fdinfo.cpp b/src/bin/fdinfo.cpp index 800b8abb5b..97036666f2 100644 --- a/src/bin/fdinfo.cpp +++ b/src/bin/fdinfo.cpp @@ -10,8 +10,8 @@ #include #include -#include #include +#include #include #include diff --git a/src/bin/listdev/Jamfile b/src/bin/listdev/Jamfile index b167e2660d..ab27f27aef 100644 --- a/src/bin/listdev/Jamfile +++ b/src/bin/listdev/Jamfile @@ -1,8 +1,9 @@ SubDir HAIKU_TOP src bin listdev ; -UsePrivateHeaders kernel shared ; -UsePrivateHeaders [ FDirName kernel arch $(TARGET_ARCH) ] ; -UsePrivateHeaders [ FDirName kernel boot platform $(TARGET_BOOT_PLATFORM) ] ; +UsePrivateHeaders shared ; +UsePrivateKernelHeaders ; + # TODO: The dm_wrapper.h includes ! Clean that up! +UsePrivateSystemHeaders ; BinCommand listdev : dm_wrapper.c diff --git a/src/bin/listdev/dm_wrapper.c b/src/bin/listdev/dm_wrapper.c index 5e79f783f5..1aa1e1bbf6 100644 --- a/src/bin/listdev/dm_wrapper.c +++ b/src/bin/listdev/dm_wrapper.c @@ -4,7 +4,7 @@ #include #include -#include +#include #include #include diff --git a/src/bin/multiuser/Jamfile b/src/bin/multiuser/Jamfile index f755d5768f..6a4bc30513 100644 --- a/src/bin/multiuser/Jamfile +++ b/src/bin/multiuser/Jamfile @@ -1,7 +1,9 @@ SubDir HAIKU_TOP src bin multiuser ; -UsePrivateKernelHeaders ; +UsePrivateSystemHeaders ; UsePrivateHeaders app ; +UsePrivateHeaders kernel ; + # for UsePrivateHeaders libroot ; UsePrivateHeaders shared ; diff --git a/src/bin/network/arp/Jamfile b/src/bin/network/arp/Jamfile index 6f8165b9c8..93561d7eb0 100644 --- a/src/bin/network/arp/Jamfile +++ b/src/bin/network/arp/Jamfile @@ -9,7 +9,7 @@ if ! $(TARGET_PLATFORM_HAIKU_COMPATIBLE) { } UsePrivateHeaders net ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; BinCommand arp : arp.cpp diff --git a/src/bin/network/arp/arp.cpp b/src/bin/network/arp/arp.cpp index e7e10e0eeb..9a8be9f450 100644 --- a/src/bin/network/arp/arp.cpp +++ b/src/bin/network/arp/arp.cpp @@ -9,7 +9,7 @@ #include -#include +#include #include #include diff --git a/src/bin/network/netstat/Jamfile b/src/bin/network/netstat/Jamfile index d226c150e7..64e71428ae 100644 --- a/src/bin/network/netstat/Jamfile +++ b/src/bin/network/netstat/Jamfile @@ -1,7 +1,7 @@ SubDir HAIKU_TOP src bin network netstat ; UsePrivateHeaders net ; -UsePrivateKernelHeaders ; # for syscalls.h +UsePrivateSystemHeaders ; # for syscalls.h BinCommand netstat : netstat.cpp diff --git a/src/bin/strace/Jamfile b/src/bin/strace/Jamfile index b4af61ed27..81385991ab 100644 --- a/src/bin/strace/Jamfile +++ b/src/bin/strace/Jamfile @@ -1,11 +1,10 @@ SubDir HAIKU_TOP src bin strace ; -UseArchHeaders $(TARGET_ARCH) ; UsePrivateHeaders device ; UsePrivateHeaders drivers ; -UsePrivateHeaders kernel ; UsePrivateHeaders shared ; UsePrivateHeaders net ; +UsePrivateSystemHeaders ; # find headers generated by gensyscalls SubDirHdrs $(TARGET_COMMON_DEBUG_LOCATE_TARGET) ; diff --git a/src/kits/app/Jamfile b/src/kits/app/Jamfile index 7aef610ef1..9a79f4bfda 100644 --- a/src/kits/app/Jamfile +++ b/src/kits/app/Jamfile @@ -18,7 +18,7 @@ if $(RUN_WITHOUT_APP_SERVER) != 0 { } UsePrivateHeaders shared app interface kernel ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; SetSubDirSupportedPlatforms haiku libbe_test ; diff --git a/src/kits/debug/Jamfile b/src/kits/debug/Jamfile index 38aa51f5da..f064cccb88 100644 --- a/src/kits/debug/Jamfile +++ b/src/kits/debug/Jamfile @@ -1,10 +1,11 @@ SubDir HAIKU_TOP src kits debug ; -UseArchHeaders $(TARGET_ARCH) ; UsePrivateHeaders debug ; UsePrivateHeaders kernel ; + # for UsePrivateHeaders runtime_loader ; UsePrivateHeaders shared ; +UsePrivateSystemHeaders ; SubDirHdrs [ FDirName $(SUBDIR) arch ] ; SEARCH_SOURCE += [ FDirName $(SUBDIR) arch $(TARGET_ARCH) ] ; @@ -16,7 +17,3 @@ SharedLibrary libdebug.so : # architecture specific arch_debug_support.cpp ; - -LinkAgainst libdebug.so : - libroot.so -; diff --git a/src/kits/network/Jamfile b/src/kits/network/Jamfile index 5fe1035eae..86fe4e355e 100644 --- a/src/kits/network/Jamfile +++ b/src/kits/network/Jamfile @@ -1,7 +1,7 @@ SubDir HAIKU_TOP src kits network ; UsePrivateHeaders libroot net shared ; -UsePrivateKernelHeaders ; +UsePrivateSystemHeaders ; SharedLibrary libnetwork.so : init.cpp diff --git a/src/kits/opengl/GLRendererRoster.cpp b/src/kits/opengl/GLRendererRoster.cpp index 06a14c7139..873811c8ab 100644 --- a/src/kits/opengl/GLRendererRoster.cpp +++ b/src/kits/opengl/GLRendererRoster.cpp @@ -5,8 +5,9 @@ * Authors: */ +#include #include -#include +#include #include #include diff --git a/src/kits/opengl/Jamfile b/src/kits/opengl/Jamfile index 58b4bb492c..635aa1571d 100644 --- a/src/kits/opengl/Jamfile +++ b/src/kits/opengl/Jamfile @@ -2,7 +2,8 @@ SubDir HAIKU_TOP src kits opengl ; SetSubDirSupportedPlatformsBeOSCompatible ; -UsePrivateHeaders kernel opengl ; +UsePrivateHeaders opengl ; +UsePrivateSystemHeaders ; if $(TARGET_PLATFORM) != haiku { UseHeaders [ FDirName $(HAIKU_TOP) headers os opengl ] : true ; diff --git a/src/kits/storage/Jamfile b/src/kits/storage/Jamfile index 852b75afb7..bc40d610b8 100644 --- a/src/kits/storage/Jamfile +++ b/src/kits/storage/Jamfile @@ -4,9 +4,8 @@ SetSubDirSupportedPlatforms haiku libbe_test ; UseLibraryHeaders icon ; -UsePrivateHeaders shared app kernel storage ; -UsePrivateHeaders [ FDirName kernel disk_device_manager ] ; -UseArchHeaders $(TARGET_ARCH) ; +UsePrivateHeaders shared app storage ; +UsePrivateSystemHeaders ; # for libbe_test UsePublicHeaders [ FDirName add-ons registrar ] ; diff --git a/src/kits/storage/disk_device/DiskDevice.cpp b/src/kits/storage/disk_device/DiskDevice.cpp index ac066e8426..bd6f032443 100644 --- a/src/kits/storage/disk_device/DiskDevice.cpp +++ b/src/kits/storage/disk_device/DiskDevice.cpp @@ -21,7 +21,7 @@ #include #include -#include +#include #include "DiskDeviceJob.h" #include "DiskDeviceJobGenerator.h" diff --git a/src/kits/storage/disk_device/DiskDeviceJobGenerator.cpp b/src/kits/storage/disk_device/DiskDeviceJobGenerator.cpp index 58381ae1f6..98c06e729b 100644 --- a/src/kits/storage/disk_device/DiskDeviceJobGenerator.cpp +++ b/src/kits/storage/disk_device/DiskDeviceJobGenerator.cpp @@ -12,7 +12,7 @@ #include #include -#include +#include #include "DiskDeviceJob.h" #include "DiskDeviceJobQueue.h" diff --git a/src/kits/storage/disk_device/DiskDeviceRoster.cpp b/src/kits/storage/disk_device/DiskDeviceRoster.cpp index 757be2b0eb..71b5eb1c44 100644 --- a/src/kits/storage/disk_device/DiskDeviceRoster.cpp +++ b/src/kits/storage/disk_device/DiskDeviceRoster.cpp @@ -21,7 +21,7 @@ #include #include -#include +#include //#include "AddOnImage.h" diff --git a/src/kits/storage/disk_device/DiskSystem.cpp b/src/kits/storage/disk_device/DiskSystem.cpp index ad61749fe5..0124a5bb33 100644 --- a/src/kits/storage/disk_device/DiskSystem.cpp +++ b/src/kits/storage/disk_device/DiskSystem.cpp @@ -8,7 +8,7 @@ #include #include -#include +#include #include #include "DiskSystemAddOnManager.h" diff --git a/src/kits/storage/disk_device/MutablePartition.cpp b/src/kits/storage/disk_device/MutablePartition.cpp index b3d7358f8e..312340ae03 100644 --- a/src/kits/storage/disk_device/MutablePartition.cpp +++ b/src/kits/storage/disk_device/MutablePartition.cpp @@ -12,7 +12,7 @@ #include -#include +#include #include "DiskDeviceUtils.h" #include "PartitionDelegate.h" diff --git a/src/kits/storage/disk_device/Partition.cpp b/src/kits/storage/disk_device/Partition.cpp index 7c560d746d..d3df004769 100644 --- a/src/kits/storage/disk_device/Partition.cpp +++ b/src/kits/storage/disk_device/Partition.cpp @@ -23,7 +23,7 @@ #include -#include +#include #include #include "PartitionDelegate.h" diff --git a/src/kits/storage/disk_device/PartitioningInfo.cpp b/src/kits/storage/disk_device/PartitioningInfo.cpp index cae1859ed5..4dc72d20e4 100644 --- a/src/kits/storage/disk_device/PartitioningInfo.cpp +++ b/src/kits/storage/disk_device/PartitioningInfo.cpp @@ -8,10 +8,11 @@ #include +#include #include #include -#include +#include using namespace std; diff --git a/src/kits/translation/Jamfile b/src/kits/translation/Jamfile index eb56879604..5cc1f217be 100644 --- a/src/kits/translation/Jamfile +++ b/src/kits/translation/Jamfile @@ -7,7 +7,8 @@ if $(TARGET_PLATFORM) != haiku { UsePublicHeaders translation ; } -UsePrivateHeaders kernel translation textencoding ; +UsePrivateHeaders translation textencoding ; +UsePrivateSystemHeaders ; SharedLibrary libtranslation.so : BitmapStream.cpp diff --git a/src/kits/translation/TranslatorRoster.cpp b/src/kits/translation/TranslatorRoster.cpp index e1e875bd13..01b1e3f5ec 100644 --- a/src/kits/translation/TranslatorRoster.cpp +++ b/src/kits/translation/TranslatorRoster.cpp @@ -17,8 +17,9 @@ #include "FuncTranslator.h" #include "TranslatorRosterPrivate.h" +#include #include -#include +#include #include #include diff --git a/src/preferences/time/Jamfile b/src/preferences/time/Jamfile index 72ecbcd64e..a00f13607b 100644 --- a/src/preferences/time/Jamfile +++ b/src/preferences/time/Jamfile @@ -2,8 +2,7 @@ SubDir HAIKU_TOP src preferences time ; SetSubDirSupportedPlatformsBeOSCompatible ; -UsePrivateHeaders kernel ; -UseArchHeaders $(TARGET_ARCH) ; +UsePrivateSystemHeaders ; Preference Time : AnalogClock.cpp diff --git a/src/servers/app/drawing/AccelerantHWInterface.cpp b/src/servers/app/drawing/AccelerantHWInterface.cpp index 3646a7d9c0..bd9609cdce 100644 --- a/src/servers/app/drawing/AccelerantHWInterface.cpp +++ b/src/servers/app/drawing/AccelerantHWInterface.cpp @@ -24,10 +24,11 @@ #include "SystemPalette.h" #include -#include +#include #include #include +#include #include #include #include diff --git a/src/servers/app/drawing/Jamfile b/src/servers/app/drawing/Jamfile index 2c814633c0..df50ba0abb 100644 --- a/src/servers/app/drawing/Jamfile +++ b/src/servers/app/drawing/Jamfile @@ -1,8 +1,9 @@ SubDir HAIKU_TOP src servers app drawing ; UseLibraryHeaders agg ; -UsePrivateHeaders app graphics kernel interface shared ; +UsePrivateHeaders app graphics interface shared ; UsePrivateHeaders [ FDirName graphics common ] ; +UsePrivateSystemHeaders ; UseHeaders [ FDirName $(HAIKU_TOP) src servers app ] ; UseHeaders [ FDirName $(HAIKU_TOP) src servers app drawing Painter ] ; diff --git a/src/servers/input/InputServer.cpp b/src/servers/input/InputServer.cpp index 0c600e4763..b5c8e3a678 100644 --- a/src/servers/input/InputServer.cpp +++ b/src/servers/input/InputServer.cpp @@ -10,7 +10,7 @@ #include "kb_mouse_driver.h" #include "MethodReplicant.h" -#include +#include #include #include @@ -18,6 +18,7 @@ #include #include #include +#include #include #include #include diff --git a/src/servers/input/Jamfile b/src/servers/input/Jamfile index 41d59499fa..d6501f3f1c 100644 --- a/src/servers/input/Jamfile +++ b/src/servers/input/Jamfile @@ -30,7 +30,8 @@ SEARCH on US-International.keymap AddResources input_server : input_server.rdef ; -UsePrivateHeaders app input interface kernel shared storage ; +UsePrivateHeaders app input interface shared storage ; +UsePrivateSystemHeaders ; SubDirC++Flags -DADD_ON_STABLE_SECONDS=1 ; # for AddOnMonitorHandler.cpp diff --git a/src/servers/media/AddOnManager.cpp b/src/servers/media/AddOnManager.cpp index 2ffc55c203..01828a06b0 100644 --- a/src/servers/media/AddOnManager.cpp +++ b/src/servers/media/AddOnManager.cpp @@ -20,7 +20,7 @@ #include #include -#include +#include #include #include "FormatManager.h" diff --git a/src/servers/media/Jamfile b/src/servers/media/Jamfile index b764f146e6..8ad8d43fd7 100644 --- a/src/servers/media/Jamfile +++ b/src/servers/media/Jamfile @@ -3,7 +3,7 @@ SubDir HAIKU_TOP src servers media ; SetSubDirSupportedPlatformsBeOSCompatible ; UsePrivateHeaders media shared storage ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; AddResources media_server : media_server.rdef ; diff --git a/src/servers/registrar/Jamfile b/src/servers/registrar/Jamfile index d58a0ab5da..6dbeb0009d 100644 --- a/src/servers/registrar/Jamfile +++ b/src/servers/registrar/Jamfile @@ -2,11 +2,12 @@ SubDir HAIKU_TOP src servers registrar ; UsePrivateHeaders app ; UsePrivateHeaders kernel ; + # for UsePrivateHeaders libroot ; UsePrivateHeaders shared ; UsePrivateHeaders storage ; UsePrivateHeaders tracker ; -UseArchHeaders $(TARGET_ARCH) ; +UsePrivateSystemHeaders ; SEARCH_SOURCE += [ FDirName $(SUBDIR) mime ] ; diff --git a/src/system/boot/loader/Jamfile b/src/system/boot/loader/Jamfile index 8cbe3b673c..e94a70092f 100644 --- a/src/system/boot/loader/Jamfile +++ b/src/system/boot/loader/Jamfile @@ -4,10 +4,10 @@ SubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems amiga ; SubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems apple ; SubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems efi ; SubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems intel ; -UsePrivateHeaders [ FDirName kernel boot platform $(TARGET_BOOT_PLATFORM) ] ; +UsePrivateKernelHeaders ; UsePrivateHeaders [ FDirName kernel disk_device_manager ] ; -UsePrivateHeaders [ FDirName kernel util ] [ FDirName kernel arch $(TARGET_ARCH) ] ; -UsePrivateHeaders kernel shared storage ; +UsePrivateHeaders [ FDirName kernel util ] ; +UsePrivateHeaders shared storage ; { local defines = diff --git a/src/system/glue/Jamfile b/src/system/glue/Jamfile index 1b9e86af3f..d1d1e63951 100644 --- a/src/system/glue/Jamfile +++ b/src/system/glue/Jamfile @@ -1,8 +1,10 @@ SubDir HAIKU_TOP src system glue ; +UsePrivateSystemHeaders ; + KernelObjects init_term_dyn.c start_dyn.c - ; +; SubInclude HAIKU_TOP src system glue arch ; diff --git a/src/system/kernel/arch/m68k/Jamfile b/src/system/kernel/arch/m68k/Jamfile index ed4d43632d..15f6a62c8b 100644 --- a/src/system/kernel/arch/m68k/Jamfile +++ b/src/system/kernel/arch/m68k/Jamfile @@ -1,10 +1,7 @@ SubDir HAIKU_TOP src system kernel arch m68k ; SubDirHdrs $(SUBDIR) $(DOTDOT) generic ; -#UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) ; -# for some reason, this doesn't work -UsePrivateHeaders kernel [ FDirName kernel arch $(TARGET_ARCH) ] - [ FDirName kernel boot platform $(HAIKU_BOOT_PLATFORM) ] ; +UsePrivateKernelHeaders ; SEARCH_SOURCE += [ FDirName $(SUBDIR) $(DOTDOT) generic ] ; diff --git a/src/system/kernel/arch/ppc/Jamfile b/src/system/kernel/arch/ppc/Jamfile index 87d23d3dab..2a461150c0 100644 --- a/src/system/kernel/arch/ppc/Jamfile +++ b/src/system/kernel/arch/ppc/Jamfile @@ -1,10 +1,7 @@ SubDir HAIKU_TOP src system kernel arch ppc ; SubDirHdrs $(SUBDIR) $(DOTDOT) generic ; -#UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) ; -# for some reason, this doesn't work -UsePrivateHeaders kernel [ FDirName kernel arch $(TARGET_ARCH) ] - [ FDirName kernel boot platform $(HAIKU_BOOT_PLATFORM) ] ; +UsePrivateKernelHeaders ; SEARCH_SOURCE += [ FDirName $(SUBDIR) $(DOTDOT) generic ] ; diff --git a/src/system/kernel/arch/x86/Jamfile b/src/system/kernel/arch/x86/Jamfile index 39d48cc994..7e976059b3 100644 --- a/src/system/kernel/arch/x86/Jamfile +++ b/src/system/kernel/arch/x86/Jamfile @@ -5,8 +5,7 @@ SubDirHdrs [ FDirName $(TARGET_COMMON_DEBUG_OBJECT_DIR) system kernel ] ; SubDirHdrs $(HAIKU_TOP) src add-ons kernel bus_managers ps2 ; SubDirHdrs $(SUBDIR) $(DOTDOT) generic ; -UsePrivateHeaders kernel [ FDirName kernel arch $(TARGET_ARCH) ] - [ FDirName kernel boot platform $(HAIKU_BOOT_PLATFORM) ] ; +UsePrivateKernelHeaders ; SEARCH_SOURCE += [ FDirName $(SUBDIR) $(DOTDOT) generic ] ; diff --git a/src/system/kernel/arch/x86/arch_interrupts.S b/src/system/kernel/arch/x86/arch_interrupts.S index 8ac4d2d513..5c19920c5e 100644 --- a/src/system/kernel/arch/x86/arch_interrupts.S +++ b/src/system/kernel/arch/x86/arch_interrupts.S @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include "tracing_config.h" diff --git a/src/system/kernel/lib/kernel_vsprintf.c b/src/system/kernel/lib/kernel_vsprintf.c index 9a1821a1d0..f47f44763a 100644 --- a/src/system/kernel/lib/kernel_vsprintf.c +++ b/src/system/kernel/lib/kernel_vsprintf.c @@ -8,7 +8,6 @@ #include -#include #include #include diff --git a/src/system/libroot/Jamfile b/src/system/libroot/Jamfile index 9410b27cf6..66a3ee4033 100644 --- a/src/system/libroot/Jamfile +++ b/src/system/libroot/Jamfile @@ -1,7 +1,7 @@ SubDir HAIKU_TOP src system libroot ; UsePrivateHeaders libroot ; -UsePrivateHeaders kernel ; +UsePrivateSystemHeaders ; UnarchiveObjects $(TARGET_GCC_LIBGCC_OBJECTS) : $(TARGET_GCC_LIBGCC) ; # we need to link against libgcc.a objects and make diff --git a/src/system/libroot/os/Jamfile b/src/system/libroot/os/Jamfile index 7f08701da3..aa7248ee9f 100644 --- a/src/system/libroot/os/Jamfile +++ b/src/system/libroot/os/Jamfile @@ -1,6 +1,9 @@ SubDir HAIKU_TOP src system libroot os ; -UsePrivateKernelHeaders ; +UsePrivateSystemHeaders ; +UsePrivateHeaders kernel ; + # for util/KMessage.h +UsePrivateHeaders libroot ; MergeObject os_main.o : area.c diff --git a/src/system/libroot/os/arch/m68k/Jamfile b/src/system/libroot/os/arch/m68k/Jamfile index feaed4399e..b5f605924f 100644 --- a/src/system/libroot/os/arch/m68k/Jamfile +++ b/src/system/libroot/os/arch/m68k/Jamfile @@ -1,6 +1,6 @@ SubDir HAIKU_TOP src system libroot os arch m68k ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; MergeObject os_arch_$(TARGET_ARCH).o : atomic.S diff --git a/src/system/libroot/os/arch/ppc/Jamfile b/src/system/libroot/os/arch/ppc/Jamfile index 8474e3d05d..d478e29411 100644 --- a/src/system/libroot/os/arch/ppc/Jamfile +++ b/src/system/libroot/os/arch/ppc/Jamfile @@ -1,6 +1,6 @@ SubDir HAIKU_TOP src system libroot os arch ppc ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; MergeObject os_arch_$(TARGET_ARCH).o : atomic.S diff --git a/src/system/libroot/os/arch/x86/Jamfile b/src/system/libroot/os/arch/x86/Jamfile index 08eb738494..64cd8a948e 100644 --- a/src/system/libroot/os/arch/x86/Jamfile +++ b/src/system/libroot/os/arch/x86/Jamfile @@ -1,6 +1,9 @@ SubDir HAIKU_TOP src system libroot os arch x86 ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateKernelHeaders ; + # TODO: Replace by "UsePrivateHeaders libroot" after resolving the TODO in + # time.c! +UsePrivateSystemHeaders ; MergeObject os_arch_$(TARGET_ARCH).o : atomic.S diff --git a/src/system/libroot/os/arch/x86/syscalls.inc b/src/system/libroot/os/arch/x86/syscalls.inc index 0e48d2459f..fa156cbd99 100644 --- a/src/system/libroot/os/arch/x86/syscalls.inc +++ b/src/system/libroot/os/arch/x86/syscalls.inc @@ -14,7 +14,7 @@ * branch to the syscall vector in the commpage */ -#include +#include #define _SYSCALL(name, n) \ .globl name; \ diff --git a/src/system/libroot/os/arch/x86/time.c b/src/system/libroot/os/arch/x86/time.c index f8ccc1e824..f1c29dd98d 100644 --- a/src/system/libroot/os/arch/x86/time.c +++ b/src/system/libroot/os/arch/x86/time.c @@ -17,7 +17,8 @@ __arch_init_time(struct real_time_data *data, bool setDefaults) data->arch_data.system_time_conversion_factor = 100000; } - // ToDo: this should only store a pointer to that value + // TODO: this should only store a pointer to that value + // When resolving this TODO, also resolve the one in the Jamfile. __x86_setup_system_time(data->arch_data.system_time_conversion_factor); } diff --git a/src/system/libroot/os/thread.c b/src/system/libroot/os/thread.c index 6f41b679f7..647ba05ffa 100644 --- a/src/system/libroot/os/thread.c +++ b/src/system/libroot/os/thread.c @@ -9,11 +9,10 @@ #include #include -#include - -#include "libroot_private.h" -#include "tls.h" -#include "syscalls.h" +#include +#include +#include +#include #undef thread_entry diff --git a/src/system/libroot/os/time.c b/src/system/libroot/os/time.c index 05207a1bdf..3eb4ef4f81 100644 --- a/src/system/libroot/os/time.c +++ b/src/system/libroot/os/time.c @@ -4,7 +4,7 @@ */ -#include +#include #include #include #include diff --git a/src/system/libroot/posix/Jamfile b/src/system/libroot/posix/Jamfile index 087de76200..1d1020b53d 100644 --- a/src/system/libroot/posix/Jamfile +++ b/src/system/libroot/posix/Jamfile @@ -1,7 +1,10 @@ SubDir HAIKU_TOP src system libroot posix ; UsePrivateHeaders app shared [ FDirName syslog_daemon ] ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; +UsePrivateHeaders kernel ; + # For util/KMessage.h +UsePrivateHeaders libroot ; if $(HAIKU_MULTIUSER_QUERY) = 1 { PWD_BACKEND = pwd_query.c ; diff --git a/src/system/libroot/posix/malloc/Jamfile b/src/system/libroot/posix/malloc/Jamfile index 8fe8a2f082..423cda5ffe 100644 --- a/src/system/libroot/posix/malloc/Jamfile +++ b/src/system/libroot/posix/malloc/Jamfile @@ -1,6 +1,6 @@ SubDir HAIKU_TOP src system libroot posix malloc ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; UsePrivateHeaders libroot ; MergeObject posix_malloc.o : diff --git a/src/system/libroot/posix/pthread/Jamfile b/src/system/libroot/posix/pthread/Jamfile index 072cfd46bb..7ce2652172 100644 --- a/src/system/libroot/posix/pthread/Jamfile +++ b/src/system/libroot/posix/pthread/Jamfile @@ -1,6 +1,8 @@ SubDir HAIKU_TOP src system libroot posix pthread ; -UsePrivateKernelHeaders ; +UsePrivateSystemHeaders ; +UsePrivateHeaders kernel ; + # for util/DoublyLinkedList.h UsePrivateHeaders libroot shared ; MergeObject posix_pthread.o : diff --git a/src/system/libroot/posix/pthread/pthread.c b/src/system/libroot/posix/pthread/pthread.c index e4cfb1f99d..fa8dd30d46 100644 --- a/src/system/libroot/posix/pthread/pthread.c +++ b/src/system/libroot/posix/pthread/pthread.c @@ -11,9 +11,8 @@ #include -#include #include -#include +#include static const pthread_attr pthread_attr_default = { diff --git a/src/system/libroot/posix/pthread/pthread_attr.c b/src/system/libroot/posix/pthread/pthread_attr.c index 6fbb0693d9..e488da8ec7 100644 --- a/src/system/libroot/posix/pthread/pthread_attr.c +++ b/src/system/libroot/posix/pthread/pthread_attr.c @@ -9,7 +9,7 @@ #include -#include +#include int diff --git a/src/system/libroot/posix/semaphore.cpp b/src/system/libroot/posix/semaphore.cpp index 4b40242fb5..ac08dc3699 100644 --- a/src/system/libroot/posix/semaphore.cpp +++ b/src/system/libroot/posix/semaphore.cpp @@ -13,7 +13,7 @@ #include #include -#include +#include #include #include diff --git a/src/system/libroot/posix/signal/Jamfile b/src/system/libroot/posix/signal/Jamfile index e25aca6da0..2adefcc2e3 100644 --- a/src/system/libroot/posix/signal/Jamfile +++ b/src/system/libroot/posix/signal/Jamfile @@ -1,6 +1,6 @@ SubDir HAIKU_TOP src system libroot posix signal ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; MergeObject posix_signal.o : kill.c diff --git a/src/system/libroot/posix/stdio/Jamfile b/src/system/libroot/posix/stdio/Jamfile index 24e0102acc..c731492c5f 100644 --- a/src/system/libroot/posix/stdio/Jamfile +++ b/src/system/libroot/posix/stdio/Jamfile @@ -1,6 +1,6 @@ SubDir HAIKU_TOP src system libroot posix stdio ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; MergeObject posix_stdio.o : _fseek.c diff --git a/src/system/libroot/posix/stdlib/Jamfile b/src/system/libroot/posix/stdlib/Jamfile index 023ae69c5c..741cd2aaeb 100644 --- a/src/system/libroot/posix/stdlib/Jamfile +++ b/src/system/libroot/posix/stdlib/Jamfile @@ -1,7 +1,7 @@ SubDir HAIKU_TOP src system libroot posix stdlib ; UsePrivateHeaders drivers libroot ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; MergeObject posix_stdlib.o : abs.c diff --git a/src/system/libroot/posix/string/Jamfile b/src/system/libroot/posix/string/Jamfile index e1ec6d1df8..45813d64e7 100644 --- a/src/system/libroot/posix/string/Jamfile +++ b/src/system/libroot/posix/string/Jamfile @@ -39,7 +39,7 @@ MergeObject posix_string.o : SubDir HAIKU_TOP src system libroot posix string arch $(TARGET_ARCH) ; -UsePrivateKernelHeaders ; +UsePrivateSystemHeaders ; MergeObject posix_string_arch_$(TARGET_ARCH).o : arch_string.S diff --git a/src/system/libroot/posix/string/arch/x86/arch_string.S b/src/system/libroot/posix/string/arch/x86/arch_string.S index 3e0807b110..5fd8e46c28 100644 --- a/src/system/libroot/posix/string/arch/x86/arch_string.S +++ b/src/system/libroot/posix/string/arch/x86/arch_string.S @@ -7,7 +7,7 @@ // TODO: This should not even be compiled for the kernel. Fix the TODO in // src/system/kernel/lib/Jamfile! -#include +#include #define FUNCTION(x) .global x; .type x,@function; x diff --git a/src/system/libroot/posix/sys/Jamfile b/src/system/libroot/posix/sys/Jamfile index 7ea9c29e40..8abf515219 100644 --- a/src/system/libroot/posix/sys/Jamfile +++ b/src/system/libroot/posix/sys/Jamfile @@ -1,7 +1,7 @@ SubDir HAIKU_TOP src system libroot posix sys ; UsePrivateHeaders shared ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; MergeObject posix_sys.o : chmod.c diff --git a/src/system/libroot/posix/sys/mman.cpp b/src/system/libroot/posix/sys/mman.cpp index fadfc7f0ed..28a1e19684 100644 --- a/src/system/libroot/posix/sys/mman.cpp +++ b/src/system/libroot/posix/sys/mman.cpp @@ -13,7 +13,7 @@ #include #include -#include +#include static const char* kSharedMemoryDir = "/boot/var/shared_memory/"; diff --git a/src/system/libroot/posix/sys/wait.c b/src/system/libroot/posix/sys/wait.c index cc478cc79f..b3b6d740ff 100644 --- a/src/system/libroot/posix/sys/wait.c +++ b/src/system/libroot/posix/sys/wait.c @@ -3,13 +3,13 @@ * Distributed under the terms of the MIT License. */ +#include + +#include +#include #include -#include - -#include -#include -#include +#include // ToDo: properly implement waitpid(), and waitid() diff --git a/src/system/libroot/posix/time/Jamfile b/src/system/libroot/posix/time/Jamfile index c451ccd1eb..ca90059300 100644 --- a/src/system/libroot/posix/time/Jamfile +++ b/src/system/libroot/posix/time/Jamfile @@ -4,7 +4,7 @@ SubDir HAIKU_TOP src system libroot posix time ; SubDirCcFlags -DNOID -DTZDIR='\"/etc/timezones\"' -DUSG_COMPAT -DTM_GMTOFF=tm_gmtoff -DTM_ZONE=tm_zone -DPCTS=1 -DSTD_INSPIRED ; UsePrivateHeaders [ FDirName libroot time ] ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; MergeObject posix_time.o : asctime.c diff --git a/src/system/libroot/posix/unistd/Jamfile b/src/system/libroot/posix/unistd/Jamfile index fb5cca7a78..aa98b1f210 100644 --- a/src/system/libroot/posix/unistd/Jamfile +++ b/src/system/libroot/posix/unistd/Jamfile @@ -1,6 +1,7 @@ SubDir HAIKU_TOP src system libroot posix unistd ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateSystemHeaders ; +UsePrivateHeaders libroot ; MergeObject posix_unistd.o : access.c diff --git a/src/system/libroot/posix/unistd/conf.c b/src/system/libroot/posix/unistd/conf.c index ac55ee292a..ac2894a9e9 100644 --- a/src/system/libroot/posix/unistd/conf.c +++ b/src/system/libroot/posix/unistd/conf.c @@ -15,7 +15,7 @@ #include #include -#include +#include #include diff --git a/src/system/runtime_loader/Jamfile b/src/system/runtime_loader/Jamfile index 31a704e805..5237153eda 100644 --- a/src/system/runtime_loader/Jamfile +++ b/src/system/runtime_loader/Jamfile @@ -1,7 +1,9 @@ SubDir HAIKU_TOP src system runtime_loader ; UsePrivateHeaders runtime_loader ; -UseHeaders $(TARGET_PRIVATE_KERNEL_HEADERS) : true ; +UsePrivateHeaders kernel ; + # for +UsePrivateSystemHeaders ; # Don't let gcc inject built-in function code. This will cause dependencies # to libroot, which we don't link against. diff --git a/src/system/runtime_loader/elf.cpp b/src/system/runtime_loader/elf.cpp index 19c3487437..5ba8881941 100644 --- a/src/system/runtime_loader/elf.cpp +++ b/src/system/runtime_loader/elf.cpp @@ -10,7 +10,6 @@ #include "runtime_loader_private.h" -#include "vm.h" #include @@ -19,13 +18,12 @@ #include #include -#include #include #include -#include #include #include -#include +#include +#include #include "tracing_config.h" diff --git a/src/tools/gensyscalls/Jamfile b/src/tools/gensyscalls/Jamfile index 7c09ce4294..2ad365d3c5 100644 --- a/src/tools/gensyscalls/Jamfile +++ b/src/tools/gensyscalls/Jamfile @@ -17,7 +17,7 @@ rule PreprocessSyscalls local headers = [ on $(1) return $(SEARCH_SOURCE) $(SUBDIRHDRS) $(HDRS) ] ; local sysHeaders = - [ PrivateHeaders kernel ] + $(TARGET_PRIVATE_SYSTEM_HEADERS) [ ArchHeaders $(TARGET_ARCH) ] [ on $(1) return $(SUBDIRSYSHDRS) $(SYSHDRS) ] $(HAIKU_HDRS) ; @@ -45,7 +45,7 @@ actions PreprocessSyscalls } local syscallsHeader = [ FGristFiles syscalls.h ] ; -SEARCH on $(syscallsHeader) = [ FDirName $(HAIKU_TOP) headers private kernel ] ; +SEARCH on $(syscallsHeader) = [ FDirName $(HAIKU_TOP) headers private system ] ; # We generate two preprocessed headers. One for parsing by gensyscallinfos # (it contains #pragmas) and one for inclusion by the generated