This commit is contained in:
QL 2018-04-13 16:27:01 -04:00
parent d8858a0994
commit f327482e65
34 changed files with 2546 additions and 2550 deletions

View File

@ -1,13 +1,13 @@
##############################################################################
# Product: Makefile for QUTEST self-test; QP/C on Win32 host
# Last updated for version 6.1.1
# Last updated on 2018-02-18
# Last updated for version 6.2.0
# Last updated on 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
# innovating embedded systems
#
# Copyright (C) Quantum Leaps, LLC. All rights reserved.
# Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
#
# This program is open source software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as published
@ -34,14 +34,15 @@
#
# examples of invoking this Makefile:
# make # make and run the tests in the current directory
# make TESTS=philo*.tcl # make and run the selected tests in the current directory
# make TESTS=test*.tcl # make and run the selected tests in the curr. dir.
# make HOST=localhost:7705 # connect to host:port
# make norun # only make but not run the tests
# make clean # cleanup the build
#
# NOTE:
# To use this Makefile on Windows, you will need the GNU make utility, which
# is included in the Qtools collection for Windows, see:
# http://sourceforge.net/projects/qpc/files/Qtools/
# http://sourceforge.net/projects/qpc/files/QTools/
#
#-----------------------------------------------------------------------------
@ -70,12 +71,10 @@ QP_PORT_DIR := $(QPC)/ports/win32-qutest
# list of all source directories used by this project
VPATH = \
. \
..
# list of all include directories needed by this project
INCLUDES = \
-I. \
-I.. \
-I$(QPC)/include
#-----------------------------------------------------------------------------
@ -96,7 +95,6 @@ LIB_DIRS :=
LIBS :=
# defines...
# QP_API_VERSION controls the QP API compatibility; 9999 means the latest API
DEFINES :=
#-----------------------------------------------------------------------------
@ -183,7 +181,7 @@ $(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
$(LINK) $(LINKFLAGS) $(LIB_DIRS) -o $@ $^ $(BIN_DIR)/qstamp.o $(LIBS)
run : $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE) $(HOST)
$(BIN_DIR)/%.d : %.cpp
$(CPP) -MM -MT $(@:.d=.o) $(CPPFLAGS) $< > $@
@ -214,12 +212,12 @@ clean :
show :
@echo PROJECT = $(PROJECT)
@echo TESTS = $(TESTS)
@echo TARGET_EXE = $(TARGET_EXE)
@echo CONF = $(CONF)
@echo VPATH = $(VPATH)
@echo C_SRCS = $(C_SRCS)
@echo CPP_SRCS = $(CPP_SRCS)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo C_OBJS_EXT = $(C_OBJS_EXT)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo CPP_DEPS_EXT = $(CPP_DEPS_EXT)
@ -227,4 +225,8 @@ show :
@echo LIB_DIRS = $(LIB_DIRS)
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QTOOLS = $(QTOOLS)
@echo QUTEST = $(QUTEST)
@echo TESTS = $(TESTS)
@echo HOST = $(HOST)

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for EMF32-SLSTK3401A, QUTEST, GNU-ARM
# Last Updated for Version: 6.1.2
# Date of the Last Update: 2018-03-12
# Last Updated for Version: 6.2.0
# Date of the Last Update: 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,6 +35,7 @@
# examples of invoking this Makefile:
# make -fefm32-slstk3401a.mak # make and run the tests in the current directory
# make -fefm32-slstk3401a.mak TESTS=philo*.tcl # make and run the selected tests
# make -fefm32-slstk3401a.mak HOST=localhost:7705 # connect to host:port
# make -fefm32-slstk3401a.mak norun # only make but not run the tests
# make -fefm32-slstk3401a.mak clean # cleanup the build
#
@ -70,8 +71,6 @@ QP_PORT_DIR := $(QPC)/ports/arm-cm/qutest
# list of all source directories used by this project
VPATH = \
.. \
../.. \
../$(TARGET) \
$(QPC)/src/qf \
$(QPC)/src/qs \
@ -82,7 +81,6 @@ VPATH = \
# list of all include directories needed by this project
INCLUDES = \
-I. \
-I.. \
-I../$(TARGET) \
-I$(QPC)/include \
-I$(QPC)/src \
@ -276,7 +274,7 @@ flash :
$(JLINK) -device EFM32PG1B200F256GM48 $(TARGET).jlink
run : $(TARGET_BIN)
$(TCLSH) $(QUTEST) $(TESTS)
$(TCLSH) $(QUTEST) $(TESTS) "" $(HOST)
$(BIN_DIR)/%.d : %.c
$(CC) -MM -MT $(@:.d=.o) $(CFLAGS) $< > $@
@ -329,3 +327,5 @@ show :
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QUTEST = $(QUTEST)
@echo HOST = $(HOST)

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for EK-TM4C123GXL, QUTEST, GNU-ARM
# Last Updated for Version: 6.1.2
# Date of the Last Update: 2018-03-12
# Last Updated for Version: 6.2.0
# Date of the Last Update: 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,6 +35,7 @@
# examples of invoking this Makefile:
# make -fek-tm4c123gxl.mak # make and run the tests in the current directory
# make -fek-tm4c123gxl.mak TESTS=philo*.tcl # make and run the selected tests
# make -fek-tm4c123gxl.mak HOST=localhost:7705 # connect to host:port
# make -fek-tm4c123gxl.mak norun # only make but not run the tests
# make -fek-tm4c123gxl.mak clean # cleanup the build
#
@ -70,8 +71,6 @@ QP_PORT_DIR := $(QPC)/ports/arm-cm/qutest
# list of all source directories used by this project
VPATH = \
.. \
../.. \
../$(TARGET) \
$(QPC)/src/qf \
$(QPC)/src/qs \
@ -82,7 +81,6 @@ VPATH = \
# list of all include directories needed by this project
INCLUDES = \
-I. \
-I.. \
-I../$(TARGET) \
-I$(QPC)/include \
-I$(QPC)/src \
@ -276,7 +274,7 @@ flash :
echo Press RESET button on the EK-TM4C123GXL board
run : $(TARGET_BIN)
$(TCLSH) $(QUTEST) $(TESTS)
$(TCLSH) $(QUTEST) $(TESTS) "" $(HOST)
$(BIN_DIR)/%.d : %.c
$(CC) -MM -MT $(@:.d=.o) $(CFLAGS) $< > $@
@ -329,3 +327,5 @@ show :
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QUTEST = $(QUTEST)
@echo HOST = $(HOST)

View File

