The configure script now generates makefile for user plugins if directory

exists. Updated the user plugins example patch.
This commit is contained in:
Volker Ruppert 2017-01-08 09:34:19 +00:00
parent 111158750d
commit 9916e37819
3 changed files with 30 additions and 30 deletions

9
bochs/configure vendored
View File

@ -1,5 +1,5 @@
#! /bin/sh
# From configure.in Id: configure.in 13009 2016-12-28 08:34:59Z vruppert .
# From configure.in Id: configure.in 13019 2016-12-31 12:17:37Z vruppert .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69.
#
@ -21668,6 +21668,7 @@ else
fi
USER_PLUGINS_MAKEFILE=''
if test "$bx_plugins" = 1; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
@ -21739,6 +21740,9 @@ fi
PLUGIN_TARGET_2=plugins_gcc
INSTALL_PLUGINS_VAR=install_libtool_plugins
NONPLUGIN_GUI_LINK_OPTS=''
if test -d user_plugins; then
USER_PLUGINS_MAKEFILE='user_plugins/Makefile'
fi
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
@ -25941,7 +25945,7 @@ fi
ac_config_files="$ac_config_files Makefile iodev/Makefile iodev/display/Makefile iodev/hdimage/Makefile iodev/usb/Makefile iodev/network/Makefile iodev/sound/Makefile bx_debug/Makefile bios/Makefile cpu/Makefile cpu/avx/Makefile cpu/cpudb/Makefile cpu/fpu/Makefile memory/Makefile gui/Makefile disasm/Makefile ${INSTRUMENT_DIR}/Makefile misc/Makefile doc/docbook/Makefile build/linux/bochs-dlx bxversion.h bxversion.rc build/macosx/Info.plist build/win32/nsis/Makefile build/win32/nsis/bochs.nsi host/linux/pcidev/Makefile"
ac_config_files="$ac_config_files Makefile iodev/Makefile iodev/display/Makefile iodev/hdimage/Makefile iodev/usb/Makefile iodev/network/Makefile iodev/sound/Makefile bx_debug/Makefile bios/Makefile cpu/Makefile cpu/avx/Makefile cpu/cpudb/Makefile cpu/fpu/Makefile memory/Makefile gui/Makefile disasm/Makefile ${INSTRUMENT_DIR}/Makefile misc/Makefile doc/docbook/Makefile build/linux/bochs-dlx bxversion.h bxversion.rc build/macosx/Info.plist build/win32/nsis/Makefile build/win32/nsis/bochs.nsi host/linux/pcidev/Makefile ${USER_PLUGINS_MAKEFILE}"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@ -26661,6 +26665,7 @@ do
"build/win32/nsis/Makefile") CONFIG_FILES="$CONFIG_FILES build/win32/nsis/Makefile" ;;
"build/win32/nsis/bochs.nsi") CONFIG_FILES="$CONFIG_FILES build/win32/nsis/bochs.nsi" ;;
"host/linux/pcidev/Makefile") CONFIG_FILES="$CONFIG_FILES host/linux/pcidev/Makefile" ;;
"${USER_PLUGINS_MAKEFILE}") CONFIG_FILES="$CONFIG_FILES ${USER_PLUGINS_MAKEFILE}" ;;
*) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
esac

View File

@ -452,6 +452,7 @@ AC_ARG_ENABLE(plugins,
]
)
USER_PLUGINS_MAKEFILE=''
if test "$bx_plugins" = 1; then
AC_MSG_RESULT(yes)
AC_DEFINE(BX_PLUGINS, 1)
@ -476,6 +477,9 @@ if test "$bx_plugins" = 1; then
PLUGIN_TARGET_2=plugins_gcc
INSTALL_PLUGINS_VAR=install_libtool_plugins
NONPLUGIN_GUI_LINK_OPTS=''
if test -d user_plugins; then
USER_PLUGINS_MAKEFILE='user_plugins/Makefile'
fi
else
AC_MSG_RESULT(no)
bx_plugins=0
@ -3190,7 +3194,7 @@ AC_OUTPUT(Makefile iodev/Makefile iodev/display/Makefile iodev/hdimage/Makefile
disasm/Makefile ${INSTRUMENT_DIR}/Makefile misc/Makefile \
doc/docbook/Makefile build/linux/bochs-dlx bxversion.h bxversion.rc \
build/macosx/Info.plist build/win32/nsis/Makefile \
build/win32/nsis/bochs.nsi host/linux/pcidev/Makefile)
build/win32/nsis/bochs.nsi host/linux/pcidev/Makefile ${USER_PLUGINS_MAKEFILE})
# Create some subdirectories for when you run configure from some other
# directory (part #2).

View File

