Move P-Code execution logic from interpreters/prun to system/prun
This commit is contained in:
parent
892b3598ff
commit
db7257ad48
|
@ -1,5 +1,5 @@
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* apps/include/interpreters/prun.h
|
* apps/include/prun.h
|
||||||
*
|
*
|
||||||
* Copyright (C) 2014 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2014 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -33,8 +33,8 @@
|
||||||
*
|
*
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#ifndef __APPS_INCLUDE_INTERPRETERS_PRUN_H
|
#ifndef __APPS_INCLUDE_PRUN_H
|
||||||
#define __APPS_INCLUDE_INTERPRETERS_PRUN_H
|
#define __APPS_INCLUDE_PRUN_H
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Included Files
|
* Included Files
|
||||||
|
@ -87,4 +87,4 @@ int prun(FAR char *exepath, size_t varsize, size_t strsize);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* __APPS_INCLUDE_INTERPRETERS_PRUN_H */
|
#endif /* __APPS_INCLUDE_PRUN_H */
|
|
@ -15,6 +15,4 @@ config INTERPRETERS_PCODE
|
||||||
Pascal run-time code.
|
Pascal run-time code.
|
||||||
|
|
||||||
if INTERPRETERS_PCODE
|
if INTERPRETERS_PCODE
|
||||||
source "$APPSDIR/interpreters/prun/Kconfig"
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
|
@ -38,10 +38,6 @@ ifeq ($(CONFIG_INTERPRETERS_PCODE),y)
|
||||||
CONFIGURED_APPS += interpreters/pcode
|
CONFIGURED_APPS += interpreters/pcode
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_INTERPRETERS_PRUN),y)
|
|
||||||
CONFIGURED_APPS += interpreters/prun
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(CONFIG_INTERPRETERS_FICL),y)
|
ifeq ($(CONFIG_INTERPRETERS_FICL),y)
|
||||||
CONFIGURED_APPS += interpreters/ficl
|
CONFIGURED_APPS += interpreters/ficl
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -39,6 +39,10 @@ menu "readline()"
|
||||||
source "$APPSDIR/system/readline/Kconfig"
|
source "$APPSDIR/system/readline/Kconfig"
|
||||||
endmenu
|
endmenu
|
||||||
|
|
||||||
|
menu "P-Code Support"
|
||||||
|
source "$APPSDIR/system/prun/Kconfig"
|
||||||
|
endmenu
|
||||||
|
|
||||||
menu "Power Off"
|
menu "Power Off"
|
||||||
source "$APPSDIR/system/poweroff/Kconfig"
|
source "$APPSDIR/system/poweroff/Kconfig"
|
||||||
endmenu
|
endmenu
|
||||||
|
|
|
@ -66,6 +66,10 @@ ifeq ($(CONFIG_SYSTEM_NXPLAYER),y)
|
||||||
CONFIGURED_APPS += system/nxplayer
|
CONFIGURED_APPS += system/nxplayer
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_SYSTEM_PRUN),y)
|
||||||
|
CONFIGURED_APPS += sysem/prun
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_SYSTEM_RAMTEST),y)
|
ifeq ($(CONFIG_SYSTEM_RAMTEST),y)
|
||||||
CONFIGURED_APPS += system/ramtest
|
CONFIGURED_APPS += system/ramtest
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -3,12 +3,20 @@
|
||||||
# see misc/tools/kconfig-language.txt.
|
# see misc/tools/kconfig-language.txt.
|
||||||
#
|
#
|
||||||
|
|
||||||
config INTERPRETERS_PRUN
|
config SYSTEM_PRUN
|
||||||
bool "Pascal P-Code interpreter"
|
bool "Pascal P-Code interpreter"
|
||||||
default n
|
default n
|
||||||
depends on INTERPRETERS_PCODE
|
depends on INTERPRETERS_PCODE
|
||||||
---help---
|
---help---
|
||||||
Build the Pascal P-Code interpreter / Virtual machine
|
Build the Pascal P-Code interpreter / Virtual machine
|
||||||
|
|
||||||
if INTERPRETERS_PRUN
|
if SYSTEM_PRUN
|
||||||
|
|
||||||
|
config SYSTEM_PEXEC
|
||||||
|
bool "Pascal P-Code command"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Generates an NSH built-in task that may be used to execute P-Code
|
||||||
|
from the NSH command line.
|
||||||
|
|
||||||
endif
|
endif
|
|
@ -1,5 +1,5 @@
|
||||||
############################################################################
|
############################################################################
|
||||||
# apps/interpreters/prun/Makefile
|
# apps/system/prun/Makefile
|
||||||
#
|
#
|
||||||
# Copyright (C) 2014 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2014 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
|
@ -44,7 +44,7 @@
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <debug.h>
|
#include <debug.h>
|
||||||
|
|
||||||
#include <apps/interpreters/prun.h>
|
#include <apps/prun.h>
|
||||||
|
|
||||||
#include "pexec.h"
|
#include "pexec.h"
|
||||||
#include "pedefs.h"
|
#include "pedefs.h"
|
|
@ -72,7 +72,7 @@ endif
|
||||||
config PCODE
|
config PCODE
|
||||||
bool "Support P-Code Applications"
|
bool "Support P-Code Applications"
|
||||||
default n
|
default n
|
||||||
depends on INTERPRETERS_PCODE && INTERPRETERS_PRUN && (!NUTTX_KERNEL || EXPERIMENTAL)
|
depends on INTERPRETERS_PCODE && SYSTEM_PRUN && (!NUTTX_KERNEL || EXPERIMENTAL)
|
||||||
---help---
|
---help---
|
||||||
Enable support for interpreted P-Code binaries. P-Code binaries are
|
Enable support for interpreted P-Code binaries. P-Code binaries are
|
||||||
generated by the NuttX Pascal compiler.
|
generated by the NuttX Pascal compiler.
|
||||||
|
|
|
@ -74,6 +74,10 @@ Here is a simple test configuration using the NuttX simulator:
|
||||||
|
|
||||||
CONFIG_INTERPRETERS_PCODE=y
|
CONFIG_INTERPRETERS_PCODE=y
|
||||||
|
|
||||||
|
And the P-Code runtime support:
|
||||||
|
|
||||||
|
CONFIG_SYSTEM_PRUN=y
|
||||||
|
|
||||||
This enables building the PCODE binary format
|
This enables building the PCODE binary format
|
||||||
|
|
||||||
CONFIG_PCODE=y
|
CONFIG_PCODE=y
|
||||||
|
|
|
@ -47,7 +47,7 @@
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <debug.h>
|
#include <debug.h>
|
||||||
|
|
||||||
#include <apps/interpreters/prun.h>
|
#include <apps/prun.h>
|
||||||
|
|
||||||
#include <nuttx/kmalloc.h>
|
#include <nuttx/kmalloc.h>
|
||||||
#include <nuttx/poff.h>
|
#include <nuttx/poff.h>
|
||||||
|
|
Loading…
Reference in New Issue