@ -1,13 +1,13 @@
##############################################################################
# Product: Makefile for QUTEST self-test; QP/C on Win32 host
# Last updated for version 6.1.1
# Last updated on 2018-02-18
# Last updated for version 6.2.0
# Last updated on 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
# innovating embedded systems
#
# Copyright (C) Quantum Leaps, LLC. All rights reserved.
# Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
#
# This program is open source software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as published
@ -34,14 +34,15 @@
#
# examples of invoking this Makefile:
# make # make and run the tests in the current directory
# make TESTS=philo*.tcl # make and run the selected tests in the current directory
# make TESTS=test*.tcl # make and run the selected tests in the curr. dir.
# make HOST=localhost:7705 # connect to host:port
# make norun # only make but not run the tests
# make clean # cleanup the build
#
# NOTE:
# To use this Makefile on Windows, you will need the GNU make utility, which
# is included in the Qtools collection for Windows, see:
# http://sourceforge.net/projects/qpc/files/Qtools/
# http://sourceforge.net/projects/qpc/files/QTools/
#
#-----------------------------------------------------------------------------
@ -70,12 +71,10 @@ QP_PORT_DIR := $(QPC)/ports/win32-qutest
# list of all source directories used by this project
VPATH = \
. \
..
# list of all include directories needed by this project
INCLUDES = \
-I. \
-I.. \
-I$(QPC)/include
#-----------------------------------------------------------------------------
@ -94,7 +93,6 @@ LIB_DIRS :=
LIBS :=
# defines...
# QP_API_VERSION controls the QP API compatibility; 9999 means the latest API
DEFINES :=
#-----------------------------------------------------------------------------
@ -181,7 +179,7 @@ $(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
$(LINK) $(LINKFLAGS) $(LIB_DIRS) -o $@ $^ $(BIN_DIR)/qstamp.o $(LIBS)
run : $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE) $(HOST)
$(BIN_DIR)/%.d : %.cpp
$(CPP) -MM -MT $(@:.d=.o) $(CPPFLAGS) $< > $@
@ -212,12 +210,12 @@ clean :
show :
@echo PROJECT = $(PROJECT)
@echo TESTS = $(TESTS)
@echo TARGET_EXE = $(TARGET_EXE)
@echo CONF = $(CONF)
@echo VPATH = $(VPATH)
@echo C_SRCS = $(C_SRCS)
@echo CPP_SRCS = $(CPP_SRCS)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo C_OBJS_EXT = $(C_OBJS_EXT)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo CPP_DEPS_EXT = $(CPP_DEPS_EXT)
@ -225,4 +223,8 @@ show :
@echo LIB_DIRS = $(LIB_DIRS)
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QTOOLS = $(QTOOLS)
@echo QUTEST = $(QUTEST)
@echo TESTS = $(TESTS)
@echo HOST = $(HOST)

View File

@ -1,13 +1,13 @@
##############################################################################
# Product: Makefile for QUTEST self-test; QP/C on Win32 host
# Last updated for version 6.1.1
# Last updated on 2018-02-18
# Last updated for version 6.2.0
# Last updated on 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
# innovating embedded systems
#
# Copyright (C) Quantum Leaps, LLC. All rights reserved.
# Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
#
# This program is open source software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as published
@ -34,14 +34,15 @@
#
# examples of invoking this Makefile:
# make # make and run the tests in the current directory
# make TESTS=philo*.tcl # make and run the selected tests in the current directory
# make TESTS=test*.tcl # make and run the selected tests in the curr. dir.
# make HOST=localhost:7705 # connect to host:port
# make norun # only make but not run the tests
# make clean # cleanup the build
#
# NOTE:
# To use this Makefile on Windows, you will need the GNU make utility, which
# is included in the Qtools collection for Windows, see:
# http://sourceforge.net/projects/qpc/files/Qtools/
# http://sourceforge.net/projects/qpc/files/QTools/
#
#-----------------------------------------------------------------------------
@ -70,12 +71,10 @@ QP_PORT_DIR := $(QPC)/ports/win32-qutest
# list of all source directories used by this project
VPATH = \
. \
..
# list of all include directories needed by this project
INCLUDES = \
-I. \
-I.. \
-I$(QPC)/include
#-----------------------------------------------------------------------------
@ -93,7 +92,6 @@ LIB_DIRS :=
LIBS :=
# defines...
# QP_API_VERSION controls the QP API compatibility; 9999 means the latest API
DEFINES :=
#-----------------------------------------------------------------------------
@ -180,7 +178,7 @@ $(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
$(LINK) $(LINKFLAGS) $(LIB_DIRS) -o $@ $^ $(BIN_DIR)/qstamp.o $(LIBS)
run : $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE) $(HOST)
$(BIN_DIR)/%.d : %.cpp
$(CPP) -MM -MT $(@:.d=.o) $(CPPFLAGS) $< > $@
@ -211,12 +209,12 @@ clean :
show :
@echo PROJECT = $(PROJECT)
@echo TESTS = $(TESTS)
@echo TARGET_EXE = $(TARGET_EXE)
@echo CONF = $(CONF)
@echo VPATH = $(VPATH)
@echo C_SRCS = $(C_SRCS)
@echo CPP_SRCS = $(CPP_SRCS)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo C_OBJS_EXT = $(C_OBJS_EXT)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo CPP_DEPS_EXT = $(CPP_DEPS_EXT)
@ -224,4 +222,8 @@ show :
@echo LIB_DIRS = $(LIB_DIRS)
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QTOOLS = $(QTOOLS)
@echo QUTEST = $(QUTEST)
@echo TESTS = $(TESTS)
@echo HOST = $(HOST)

View File

@ -1,13 +1,13 @@
##############################################################################
# Product: Makefile for QUTEST self-test; QP/C on Win32 host
# Last updated for version 6.2.0
# Last updated on 2018-03-10
# Last updated on 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
# innovating embedded systems
#
# Copyright (C) Quantum Leaps, LLC. All rights reserved.
# Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
#
# This program is open source software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as published
@ -31,16 +31,18 @@
# https://www.state-machine.com
# mailto:info@state-machine.com
##############################################################################
#
# examples of invoking this Makefile:
# make # make and run the tests in the current directory
# make TESTS=test*.tcl # make and run the selected tests in the curr. dir.
# make HOST=localhost:7705 # connect to host:port
# make norun # only make but not run the tests
# make clean # cleanup the build
#
# NOTE:
# To use this Makefile on Windows, you will need the GNU make utility, which
# is included in the Qtools collection for Windows, see:
# http://sourceforge.net/projects/qpc/files/Qtools/
# http://sourceforge.net/projects/qpc/files/QTools/
#
#-----------------------------------------------------------------------------
@ -178,7 +180,7 @@ $(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
$(LINK) $(LINKFLAGS) $(LIB_DIRS) -o $@ $^ $(BIN_DIR)/qstamp.o $(LIBS)
run : $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE) $(HOST)
$(BIN_DIR)/%.d : %.cpp
$(CPP) -MM -MT $(@:.d=.o) $(CPPFLAGS) $< > $@
@ -209,12 +211,12 @@ clean :
show :
@echo PROJECT = $(PROJECT)
@echo TESTS = $(TESTS)
@echo TARGET_EXE = $(TARGET_EXE)
@echo CONF = $(CONF)
@echo VPATH = $(VPATH)
@echo C_SRCS = $(C_SRCS)
@echo CPP_SRCS = $(CPP_SRCS)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo C_OBJS_EXT = $(C_OBJS_EXT)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo CPP_DEPS_EXT = $(CPP_DEPS_EXT)
@ -222,5 +224,8 @@ show :
@echo LIB_DIRS = $(LIB_DIRS)
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QTOOLS = $(QTOOLS)
@echo QUTEST = $(QUTEST)
@echo TESTS = $(TESTS)
@echo HOST = $(HOST)

View File