@ -1,7 +1,7 @@
----------------------------------------------------------------------
Patch name: patch.example-user-plugin
Author: Volker Ruppert
Updated: 10 May 2014
Updated: 8 Jan 2017
Status: Demo
Detailed description:
@ -21,29 +21,20 @@ Detailed description:
Patch was created with:
diff -u
Apply patch to what version:
svn revision 12321 (May 10, 2014)
svn revision 13026 (Jan 8, 2017)
Instructions:
To patch, go to main bochs directory.
Type "patch -p0 < THIS_PATCH_FILE".
Regenerate the configure script and compile Bochs as usual
cd user-plugin
Configure and compile Bochs as usual
cd user-plugins
make
make install
----------------------------------------------------------------------
diff -urN ../bochs/configure.in ./configure.in
--- ../bochs/configure.in 2014-05-03 12:58:15.019241391 +0200
+++ ./configure.in 2014-05-10 09:02:22.875225895 +0200
@@ -2981,4 +2981,4 @@
${INSTRUMENT_DIR}/Makefile misc/Makefile doc/docbook/Makefile \
build/linux/bochs-dlx bxversion.h bxversion.rc build/macosx/Info.plist \
build/win32/nsis/Makefile build/win32/nsis/bochs.nsi \
- host/linux/pcidev/Makefile)
+ host/linux/pcidev/Makefile user-plugin/Makefile)
diff -urN ../bochs/user-plugin/Makefile.in ./user-plugin/Makefile.in
--- ../bochs/user-plugin/Makefile.in 1970-01-01 01:00:00.000000000 +0100
+++ ./user-plugin/Makefile.in 2014-05-10 09:10:19.461987931 +0200
diff ../bochs/user_plugins/Makefile.in ./user_plugins/Makefile.in
--- ../bochs/user_plugins/Makefile.in 1970-01-01 01:00:00.000000000 +0100
+++ ./user_plugins/Makefile.in 2017-01-08 10:13:31.383971780 +0100
@@ -0,0 +1,112 @@
+# Copyright (C) 2009-2014 Volker Ruppert
+# Copyright (C) 2009-2017 Volker Ruppert
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
@ -147,19 +138,19 @@ diff -urN ../bochs/user-plugin/Makefile.in ./user-plugin/Makefile.in
+###########################################
+testdev.o: testdev.@CPP_SUFFIX@ ../iodev/iodev.h ../bochs.h ../config.h ../osdep.h \
+ ../bx_debug/debug.h ../config.h ../osdep.h ../bxversion.h \
+ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \
+ ../gui/siminterface.h ../memory/memory-bochs.h ../pc_system.h ../plugin.h \
+ ../extplugin.h ../ltdl-bochs.h ../gui/gui.h ../gui/textconfig.h \
+ ../gui/keymap.h ../instrument/stubs/instrument.h testdev.h
+testdev.lo: testdev.@CPP_SUFFIX@ ../iodev/iodev.h ../bochs.h ../config.h ../osdep.h \
+ ../bx_debug/debug.h ../config.h ../osdep.h ../bxversion.h \
+ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \
+ ../gui/siminterface.h ../memory/memory-bochs.h ../pc_system.h ../plugin.h \
+ ../extplugin.h ../ltdl-bochs.h ../gui/gui.h ../gui/textconfig.h \
+ ../gui/keymap.h ../instrument/stubs/instrument.h testdev.h
diff -urN ../bochs/user-plugin/testdev.cc ./user-plugin/testdev.cc
--- ../bochs/user-plugin/testdev.cc 1970-01-01 01:00:00.000000000 +0100
+++ ./user-plugin/testdev.cc 2014-05-10 10:01:44.771282429 +0200
diff ../bochs/user_plugins/testdev.cc ./user_plugins/testdev.cc
--- ../bochs/user_plugins/testdev.cc 1970-01-01 01:00:00.000000000 +0100
+++ ./user_plugins/testdev.cc 2017-01-08 10:11:24.939116573 +0100
@@ -0,0 +1,123 @@
+// Copyright (C) 2009-2014 Volker Ruppert
+// Copyright (C) 2009-2017 Volker Ruppert
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
@ -282,11 +273,11 @@ diff -urN ../bochs/user-plugin/testdev.cc ./user-plugin/testdev.cc
+
+ BX_USER_THIS s.reg0 = value;
+}
diff -urN ../bochs/user-plugin/testdev.h ./user-plugin/testdev.h
--- ../bochs/user-plugin/testdev.h 1970-01-01 01:00:00.000000000 +0100
+++ ./user-plugin/testdev.h 2014-05-10 09:27:23.575831428 +0200
diff ../bochs/user_plugins/testdev.h ./user_plugins/testdev.h
--- ../bochs/user_plugins/testdev.h 1970-01-01 01:00:00.000000000 +0100
+++ ./user_plugins/testdev.h 2017-01-08 10:11:24.939116573 +0100
@@ -0,0 +1,40 @@
+// Copyright (C) 2009-2014 Volker Ruppert
+// Copyright (C) 2009-2017 Volker Ruppert
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public