Get rid of kernel_c++_structs mechanism.

This undoes fc7864091e.

It was only ever used by the FreeBSD compatibility layer,
only supported one structure, and created problems with
concurrent builds.
This commit is contained in:
Augustin Cavalier 2023-10-09 20:26:21 -04:00
parent 7a701128f1
commit 788b1b12b6
4 changed files with 0 additions and 88 deletions

View File

@ -1,24 +0,0 @@
/*
* Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
* Distributed under the terms of the MIT License.
*/
#ifndef _KERNEL_KERNEL_CPP_STRUCTS_H
#define _KERNEL_KERNEL_CPP_STRUCTS_H
#include <util/kernel_c.h>
#include <kernel_c++_struct_sizes.h>
// this is the generated defining macros for the structure sizes
// in C++ mode include the headers defining the structures
#ifdef __cplusplus
# include <condition_variable.h>
#endif
// in C mode define the structures
DEFINE_KERNEL_CPP_STRUCT(ConditionVariable)
#endif // _KERNEL_KERNEL_CPP_STRUCTS_H

View File

@ -1,31 +0,0 @@
/*
* Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
* Distributed under the terms of the MIT License.
*/
#ifndef _KERNEL_UTIL_KERNEL_C_H
#define _KERNEL_UTIL_KERNEL_C_H
/*! Defines a structure that has the size of a certain C++ structure.
\param name The name of the C++ structure.
\param flatName The name of the structure to be defined.
*/
#define DEFINE_FLAT_KERNEL_CPP_STRUCT(name, flatName) \
struct flatName { \
char bytes[_KERNEL_CPP_STRUCT_SIZE_##name]; \
};
/*! In C mode DEFINE_KERNEL_CPP_STRUCT() defines a struct \a name with the
size of the C++ structure of the same name. In C++ it is a no-op.
*/
#ifdef __cplusplus
# define DEFINE_KERNEL_CPP_STRUCT(name)
#else
# define DEFINE_KERNEL_CPP_STRUCT(name) \
DEFINE_FLAT_KERNEL_CPP_STRUCT(name, name) \
typedef struct name name;
#endif
#endif /* _KERNEL_UTIL_KERNEL_C_H */

View File

@ -79,15 +79,6 @@ KernelMergeObject kernel_core.o :
: $(TARGET_KERNEL_PIC_CCFLAGS)
;
# Generate the header defining macros for C++ structure sizes.
local kernelC++StructSizesHeader = [ FGristFiles kernel_c++_struct_sizes.h ] ;
TARGET_HDRS_$(TARGET_KERNEL_ARCH) on $(kernelC++StructSizesHeader)
= [ on $(kernelC++StructSizesHeader)
return $(TARGET_HDRS_$(TARGET_KERNEL_ARCH)) ]
$(TARGET_PRIVATE_KERNEL_HEADERS) ;
CreateAsmStructOffsetsHeader $(kernelC++StructSizesHeader)
: kernel_c++_structs.cpp : $(TARGET_KERNEL_ARCH) ;
# We need to specify the dependency on the generated syscalls files explicitly.
Includes [ FGristFiles syscalls.cpp ]
:

View File

@ -1,24 +0,0 @@
/*
* Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
* Distributed under the terms of the MIT License.
*/
#include <computed_asm_macros.h>
#include <condition_variable.h>
// NOTE: Don't include <kernel_c++_structs.h>, since that would result in a
// circular dependency.
#define DEFINE_SIZE_MACRO(name) \
DEFINE_COMPUTED_ASM_MACRO(_KERNEL_CPP_STRUCT_SIZE_##name, sizeof(name));
void
dummy()
{
DEFINE_SIZE_MACRO(ConditionVariable)
}