@ -1,61 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<session version="4.1.2">
<item name="license"></item>
<group name="locked"/>
<group name="settings">
<item name="tabs">1</item>
<item name="windows">0</item>
<item name="grid">3</item>
<item name="backups">0</item>
</group>
<group name="windows">
<item id="AOs::Philo::SM">0,0,575,407,*</item>
</group>
<group name="search">
<item name="options">2032128</item>
<item name="replace">0</item>
</group>
<group name="vars"/>
<group name="tools">
<group name="tool">
<item name="icon">0</item>
<item name="title"></item>
<item name="command"></item>
<item name="args"></item>
<item name="dir"></item>
<item name="options">0</item>
</group>
<group name="tool">
<item name="icon">0</item>
<item name="title"></item>
<item name="command"></item>
<item name="args"></item>
<item name="dir"></item>
<item name="options">0</item>
</group>
<group name="tool">
<item name="icon">0</item>
<item name="title"></item>
<item name="command"></item>
<item name="args"></item>
<item name="dir"></item>
<item name="options">0</item>
</group>
<group name="tool">
<item name="icon">0</item>
<item name="title"></item>
<item name="command"></item>
<item name="args"></item>
<item name="dir"></item>
<item name="options">0</item>
</group>
<group name="tool">
<item name="icon">0</item>
<item name="title"></item>
<item name="command"></item>
<item name="args"></item>
<item name="dir"></item>
<item name="options">0</item>
</group>
</group>
</session>

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for QUTEST DPP-test; QP/C on Win32 host
# Last updated for version 6.2.0
# Last updated on 2018-03-16
# Last updated on 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,13 +35,14 @@
# examples of invoking this Makefile:
# make # make and run the tests in the current directory
# make TESTS=test*.tcl # make and run the selected tests in the curr. dir.
# make HOST=localhost:7705 # connect to host:port
# make norun # only make but not run the tests
# make clean # cleanup the build
#
# NOTE:
# To use this Makefile on Windows, you will need the GNU make utility, which
# is included in the Qtools collection for Windows, see:
# http://sourceforge.net/projects/qpc/files/Qtools/
# http://sourceforge.net/projects/qpc/files/QTools/
#
#-----------------------------------------------------------------------------
@ -182,7 +183,7 @@ $(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
$(LINK) $(LINKFLAGS) $(LIB_DIRS) -o $@ $^ $(BIN_DIR)/qstamp.o $(LIBS)
run : $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE) $(HOST)
$(BIN_DIR)/%.d : %.cpp
$(CPP) -MM -MT $(@:.d=.o) $(CPPFLAGS) $< > $@
@ -226,6 +227,8 @@ show :
@echo LIB_DIRS = $(LIB_DIRS)
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QTOOLS = $(QTOOLS)
@echo QUTEST = $(QUTEST)
@echo TESTS = $(TESTS)
@echo HOST = $(HOST)

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for EMF32-SLSTK3401A, QUTEST, GNU-ARM
# Last Updated for Version: 6.2.0
# Date of the Last Update: 2018-03-19
# Date of the Last Update: 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,6 +35,7 @@
# examples of invoking this Makefile:
# make -fefm32-slstk3401a.mak # make and run the tests in the current directory
# make -fefm32-slstk3401a.mak TESTS=philo*.tcl # make and run the selected tests
# make -fefm32-slstk3401a.mak HOST=localhost:7705 # connect to host:port
# make -fefm32-slstk3401a.mak norun # only make but not run the tests
# make -fefm32-slstk3401a.mak clean # cleanup the build
#
@ -267,7 +268,7 @@ flash :
$(JLINK) -device EFM32PG1B200F256GM48 $(TARGET).jlink
run : $(TARGET_BIN)
$(TCLSH) $(QUTEST) $(TESTS)
$(TCLSH) $(QUTEST) $(TESTS) "" $(HOST)
$(BIN_DIR)/%.d : %.c
$(CC) -MM -MT $(@:.d=.o) $(CFLAGS) $< > $@
@ -320,3 +321,5 @@ show :
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QUTEST = $(QUTEST)
@echo HOST = $(HOST)

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for EK-TM4C123GXL, QUTEST, GNU-ARM
# Last Updated for Version: 6.2.0
# Date of the Last Update: 2018-03-19
# Date of the Last Update: 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,13 +35,14 @@
# examples of invoking this Makefile:
# make -fek-tm4c123gxl.mak # make and run the tests in the current directory
# make -fek-tm4c123gxl.mak TESTS=philo*.tcl # make and run the selected tests
# make -fek-tm4c123gxl.mak HOST=localhost:7705 # connect to host:port
# make -fek-tm4c123gxl.mak norun # only make but not run the tests
# make -fek-tm4c123gxl.mak clean # cleanup the build
#
# NOTE:
# To use this Makefile on Windows, you will need the GNU make utility, which
# is included in the Qtools collection for Windows, see:
# http://sourceforge.net/projects/qpc/files/Qtools/
# http://sourceforge.net/projects/qpc/files/QTools/
#
#-----------------------------------------------------------------------------
@ -266,7 +267,7 @@ flash :
echo Press RESET button on the EK-TM4C123GXL board
run : $(TARGET_BIN)
$(TCLSH) $(QUTEST) $(TESTS)
$(TCLSH) $(QUTEST) $(TESTS) "" $(HOST)
$(BIN_DIR)/%.d : %.c
$(CC) -MM -MT $(@:.d=.o) $(CFLAGS) $< > $@
@ -319,3 +320,5 @@ show :
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QUTEST = $(QUTEST)
@echo HOST = $(HOST)

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for QUTEST DPP-test; QP/C on POSIX *Host*
# Last updated for version 6.2.0
# Last updated on 2018-03-16
# Last updated on 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,6 +35,7 @@
# examples of invoking this Makefile:
# make -f posix_host.mak # make and run the tests in the current directory
# make -f posix_host.mak TESTS=philo*.tcl # make and run the selected tests
# make -f posix_host.mak HOST=localhost:7705 # connect to host:port
# make -f posix_host.mak norun # only make but not run the tests
# make -f posix_host.mak clean # cleanup the build
#
@ -194,7 +195,7 @@ $(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
$(LINK) $(LINKFLAGS) $(LIB_DIRS) -o $@ $^ $(BIN_DIR)/qstamp.o $(LIBS)
run : $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE) $(HOST)
$(BIN_DIR)/%.d : %.cpp
$(CPP) -MM -MT $(@:.d=.o) $(CPPFLAGS) $< > $@
@ -241,3 +242,4 @@ show :
@echo QTOOLS = $(QTOOLS)
@echo QUTEST = $(QUTEST)
@echo TESTS = $(TESTS)
@echo HOST = $(HOST)

View File

