Add namespace support for kvm

This commit is contained in:
Sebastian Huber 2016-05-06 21:40:49 +02:00
parent 5b1f20b73f
commit 5b4394f3c8
5 changed files with 9 additions and 8 deletions

View File

@ -141,7 +141,7 @@ def rtems(mm):
], ],
mm.generator['source']() mm.generator['source']()
) )
mod.addFile(mm.generator['file']('rtems/rtems-kvm-symbols.c', mod.addFile(mm.generator['file']('rtems/rtems-kernel-kvm-symbols.c',
mm.generator['rtems-path'](), mm.generator['rtems-path'](),
mm.generator['no-convert'](), mm.generator['no-convert'](),
mm.generator['no-convert'](), mm.generator['no-convert'](),

View File

@ -111,7 +111,7 @@ def build(bld):
update_outputs = True) update_outputs = True)
# KVM Symbols # KVM Symbols
bld(target = "rtemsbsd/rtems/rtems-kvm-symbols.c", bld(target = "rtemsbsd/rtems/rtems-kernel-kvm-symbols.c",
source = "rtemsbsd/rtems/generate_kvm_symbols", source = "rtemsbsd/rtems/generate_kvm_symbols",
rule = "./${SRC} > ${TGT}", rule = "./${SRC} > ${TGT}",
update_outputs = True) update_outputs = True)
@ -119,7 +119,7 @@ def build(bld):
features = "c", features = "c",
cflags = cflags, cflags = cflags,
includes = ['rtemsbsd/rtems'] + includes, includes = ['rtemsbsd/rtems'] + includes,
source = "rtemsbsd/rtems/rtems-kvm-symbols.c") source = "rtemsbsd/rtems/rtems-kernel-kvm-symbols.c")
libbsd_use += ["kvmsymbols"] libbsd_use += ["kvmsymbols"]
bld.add_group() bld.add_group()

View File

@ -73,8 +73,9 @@ cat <<EOF
* This file contains the known list of symbols for the kvm subsystem. * This file contains the known list of symbols for the kvm subsystem.
*/ */
#include <machine/rtems-bsd-kernel-space.h>
#include "kvm_private.h" #include "kvm_private.h"
#include "stdio.h"
/* /*
* The following is the known list of symbols that may be passed * The following is the known list of symbols that may be passed
@ -94,7 +95,7 @@ cat <<EOF
* to the kvm family of calls. * to the kvm family of calls.
*/ */
kvm_symval_t rtems_kvm_symbols[] = { const kvm_symval_t rtems_kvm_symbols[] = {
EOF EOF
for sym in ${symbols} for sym in ${symbols}
do do
@ -103,6 +104,6 @@ do
done done
cat <<EOF cat <<EOF
{ "", (uintptr_t) NULL } { "", 0 }
}; };
EOF EOF

View File

@ -8,6 +8,6 @@ typedef struct {
uintptr_t value; uintptr_t value;
} kvm_symval_t; } kvm_symval_t;
extern kvm_symval_t rtems_kvm_symbols[]; extern const kvm_symval_t rtems_kvm_symbols[];
#endif #endif

View File

@ -34,7 +34,7 @@ kvm_nlist(kvm_t *kd, struct nlist *nl)
struct nlist *p; struct nlist *p;
int nvalid; int nvalid;
int error; int error;
kvm_symval_t *kvm; const kvm_symval_t *kvm;
assert( kd != NULL ); assert( kd != NULL );
assert( nl != NULL ); assert( nl != NULL );