@ -1,13 +1,13 @@
##############################################################################
# Product: Makefile for QUTEST event test; QP/C on Win32 host
# Last updated for version 6.1.1
# Last updated on 2018-03-08
# Last updated for version 6.2.0
# Last updated on 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
# innovating embedded systems
#
# Copyright (C) Quantum Leaps, LLC. All rights reserved.
# Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
#
# This program is open source software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as published
@ -34,14 +34,15 @@
#
# examples of invoking this Makefile:
# make # make and run the tests in the current directory
# make TESTS=philo*.tcl # make and run the selected tests in the current directory
# make TESTS=test*.tcl # make and run the selected tests in the curr. dir.
# make HOST=localhost:7705 # connect to host:port
# make norun # only make but not run the tests
# make clean # cleanup the build
#
# NOTE:
# To use this Makefile on Windows, you will need the GNU make utility, which
# is included in the Qtools collection for Windows, see:
# http://sourceforge.net/projects/qpc/files/Qtools/
# http://sourceforge.net/projects/qpc/files/QTools/
#
#-----------------------------------------------------------------------------
@ -70,12 +71,10 @@ QP_PORT_DIR := $(QPC)/ports/win32-qutest
# list of all source directories used by this project
VPATH = \
. \
..
# list of all include directories needed by this project
INCLUDES = \
-I. \
-I.. \
-I$(QPC)/include
#-----------------------------------------------------------------------------
@ -95,7 +94,7 @@ LIBS :=
# defines...
# QP_API_VERSION controls the QP API compatibility; 9999 means the latest API
DEFINES :=
DEFINES := -DQP_API_VERSION=9999
#-----------------------------------------------------------------------------
# MinGW toolset (NOTE: assumed to be on your PATH)
@ -181,7 +180,7 @@ $(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
$(LINK) $(LINKFLAGS) $(LIB_DIRS) -o $@ $^ $(BIN_DIR)/qstamp.o $(LIBS)
run : $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE) $(HOST)
$(BIN_DIR)/%.d : %.cpp
$(CPP) -MM -MT $(@:.d=.o) $(CPPFLAGS) $< > $@
@ -212,12 +211,12 @@ clean :
show :
@echo PROJECT = $(PROJECT)
@echo TESTS = $(TESTS)
@echo TARGET_EXE = $(TARGET_EXE)
@echo CONF = $(CONF)
@echo VPATH = $(VPATH)
@echo C_SRCS = $(C_SRCS)
@echo CPP_SRCS = $(CPP_SRCS)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo C_OBJS_EXT = $(C_OBJS_EXT)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo CPP_DEPS_EXT = $(CPP_DEPS_EXT)
@ -225,4 +224,8 @@ show :
@echo LIB_DIRS = $(LIB_DIRS)
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QTOOLS = $(QTOOLS)
@echo QUTEST = $(QUTEST)
@echo TESTS = $(TESTS)
@echo HOST = $(HOST)

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for EK-TM4C123GXL, QUTEST, GNU-ARM
# Last Updated for Version: 6.2.0
# Date of the Last Update: 2018-03-19
# Date of the Last Update: 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,6 +35,7 @@
# examples of invoking this Makefile:
# make -fek-tm4c123gxl.mak # make and run the tests in the current directory
# make -fek-tm4c123gxl.mak TESTS=philo*.tcl # make and run the selected tests
# make -fek-tm4c123gxl.mak HOST=localhost:7705 # connect to host:port
# make -fek-tm4c123gxl.mak norun # only make but not run the tests
# make -fek-tm4c123gxl.mak clean # cleanup the build
#
@ -263,7 +264,7 @@ flash :
echo Press RESET button on the EK-TM4C123GXL board
run : $(TARGET_BIN)
$(TCLSH) $(QUTEST) $(TESTS)
$(TCLSH) $(QUTEST) $(TESTS) "" $(HOST)
$(BIN_DIR)/%.d : %.c
$(CC) -MM -MT $(@:.d=.o) $(CFLAGS) $< > $@
@ -316,3 +317,5 @@ show :
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QUTEST = $(QUTEST)
@echo HOST = $(HOST)

View File

@ -1,13 +1,13 @@
##############################################################################
# Product: Makefile for QUTEST self-test; QP/C on Win32 host
# Last updated for version 6.1.1
# Last updated on 2018-02-18
# Last updated for version 6.2.0
# Last updated on 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
# innovating embedded systems
#
# Copyright (C) Quantum Leaps, LLC. All rights reserved.
# Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
#
# This program is open source software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as published
@ -34,14 +34,15 @@
#
# examples of invoking this Makefile:
# make # make and run the tests in the current directory
# make TESTS=philo*.tcl # make and run the selected tests in the current directory
# make TESTS=test*.tcl # make and run the selected tests in the curr. dir.
# make HOST=localhost:7705 # connect to host:port
# make norun # only make but not run the tests
# make clean # cleanup the build
#
# NOTE:
# To use this Makefile on Windows, you will need the GNU make utility, which
# is included in the Qtools collection for Windows, see:
# http://sourceforge.net/projects/qpc/files/Qtools/
# http://sourceforge.net/projects/qpc/files/QTools/
#
#-----------------------------------------------------------------------------
@ -70,12 +71,10 @@ QP_PORT_DIR := $(QPC)/ports/win32-qutest
# list of all source directories used by this project
VPATH = \
. \
..
# list of all include directories needed by this project
INCLUDES = \
-I. \
-I.. \
-I$(QPC)/include
#-----------------------------------------------------------------------------
@ -95,7 +94,7 @@ LIBS :=
# defines...
# QP_API_VERSION controls the QP API compatibility; 9999 means the latest API
DEFINES :=
DEFINES := -DQP_API_VERSION=9999
#-----------------------------------------------------------------------------
# MinGW toolset (NOTE: assumed to be on your PATH)
@ -181,7 +180,7 @@ $(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
$(LINK) $(LINKFLAGS) $(LIB_DIRS) -o $@ $^ $(BIN_DIR)/qstamp.o $(LIBS)
run : $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE) $(HOST)
$(BIN_DIR)/%.d : %.cpp
$(CPP) -MM -MT $(@:.d=.o) $(CPPFLAGS) $< > $@
@ -212,12 +211,12 @@ clean :
show :
@echo PROJECT = $(PROJECT)
@echo TESTS = $(TESTS)
@echo TARGET_EXE = $(TARGET_EXE)
@echo CONF = $(CONF)
@echo VPATH = $(VPATH)
@echo C_SRCS = $(C_SRCS)
@echo CPP_SRCS = $(CPP_SRCS)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo C_OBJS_EXT = $(C_OBJS_EXT)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo CPP_DEPS_EXT = $(CPP_DEPS_EXT)
@ -225,4 +224,8 @@ show :
@echo LIB_DIRS = $(LIB_DIRS)
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QTOOLS = $(QTOOLS)
@echo QUTEST = $(QUTEST)
@echo TESTS = $(TESTS)
@echo HOST = $(HOST)

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for EMF32-SLSTK3401A, QUTEST, GNU-ARM
# Last Updated for Version: 6.2.0
# Date of the Last Update: 2018-03-16
# Date of the Last Update: 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,6 +35,7 @@
# examples of invoking this Makefile:
# make -fefm32-slstk3401a.mak # make and run the tests in the current directory
# make -fefm32-slstk3401a.mak TESTS=philo*.tcl # make and run the selected tests
# make -fefm32-slstk3401a.mak HOST=localhost:7705 # connect to host:port
# make -fefm32-slstk3401a.mak norun # only make but not run the tests
# make -fefm32-slstk3401a.mak clean # cleanup the build
#
@ -264,7 +265,7 @@ flash :
$(JLINK) -device EFM32PG1B200F256GM48 $(TARGET).jlink
run : $(TARGET_BIN)
$(TCLSH) $(QUTEST) $(TESTS)
$(TCLSH) $(QUTEST) $(TESTS) "" $(HOST)
$(BIN_DIR)/%.d : %.c
$(CC) -MM -MT $(@:.d=.o) $(CFLAGS) $< > $@
@ -317,3 +318,5 @@ show :
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QUTEST = $(QUTEST)
@echo HOST = $(HOST)

View File

@ -1,13 +1,13 @@
##############################################################################
# Product: Makefile for QUTEST self-test; QP/C on Win32 host
# Last updated for version 6.1.1
# Last updated on 2018-02-18
# Last updated for version 6.2.0
# Last updated on 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
# innovating embedded systems
#
# Copyright (C) Quantum Leaps, LLC. All rights reserved.
# Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
#
# This program is open source software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as published
@ -34,14 +34,15 @@
#
# examples of invoking this Makefile:
# make # make and run the tests in the current directory
# make TESTS=philo*.tcl # make and run the selected tests in the current directory
# make TESTS=test*.tcl # make and run the selected tests in the curr. dir.
# make HOST=localhost:7705 # connect to host:port
# make norun # only make but not run the tests
# make clean # cleanup the build
#
# NOTE:
# To use this Makefile on Windows, you will need the GNU make utility, which
# is included in the Qtools collection for Windows, see:
# http://sourceforge.net/projects/qpc/files/Qtools/
# http://sourceforge.net/projects/qpc/files/QTools/
#
#-----------------------------------------------------------------------------
@ -70,12 +71,10 @@ QP_PORT_DIR := $(QPC)/ports/win32-qutest
# list of all source directories used by this project
VPATH = \
. \
..
# list of all include directories needed by this project
INCLUDES = \
-I. \
-I.. \
-I$(QPC)/include
#-----------------------------------------------------------------------------
@ -95,7 +94,7 @@ LIBS :=
# defines...
# QP_API_VERSION controls the QP API compatibility; 9999 means the latest API
DEFINES :=
DEFINES := -DQP_API_VERSION=9999
#-----------------------------------------------------------------------------
# MinGW toolset (NOTE: assumed to be on your PATH)
@ -181,7 +180,7 @@ $(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
$(LINK) $(LINKFLAGS) $(LIB_DIRS) -o $@ $^ $(BIN_DIR)/qstamp.o $(LIBS)
run : $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE) $(HOST)
$(BIN_DIR)/%.d : %.cpp
$(CPP) -MM -MT $(@:.d=.o) $(CPPFLAGS) $< > $@
@ -212,12 +211,12 @@ clean :
show :
@echo PROJECT = $(PROJECT)
@echo TESTS = $(TESTS)
@echo TARGET_EXE = $(TARGET_EXE)
@echo CONF = $(CONF)
@echo VPATH = $(VPATH)
@echo C_SRCS = $(C_SRCS)
@echo CPP_SRCS = $(CPP_SRCS)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo C_OBJS_EXT = $(C_OBJS_EXT)
@echo C_DEPS_EXT = $(C_DEPS_EXT)
@echo CPP_DEPS_EXT = $(CPP_DEPS_EXT)
@ -225,4 +224,8 @@ show :
@echo LIB_DIRS = $(LIB_DIRS)
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QTOOLS = $(QTOOLS)
@echo QUTEST = $(QUTEST)
@echo TESTS = $(TESTS)
@echo HOST = $(HOST)

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for EMF32-SLSTK3401A, QUTEST, GNU-ARM
# Last Updated for Version: 6.1.2
# Date of the Last Update: 2018-03-12
# Last Updated for Version: 6.2.0
# Date of the Last Update: 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,6 +35,7 @@
# examples of invoking this Makefile:
# make -fefm32-slstk3401a.mak # make and run the tests in the current directory
# make -fefm32-slstk3401a.mak TESTS=philo*.tcl # make and run the selected tests
# make -fefm32-slstk3401a.mak HOST=localhost:7705 # connect to host:port
# make -fefm32-slstk3401a.mak norun # only make but not run the tests
# make -fefm32-slstk3401a.mak clean # cleanup the build
#
@ -264,7 +265,7 @@ flash :
$(JLINK) -device EFM32PG1B200F256GM48 $(TARGET).jlink
run : $(TARGET_BIN)
$(TCLSH) $(QUTEST) $(TESTS)
$(TCLSH) $(QUTEST) $(TESTS) "" $(HOST)
$(BIN_DIR)/%.d : %.c
$(CC) -MM -MT $(@:.d=.o) $(CFLAGS) $< > $@
@ -317,3 +318,5 @@ show :
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QUTEST = $(QUTEST)
@echo HOST = $(HOST)

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for QUTEST self-test; QP/C on Win32 host
# Last updated for version 6.2.0
# Last updated on 2018-03-16
# Last updated on 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,13 +35,14 @@
# examples of invoking this Makefile:
# make # make and run the tests in the current directory
# make TESTS=test*.tcl # make and run the selected tests in the curr. dir.
# make HOST=localhost:7705 # connect to host:port
# make norun # only make but not run the tests
# make clean # cleanup the build
#
# NOTE:
# To use this Makefile on Windows, you will need the GNU make utility, which
# is included in the Qtools collection for Windows, see:
# http://sourceforge.net/projects/qpc/files/Qtools/
# http://sourceforge.net/projects/qpc/files/QTools/
#
#-----------------------------------------------------------------------------
@ -178,7 +179,7 @@ $(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
$(LINK) $(LINKFLAGS) $(LIB_DIRS) -o $@ $^ $(BIN_DIR)/qstamp.o $(LIBS)
run : $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE) $(HOST)
$(BIN_DIR)/%.d : %.cpp
$(CPP) -MM -MT $(@:.d=.o) $(CPPFLAGS) $< > $@
@ -222,6 +223,8 @@ show :
@echo LIB_DIRS = $(LIB_DIRS)
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QTOOLS = $(QTOOLS)
@echo QUTEST = $(QUTEST)
@echo TESTS = $(TESTS)
@echo HOST = $(HOST)

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for EMF32-SLSTK3401A, QUTEST, GNU-ARM
# Last Updated for Version: 6.2.0
# Date of the Last Update: 2018-03-16
# Date of the Last Update: 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,6 +35,7 @@
# examples of invoking this Makefile:
# make -fefm32-slstk3401a.mak # make and run the tests in the current directory
# make -fefm32-slstk3401a.mak TESTS=philo*.tcl # make and run the selected tests
# make -fefm32-slstk3401a.mak HOST=localhost:7705 # connect to host:port
# make -fefm32-slstk3401a.mak norun # only make but not run the tests
# make -fefm32-slstk3401a.mak clean # cleanup the build
#
@ -263,7 +264,7 @@ flash :
$(JLINK) -device EFM32PG1B200F256GM48 $(TARGET).jlink
run : $(TARGET_BIN)
$(TCLSH) $(QUTEST) $(TESTS)
$(TCLSH) $(QUTEST) $(TESTS) "" $(HOST)
$(BIN_DIR)/%.d : %.c
$(CC) -MM -MT $(@:.d=.o) $(CFLAGS) $< > $@
@ -316,3 +317,5 @@ show :
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QUTEST = $(QUTEST)
@echo HOST = $(HOST)

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for EK-TM4C123GXL, QUTEST, GNU-ARM
# Last Updated for Version: 6.2.0
# Date of the Last Update: 2018-03-19
# Date of the Last Update: 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,6 +35,7 @@
# examples of invoking this Makefile:
# make -fek-tm4c123gxl.mak # make and run the tests in the current directory
# make -fek-tm4c123gxl.mak TESTS=philo*.tcl # make and run the selected tests
# make -fek-tm4c123gxl.mak HOST=localhost:7705 # connect to host:port
# make -fek-tm4c123gxl.mak norun # only make but not run the tests
# make -fek-tm4c123gxl.mak clean # cleanup the build
#
@ -262,7 +263,7 @@ flash :
echo Press RESET button on the EK-TM4C123GXL board
run : $(TARGET_BIN)
$(TCLSH) $(QUTEST) $(TESTS)
$(TCLSH) $(QUTEST) $(TESTS) "" $(HOST)
$(BIN_DIR)/%.d : %.c
$(CC) -MM -MT $(@:.d=.o) $(CFLAGS) $< > $@
@ -315,3 +316,5 @@ show :
@echo LIBS = $(LIBS)
@echo DEFINES = $(DEFINES)
@echo QUTEST = $(QUTEST)
@echo HOST = $(HOST)

View File

@ -194,7 +194,7 @@ $(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
run : $(TARGET_EXE)
set -e; while true; do \
echo "restarting $(TARGET_EXE)"; \
$(TARGET_EXE) $(HOST); \
$(TARGET_EXE) "" $(HOST); \
done
$(BIN_DIR)/%.d : %.cpp

View File

@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for QUTEST self-test; QP/C on POSIX *Host*
# Last updated for version 6.2.0
# Last updated on 2018-03-16
# Last updated on 2018-04-13
#
# Q u a n t u m L e a P s
# ---------------------------
@ -35,6 +35,7 @@
# examples of invoking this Makefile:
# make -f posix_host.mak # make and run the tests in the current directory
# make -f posix_host.mak TESTS=philo*.tcl # make and run the selected tests
# make -f posix_host.mak HOST=localhost:7705 # connect to host:port
# make -f posix_host.mak norun # only make but not run the tests
# make -f posix_host.mak clean # cleanup the build
#
@ -111,7 +112,7 @@ LIBS :=
# defines...
# QP_API_VERSION controls the QP API compatibility; 9999 means the latest API
DEFINES :=
DEFINES := -DQP_API_VERSION=9999
#-----------------------------------------------------------------------------
# GNU toolset
@ -190,7 +191,7 @@ $(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
$(LINK) $(LINKFLAGS) $(LIB_DIRS) -o $@ $^ $(BIN_DIR)/qstamp.o $(LIBS)
run : $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE)
$(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE) $(HOST)
$(BIN_DIR)/%.d : %.cpp
$(CPP) -MM -MT $(@:.d=.o) $(CPPFLAGS) $< > $@
@ -237,3 +238,4 @@ show :
@echo QTOOLS = $(QTOOLS)
@echo QUTEST = $(QUTEST)
@echo TESTS = $(TESTS)
@echo HOST = $(HOST)

View File

@ -1,21 +1,21 @@
/*$file${.::calc1_sub.c} ###################################################*/
/*
* Model: calc1_sub.qm
* File: C:/qp_lab/qpc/examples/win32/calc1_sub/calc1_sub.c
* File: ${.::calc1_sub.c}
*
* This code has been generated by QM tool (https://state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This code is covered by the following QP license:
* License # : QPC-EVAL-171231
* Issued to : Company/individual evaluating the QP/C framework
* License # : QPC-EVAL-181231
* Issued to : Institution or an individual evaluating the QP frameworks
* Framework(s): qpc
* Support ends: 2017-12-31
* Support ends: 2018-12-31
* Product(s) :
* This license is available only for evaluation purposes and
* the generated code is still licensed under the terms of GPL.
* Please submit request for extension of the evaluaion period at:
* https://state-machine.com/licensing/#RequestForm
* http://www.state-machine.com/licensing/#RequestForm
*/
/*$endhead${.::calc1_sub.c} ################################################*/
#include "qep_port.h" /* QEP/C interface */

View File

@ -1,21 +1,21 @@
/*$file${.::calc1_sub.h} ###################################################*/
/*
* Model: calc1_sub.qm
* File: C:/qp_lab/qpc/examples/win32/calc1_sub/calc1_sub.h
* File: ${.::calc1_sub.h}
*
* This code has been generated by QM tool (https://state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This code is covered by the following QP license:
* License # : QPC-EVAL-171231
* Issued to : Company/individual evaluating the QP/C framework
* License # : QPC-EVAL-181231
* Issued to : Institution or an individual evaluating the QP frameworks
* Framework(s): qpc
* Support ends: 2017-12-31
* Support ends: 2018-12-31
* Product(s) :
* This license is available only for evaluation purposes and
* the generated code is still licensed under the terms of GPL.
* Please submit request for extension of the evaluaion period at:
* https://state-machine.com/licensing/#RequestForm
* http://www.state-machine.com/licensing/#RequestForm
*/
/*$endhead${.::calc1_sub.h} ################################################*/
#ifndef calc1_sub_h

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<model version="4.1.0" links="0">
<model version="4.1.2" links="0">
<documentation>Calc is the model of the Calculator described in Chapter 4 of PSiCC2. This version demonstrates the use of sub-machines and sub-machine states.</documentation>
<framework name="qpc" license="../../../QPC-EVAL-171231.qlc"/>
<framework name="qpc" license="../../../QPC-EVAL-181231.qlc"/>
<package name="Events" stereotype="0x01">
<class name="CalcEvt" superclass="qpc::QEvt">
<attribute name="key_code" type="uint8_t" visibility="0x00" properties="0x00"/>

View File

@ -1,4 +1,4 @@
QHsmTst example, QP 5.8.0
QHsmTst example, QP 6.2.0
top-INIT;s-ENTRY;s2-ENTRY;s2-INIT;s21-ENTRY;s211-ENTRY;
A:s21-A;s211-EXIT;s21-EXIT;s21-ENTRY;s21-INIT;s211-ENTRY;
B:s21-B;s211-EXIT;s211-ENTRY;

View File

@ -1,8 +1,9 @@
/*****************************************************************************
/*$file${.::qhsmtst.c} #####################################################*/
/*
* Model: qhsmtst.qm
* File: ./qhsmtst.c
* File: ${.::qhsmtst.c}
*
* This code has been generated by QM tool (see state-machine.com/qm).
* This code has been generated by QM tool (https://state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This program is open source software: you can redistribute it and/or
@ -13,16 +14,12 @@
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
*****************************************************************************/
/*${.::qhsmtst.c} ..........................................................*/
*/
/*$endhead${.::qhsmtst.c} ##################################################*/
#include "qpc.h"
#include "qhsmtst.h"
#if ((QP_VERSION < 580) || (QP_VERSION != ((QP_RELEASE^4294967295U) % 0x3E8)))
#error qpc version 5.8.0 or higher required
#endif
/*$declare${HSMs::QHsmTst} #################################################*/
/*${HSMs::QHsmTst} .........................................................*/
typedef struct {
/* protected: */
@ -40,22 +37,29 @@ static QState QHsmTst_s11(QHsmTst * const me, QEvt const * const e);
static QState QHsmTst_s2(QHsmTst * const me, QEvt const * const e);
static QState QHsmTst_s21(QHsmTst * const me, QEvt const * const e);
static QState QHsmTst_s211(QHsmTst * const me, QEvt const * const e);
/*$enddecl${HSMs::QHsmTst} #################################################*/
static QHsmTst l_hsmtst; /* the only instance of the QHsmTst class */
/* global-scope definitions ---------------------------------------*/
QHsm * const the_hsm = (QHsm *)&l_hsmtst; /* the opaque pointer */
/*$define${HSMs::QHsmTst_ctor} #############################################*/
/* Check for the minimum required QP version */
#if ((QP_VERSION < 601) || (QP_VERSION != ((QP_RELEASE^4294967295U) % 0x3E8)))
#error qpc version 6.0.1 or higher required
#endif
/*${HSMs::QHsmTst_ctor} ....................................................*/
void QHsmTst_ctor(void) {
QHsmTst *me = &l_hsmtst;
QHsm_ctor(&me->super, Q_STATE_CAST(&QHsmTst_initial));
}
/*$enddef${HSMs::QHsmTst_ctor} #############################################*/
/*$define${HSMs::QHsmTst} ##################################################*/
/*${HSMs::QHsmTst} .........................................................*/
/*${HSMs::QHsmTst::SM} .....................................................*/
static QState QHsmTst_initial(QHsmTst * const me, QEvt const * const e) {
/* ${HSMs::QHsmTst::SM::initial} */
/*${HSMs::QHsmTst::SM::initial} */
(void)e; /* avoid compiler warning */
me->foo = 0U;
BSP_display("top-INIT;");
@ -65,27 +69,27 @@ static QState QHsmTst_initial(QHsmTst * const me, QEvt const * const e) {
static QState QHsmTst_s(QHsmTst * const me, QEvt const * const e) {
QState status_;
switch (e->sig) {
/* ${HSMs::QHsmTst::SM::s} */
/*${HSMs::QHsmTst::SM::s} */
case Q_ENTRY_SIG: {
BSP_display("s-ENTRY;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s} */
/*${HSMs::QHsmTst::SM::s} */
case Q_EXIT_SIG: {
BSP_display("s-EXIT;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s::initial} */
/*${HSMs::QHsmTst::SM::s::initial} */
case Q_INIT_SIG: {
BSP_display("s-INIT;");
status_ = Q_TRAN(&QHsmTst_s11);
break;
}
/* ${HSMs::QHsmTst::SM::s::I} */
/*${HSMs::QHsmTst::SM::s::I} */
case I_SIG: {
/* ${HSMs::QHsmTst::SM::s::I::[me->foo]} */
/*${HSMs::QHsmTst::SM::s::I::[me->foo]} */
if (me->foo) {
me->foo = 0U;
BSP_display("s-I;");
@ -96,13 +100,13 @@ static QState QHsmTst_s(QHsmTst * const me, QEvt const * const e) {
}
break;
}
/* ${HSMs::QHsmTst::SM::s::E} */
/*${HSMs::QHsmTst::SM::s::E} */
case E_SIG: {
BSP_display("s-E;");
status_ = Q_TRAN(&QHsmTst_s11);
break;
}
/* ${HSMs::QHsmTst::SM::s::TERMINATE} */
/*${HSMs::QHsmTst::SM::s::TERMINATE} */
case TERMINATE_SIG: {
BSP_exit();
status_ = Q_HANDLED();
@ -119,33 +123,33 @@ static QState QHsmTst_s(QHsmTst * const me, QEvt const * const e) {
static QState QHsmTst_s1(QHsmTst * const me, QEvt const * const e) {
QState status_;
switch (e->sig) {
/* ${HSMs::QHsmTst::SM::s::s1} */
/*${HSMs::QHsmTst::SM::s::s1} */
case Q_ENTRY_SIG: {
BSP_display("s1-ENTRY;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s::s1} */
/*${HSMs::QHsmTst::SM::s::s1} */
case Q_EXIT_SIG: {
BSP_display("s1-EXIT;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s::s1::initial} */
/*${HSMs::QHsmTst::SM::s::s1::initial} */
case Q_INIT_SIG: {
BSP_display("s1-INIT;");
status_ = Q_TRAN(&QHsmTst_s11);
break;
}
/* ${HSMs::QHsmTst::SM::s::s1::I} */
/*${HSMs::QHsmTst::SM::s::s1::I} */
case I_SIG: {
BSP_display("s1-I;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s::s1::D} */
/*${HSMs::QHsmTst::SM::s::s1::D} */
case D_SIG: {
/* ${HSMs::QHsmTst::SM::s::s1::D::[!me->foo]} */
/*${HSMs::QHsmTst::SM::s::s1::D::[!me->foo]} */
if (!me->foo) {
me->foo = 1U;
BSP_display("s1-D;");
@ -156,25 +160,25 @@ static QState QHsmTst_s1(QHsmTst * const me, QEvt const * const e) {
}
break;
}
/* ${HSMs::QHsmTst::SM::s::s1::A} */
/*${HSMs::QHsmTst::SM::s::s1::A} */
case A_SIG: {
BSP_display("s1-A;");
status_ = Q_TRAN(&QHsmTst_s1);
break;
}
/* ${HSMs::QHsmTst::SM::s::s1::B} */
/*${HSMs::QHsmTst::SM::s::s1::B} */
case B_SIG: {
BSP_display("s1-B;");
status_ = Q_TRAN(&QHsmTst_s11);
break;
}
/* ${HSMs::QHsmTst::SM::s::s1::F} */
/*${HSMs::QHsmTst::SM::s::s1::F} */
case F_SIG: {
BSP_display("s1-F;");
status_ = Q_TRAN(&QHsmTst_s211);
break;
}
/* ${HSMs::QHsmTst::SM::s::s1::C} */
/*${HSMs::QHsmTst::SM::s::s1::C} */
case C_SIG: {
BSP_display("s1-C;");
status_ = Q_TRAN(&QHsmTst_s2);
@ -191,27 +195,27 @@ static QState QHsmTst_s1(QHsmTst * const me, QEvt const * const e) {
static QState QHsmTst_s11(QHsmTst * const me, QEvt const * const e) {
QState status_;
switch (e->sig) {
/* ${HSMs::QHsmTst::SM::s::s1::s11} */
/*${HSMs::QHsmTst::SM::s::s1::s11} */
case Q_ENTRY_SIG: {
BSP_display("s11-ENTRY;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s::s1::s11} */
/*${HSMs::QHsmTst::SM::s::s1::s11} */
case Q_EXIT_SIG: {
BSP_display("s11-EXIT;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s::s1::s11::H} */
/*${HSMs::QHsmTst::SM::s::s1::s11::H} */
case H_SIG: {
BSP_display("s11-H;");
status_ = Q_TRAN(&QHsmTst_s);
break;
}
/* ${HSMs::QHsmTst::SM::s::s1::s11::D} */
/*${HSMs::QHsmTst::SM::s::s1::s11::D} */
case D_SIG: {
/* ${HSMs::QHsmTst::SM::s::s1::s11::D::[me->foo]} */
/*${HSMs::QHsmTst::SM::s::s1::s11::D::[me->foo]} */
if (me->foo) {
me->foo = 0U;
BSP_display("s11-D;");
@ -222,7 +226,7 @@ static QState QHsmTst_s11(QHsmTst * const me, QEvt const * const e) {
}
break;
}
/* ${HSMs::QHsmTst::SM::s::s1::s11::G} */
/*${HSMs::QHsmTst::SM::s::s1::s11::G} */
case G_SIG: {
BSP_display("s11-G;");
status_ = Q_TRAN(&QHsmTst_s211);
@ -239,27 +243,27 @@ static QState QHsmTst_s11(QHsmTst * const me, QEvt const * const e) {
static QState QHsmTst_s2(QHsmTst * const me, QEvt const * const e) {
QState status_;
switch (e->sig) {
/* ${HSMs::QHsmTst::SM::s::s2} */
/*${HSMs::QHsmTst::SM::s::s2} */
case Q_ENTRY_SIG: {
BSP_display("s2-ENTRY;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s::s2} */
/*${HSMs::QHsmTst::SM::s::s2} */
case Q_EXIT_SIG: {
BSP_display("s2-EXIT;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s::s2::initial} */
/*${HSMs::QHsmTst::SM::s::s2::initial} */
case Q_INIT_SIG: {
BSP_display("s2-INIT;");
status_ = Q_TRAN(&QHsmTst_s211);
break;
}
/* ${HSMs::QHsmTst::SM::s::s2::I} */
/*${HSMs::QHsmTst::SM::s::s2::I} */
case I_SIG: {
/* ${HSMs::QHsmTst::SM::s::s2::I::[!me->foo]} */
/*${HSMs::QHsmTst::SM::s::s2::I::[!me->foo]} */
if (!me->foo) {
me->foo = 1U;
BSP_display("s2-I;");
@ -270,13 +274,13 @@ static QState QHsmTst_s2(QHsmTst * const me, QEvt const * const e) {
}
break;
}
/* ${HSMs::QHsmTst::SM::s::s2::F} */
/*${HSMs::QHsmTst::SM::s::s2::F} */
case F_SIG: {
BSP_display("s2-F;");
status_ = Q_TRAN(&QHsmTst_s11);
break;
}
/* ${HSMs::QHsmTst::SM::s::s2::C} */
/*${HSMs::QHsmTst::SM::s::s2::C} */
case C_SIG: {
BSP_display("s2-C;");
status_ = Q_TRAN(&QHsmTst_s1);
@ -293,37 +297,37 @@ static QState QHsmTst_s2(QHsmTst * const me, QEvt const * const e) {
static QState QHsmTst_s21(QHsmTst * const me, QEvt const * const e) {
QState status_;
switch (e->sig) {
/* ${HSMs::QHsmTst::SM::s::s2::s21} */
/*${HSMs::QHsmTst::SM::s::s2::s21} */
case Q_ENTRY_SIG: {
BSP_display("s21-ENTRY;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s::s2::s21} */
/*${HSMs::QHsmTst::SM::s::s2::s21} */
case Q_EXIT_SIG: {
BSP_display("s21-EXIT;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s::s2::s21::initial} */
/*${HSMs::QHsmTst::SM::s::s2::s21::initial} */
case Q_INIT_SIG: {
BSP_display("s21-INIT;");
status_ = Q_TRAN(&QHsmTst_s211);
break;
}
/* ${HSMs::QHsmTst::SM::s::s2::s21::G} */
/*${HSMs::QHsmTst::SM::s::s2::s21::G} */
case G_SIG: {
BSP_display("s21-G;");
status_ = Q_TRAN(&QHsmTst_s1);
break;
}
/* ${HSMs::QHsmTst::SM::s::s2::s21::A} */
/*${HSMs::QHsmTst::SM::s::s2::s21::A} */
case A_SIG: {
BSP_display("s21-A;");
status_ = Q_TRAN(&QHsmTst_s21);
break;
}
/* ${HSMs::QHsmTst::SM::s::s2::s21::B} */
/*${HSMs::QHsmTst::SM::s::s2::s21::B} */
case B_SIG: {
BSP_display("s21-B;");
status_ = Q_TRAN(&QHsmTst_s211);
@ -340,25 +344,25 @@ static QState QHsmTst_s21(QHsmTst * const me, QEvt const * const e) {
static QState QHsmTst_s211(QHsmTst * const me, QEvt const * const e) {
QState status_;
switch (e->sig) {
/* ${HSMs::QHsmTst::SM::s::s2::s21::s211} */
/*${HSMs::QHsmTst::SM::s::s2::s21::s211} */
case Q_ENTRY_SIG: {
BSP_display("s211-ENTRY;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s::s2::s21::s211} */
/*${HSMs::QHsmTst::SM::s::s2::s21::s211} */
case Q_EXIT_SIG: {
BSP_display("s211-EXIT;");
status_ = Q_HANDLED();
break;
}
/* ${HSMs::QHsmTst::SM::s::s2::s21::s211::H} */
/*${HSMs::QHsmTst::SM::s::s2::s21::s211::H} */
case H_SIG: {
BSP_display("s211-H;");
status_ = Q_TRAN(&QHsmTst_s);
break;
}
/* ${HSMs::QHsmTst::SM::s::s2::s21::s211::D} */
/*${HSMs::QHsmTst::SM::s::s2::s21::s211::D} */
case D_SIG: {
BSP_display("s211-D;");
status_ = Q_TRAN(&QHsmTst_s21);
@ -371,4 +375,4 @@ static QState QHsmTst_s211(QHsmTst * const me, QEvt const * const e) {
}
return status_;
}
/*$enddef${HSMs::QHsmTst} ##################################################*/

View File

@ -1,8 +1,9 @@
/*****************************************************************************
/*$file${.::qhsmtst.h} #####################################################*/
/*
* Model: qhsmtst.qm
* File: ./qhsmtst.h
* File: ${.::qhsmtst.h}
*
* This code has been generated by QM tool (see state-machine.com/qm).
* This code has been generated by QM tool (https://state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This program is open source software: you can redistribute it and/or
@ -13,8 +14,8 @@
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
*****************************************************************************/
/*${.::qhsmtst.h} ..........................................................*/
*/
/*$endhead${.::qhsmtst.h} ##################################################*/
#ifndef qhsmtst_h
#define qhsmtst_h
@ -35,9 +36,10 @@ enum QHsmTstSignals {
extern QHsm * const the_hsm; /* opaque pointer to the test HSM */
/*$declare${HSMs::QHsmTst_ctor} ############################################*/
/*${HSMs::QHsmTst_ctor} ....................................................*/
void QHsmTst_ctor(void);
/*$enddecl${HSMs::QHsmTst_ctor} ############################################*/
/* BSP functions to dispaly a message and exit */
void BSP_display(char const *msg);

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<model version="4.0.0" links="0">
<model version="4.1.2" links="0">
<documentation>QHsmTst is a contrived state machine from Chapter 2 of the PSiCC2 book for testing all possible transition topologies with up to 4-levels of state nesting.</documentation>
<framework name="qpc"/>
<package name="HSMs" stereotype="0x02">

View File

@ -1,21 +1,21 @@
/*$file${.::qmsmtst.c} #####################################################*/
/*
* Model: qmsmtst.qm
* File: C:/qp_lab/qpc/examples/win32/qmsmtst/qmsmtst.c
* File: ${.::qmsmtst.c}
*
* This code has been generated by QM tool (https://state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This code is covered by the following QP license:
* License # : QPC-EVAL-171231
* Issued to : Company/individual evaluating the QP/C framework
* License # : QPC-EVAL-181231
* Issued to : Institution or an individual evaluating the QP frameworks
* Framework(s): qpc
* Support ends: 2017-12-31
* Support ends: 2018-12-31
* Product(s) :
* This license is available only for evaluation purposes and
* the generated code is still licensed under the terms of GPL.
* Please submit request for extension of the evaluaion period at:
* https://state-machine.com/licensing/#RequestForm
* http://www.state-machine.com/licensing/#RequestForm
*/
/*$endhead${.::qmsmtst.c} ##################################################*/
#include "qpc.h"

View File

@ -1,21 +1,21 @@
/*$file${.::qmsmtst.h} #####################################################*/
/*
* Model: qmsmtst.qm
* File: C:/qp_lab/qpc/examples/win32/qmsmtst/qmsmtst.h
* File: ${.::qmsmtst.h}
*
* This code has been generated by QM tool (https://state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This code is covered by the following QP license:
* License # : QPC-EVAL-171231
* Issued to : Company/individual evaluating the QP/C framework
* License # : QPC-EVAL-181231
* Issued to : Institution or an individual evaluating the QP frameworks
* Framework(s): qpc
* Support ends: 2017-12-31
* Support ends: 2018-12-31
* Product(s) :
* This license is available only for evaluation purposes and
* the generated code is still licensed under the terms of GPL.
* Please submit request for extension of the evaluaion period at:
* https://state-machine.com/licensing/#RequestForm
* http://www.state-machine.com/licensing/#RequestForm
*/
/*$endhead${.::qmsmtst.h} ##################################################*/
#ifndef qmsmtst_h

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<model version="4.1.0" links="0">
<model version="4.1.2" links="0">
<documentation>QMsmTst is a QMsm state machine test based on the contrived state machine from Chapter 2 of the PSiCC2 book for testing all possible transition topologies with up to 4-levels of state nesting.</documentation>
<framework name="qpc" license="../../../QPC-EVAL-171231.qlc"/>
<framework name="qpc" license="../../../QPC-EVAL-181231.qlc"/>
<package name="SMs" stereotype="0x02">
<class name="QMsmTst" superclass="qpc::QMsm">
<documentation>Test active object</documentation>