Skip to content

Commit 6607203

Browse files
Official Release 17.0.0: Merge pull request #35 from rcsoccersim/develop
Official Release 17.0.0
2 parents 6017d1d + 47b7348 commit 6607203

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+34288
-1336
lines changed

CMakeLists.txt

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
cmake_minimum_required(VERSION 3.5)
22

3-
project(rcssmonitor VERSION 16.1.0)
3+
project(rcssmonitor VERSION 17.0.0)
44

55
if(CMAKE_VERSION VERSION_LESS "3.7.0")
66
set(CMAKE_INCLUDE_CURRENT_DIR ON)
@@ -22,13 +22,13 @@ include(CheckIncludeFileCXX)
2222
if(WIN32)
2323
check_include_file("windows.h" HAVE_WINDOWS_H)
2424
endif()
25-
check_include_file_cxx("netinet/in.h" HAVE_NETINET_IN_H)
25+
check_include_file_cxx("arpa/inet.h" HAVE_ARPA_INET_H)
2626

2727
# check boost
28-
find_package(Boost 1.38.0 COMPONENTS program_options system REQUIRED)
29-
if(Boost_PROGRAM_OPTIONS_FOUND)
30-
set(HAVE_BOOST_PROGRAM_OPTIONS TRUE)
31-
endif()
28+
#find_package(Boost 1.38.0 COMPONENTS program_options system REQUIRED)
29+
#if(Boost_PROGRAM_OPTIONS_FOUND)
30+
# set(HAVE_BOOST_PROGRAM_OPTIONS TRUE)
31+
#endif()
3232

3333
# check Qt
3434
find_package(Qt5 COMPONENTS Core Gui Widgets Network REQUIRED)
@@ -44,6 +44,7 @@ if(ZLIB_FOUND)
4444
set(HAVE_LIBZ TRUE)
4545
endif()
4646

47+
4748
# generate config.h
4849
add_definitions(-DHAVE_CONFIG_H)
4950
configure_file(
@@ -52,4 +53,5 @@ configure_file(
5253
)
5354

5455
#
56+
add_subdirectory(rcss)
5557
add_subdirectory(src)

ChangeLog

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
2022-04-02 Hidehisa Akiyama <[email protected]>
2+
3+
* CMakeLists.txt:
4+
* NEWS:
5+
* configurea.ac:
6+
- updated a major version number. Official release 17.0.0.
7+
18
2022-01-21 Hidehisa Akiyama <[email protected]>
29

310
* CMakeLists.txt:

Makefile.am

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
ACLOCAL_AMFLAGS=-I m4
22

3-
SUBDIRS = src .
3+
SUBDIRS = rcss src .
44

55
EXTRA_DIST = \
6-
rcssmonitor.pro \
76
README.md \
87
CMakeLists.txt \
8+
cmake-config.h.in \
99
icons/accelerate.xpm \
1010
icons/blank.xpm \
1111
icons/decelerate.xpm \

NEWS

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
1+
[17.0.0]
2+
* Remove dependency on Boost library.
3+
4+
* Support the monitor protocol version 5 (RCG version 6), which is a
5+
JSON-based format. The parser implemented at this time is quite
6+
slow, so the default client version is set to the previous one.
7+
8+
* Reimplement the RCG parser library. The installation destination
9+
of the library header files has been unified under PREFIX/include/rcss.
10+
111
[16.1.0]
212
* Add a team graphic scaling option. Now, users can change the drawing
313
scale of team graphic images.

README.md

Lines changed: 39 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -5,28 +5,30 @@
55

66
**RoboCup Soccer Simulator Monitor** (rcssmonitor) is used to view the simulation as it takes place by connecting to the [RoboCup Soccer Simulator Server](https://github.com/rcsoccersim/rcssserver) (rcssserver) or to view the playback of a simulation by loading game log files.
77

8-
## ⚽️ Quick Start
8+
## :soccer: Quick Start
99

10-
rcssmonitor is implemented by C++ and depends [Boost](https://www.boost.org/) and [Qt](https://www.qt.io/).
10+
rcssmonitor is implemented by C++14 and depends [Qt5](https://www.qt.io/).
1111
At first, related tools have to be installed on the system.
12-
In the case of Ubuntu 16.04 or 18.04, execute the following commands:
12+
In the case of Ubuntu 18.04 or 20.04, execute the following commands:
1313

14-
```
14+
```bash
1515
sudo apt update
16-
sudo apt install build-essential libboost-all-dev qt5-default libfontconfig1-dev libaudio-dev libxt-dev libglib2.0-dev libxi-dev libxrender-dev
16+
sudo apt install build-essential qt5-default libfontconfig1-dev libaudio-dev libxt-dev libglib2.0-dev libxi-dev libxrender-dev
1717
```
1818

1919
Then, clone the repository. From its directory, execute commands:
2020

21-
```
22-
autoreconf -i
21+
```bash
22+
./bootstrap
2323
./configure
2424
make
2525
```
2626

27-
Alternatively you can download the tarball from [releases section](https://github.com/rcsoccersim/rcssmonitor/releases), extract it and run from its contents:
27+
Alternatively you can download the tarball from the [releases section](https://github.com/rcsoccersim/rcssmonitor/releases), extract it and run from its contents:
2828

29-
```
29+
```bash
30+
tar xzvfp rcssmonitor-x.x.x.tar.gz
31+
cd rcssmonitor-x.x.x
3032
./configure
3133
make
3234
```
@@ -35,7 +37,7 @@ This will built the necessary binaries to get you up and running. `rcssmonitor/s
3537

3638
The version 16.0.0 or later support [CMake](https://cmake.org/). If CMake is prefered or problems with the above procedure, try the following commands:
3739

38-
```
40+
```bash
3941
mkdir build
4042
cd build
4143
cmake ..
@@ -45,54 +47,70 @@ make
4547
In this case, `rcssmonitor/build/rcssmonitor` will be the binary for the monitor.
4648

4749

48-
## 🛠 Configuring & Building
50+
## :hammer_and_wrench: Configuring & Building
4951

50-
Before you can build RoboCup Soccer Simulator Monitor you will need to run the `configure` script located in the root of the distribution directory.
52+
Before building rcssmonitor you will need to run the `configure` script located in the root of the distribution directory.
5153

5254
The default configuration will set up to install the monitor components in the following location:
5355

5456
`/usr/local/bin` for the executables
5557

5658
You may need administrator privileges to install the monitor into the default location. This locations can be modified by using configure's `--prefix=DIR` and related options. See `configure --help` for more details.
59+
```bash
60+
./configure --prefix=YOUR_INSTALLATION_DIR
61+
```
5762

5863
The monitor has several features that can be enabled or disabled at configure time by using the `--enable-FEATURE[=ARG]` or `--disable-FEATURE` parameters to `configure`. `--disable-FEATURE` is equivalent to `--enable-FEATURE=no` and `--enable-FEATURE` is equivlant to `--enable-FEATURE=yes`. The only valid values for `ARG` are `yes` and `no`.
5964

6065
Once you have successfully configured the monitor, simply run `make` to build the sources.
6166

6267
If CMake is chosen, `ccmake` command is available for the configuration:
6368

64-
```
69+
```bash
6570
cd build
6671
ccmake ..
6772
```
6873

74+
## :package: Installing
6975

70-
## 📦 Installing
76+
When you have completed building the monitor, it's components can be installed into their default locations or the locations specified during configuring by running
77+
```bash
78+
make install
79+
```
80+
Depending on where you are installing the monitor, you may need special permissions.
7181

72-
When you have completed building the monitor, it's components can be installed into their default locations or the locations specified during configuring by running `make install`. Depending on where you are installing the monitor, you may need special permissions.
82+
## :wastebasket: Uninstalling
83+
In the case of autotools, the monitor can also be easily removed by entering the distribution directory and running
84+
```bash
85+
make uninstall
86+
```
87+
This will remove all the files that where installed, but not any directories that were created during the installation process.
88+
89+
In the case of CMake, find `install_manifest.txt` under the build directory, then execute:
90+
```bash
91+
xargs rm < install_manifest.txt
92+
```
7393

74-
The monitor can also be easily removed by entering the distribution directory and running `make uninstall`. This will remove all the files that where installed, but not any directories that were created during the installation process.
7594

76-
## Using the Monitor
95+
## :play_or_pause_button: Using the Monitor
7796

7897
To start the monitor either type
7998

80-
```
99+
```bash
81100
./rcssmonitor
82101
```
83102

84103
from the directory containing the executable or
85104

86-
```
105+
```bash
87106
rcssmonitor
88107
```
89108

90109
If you invoke `rcssmonitor` with `--help` option, available options are displayed in your console.
91110

92-
## ✉ ️Contributing
111+
## :incoming_envelope: Contributing
93112

94113
For bug reports, feature requests and latest updates, please goto
95114
https://github.com/rcsoccersim/rcssmonitor and open an issue or a pull request.
96115

97116
> The RoboCup Soccer Server Maintainance Group
98-

cmake-config.h.in

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,4 @@
77

88
#cmakedefine HAVE_WINDOWS_H
99

10-
#cmakedefine HAVE_NETINET_IN_H
11-
12-
#cmakedefine HAVE_BOOST_PROGRAM_OPTIONS
10+
#cmakedefine HAVE_ARPA_INET_H

configure.ac

Lines changed: 24 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# Process this file with autoconf to produce a configure script.
33

44
AC_PREREQ(2.61)
5-
AC_INIT([rcssmonitor],[16.1.0],[https://github.com/rcsoccersim/rcssmonitor])
5+
AC_INIT([rcssmonitor],[17.0.0],[https://github.com/rcsoccersim/rcssmonitor])
66

77
#LT_PREREQ(2.2.4)
88

@@ -12,6 +12,14 @@ AC_CONFIG_SRCDIR([config.h.in])
1212
AC_CONFIG_HEADERS([config.h])
1313
AC_CONFIG_MACRO_DIR([m4])
1414

15+
##################################################
16+
# libtool settings
17+
##################################################
18+
19+
LT_INIT([shared disable-static])
20+
LT_LANG([C++])
21+
AC_SUBST(LIBTOOL_DEPS)
22+
1523
##################################################
1624
# Checks for programs.
1725
##################################################
@@ -27,13 +35,16 @@ AC_PROG_CXX
2735
AC_CHECK_LIB([m], [cos],
2836
[LIBS="-lm $LIBS"],
2937
[AC_MSG_ERROR([*** -lm not found! ***])])
30-
AC_CHECK_LIB([z], [deflate])
38+
#AC_CHECK_LIB([z], [deflate])
39+
AX_CHECK_ZLIB([],
40+
[AC_MSG_NOTICE(Zlib not found.)])
41+
3142

3243
##################################################
3344
# Checks for header files.
3445
##################################################
3546

36-
AC_CHECK_HEADERS([netinet/in.h])
47+
AC_CHECK_HEADERS([arpa/inet.h])
3748

3849
##################################################
3950
# Checks for typedefs, structures, and compiler characteristics.
@@ -59,49 +70,9 @@ AC_CHECK_FUNCS([memset rint strtol pow sqrt])
5970
# ----------------------------------------------------------
6071
# check Qt
6172

62-
AC_ARG_ENABLE(qt4,
63-
AC_HELP_STRING([--enable-qt4],
64-
[use Qt4 tool kit (default no)]))
65-
AC_ARG_ENABLE(gl,
66-
AC_HELP_STRING([--enable-gl],
67-
[enable GLWidget for Qt (default no)]))
68-
69-
if test "x$enable_qt4" != "xyes"; then
70-
AC_MSG_NOTICE(enabled Qt5)
71-
72-
QTMODULES="Qt5Core Qt5Gui Qt5Widgets Qt5Network"
73-
74-
if test "x$enable_gl" == "xyes"; then
75-
AC_MSG_NOTICE(enabled GL5Widget)
76-
CFLAGS="-DUSE_GLWIDGET $CFLAGS"
77-
CXXFLAGS="-DUSE_GLWIDGET $CXXFLAGS"
78-
QTMODULES="$QTMODULES Qt5OpenGL"
79-
fi
80-
81-
AX_QT([5.0.0],[$QTMODULES])
82-
83-
else
84-
AC_MSG_NOTICE(enabled Qt4)
85-
86-
QTMODULES="QtCore QtGui QtNetwork"
87-
88-
if test "x$enable_gl" == "xyes"; then
89-
AC_MSG_NOTICE(enabled GLWidget)
90-
CFLAGS="-DUSE_GLWIDGET $CFLAGS"
91-
CXXFLAGS="-DUSE_GLWIDGET $CXXFLAGS"
92-
QTMODULES="$QTMODULES QtOpenGL"
93-
fi
94-
95-
AX_QT([4.3.0],[$QTMODULES])
96-
fi
97-
98-
if test x$have_qt != xyes ; then
99-
AC_MSG_ERROR([$QTMODULES could not be found.])
100-
AM_CONDITIONAL(BUILD_QT, [test "1" = "0"])
101-
else
102-
CFLAGS="-fPIC $CFLAGS"
103-
CXXFLAGS="-fPIC $CXXFLAGS"
104-
AM_CONDITIONAL(BUILD_QT, [test "1" = "1"])
73+
AX_HAVE_QT
74+
if test "x$have_qt" != "xyes"; then
75+
AC_MSG_ERROR([Qt not found.])
10576
fi
10677

10778
# ----------------------------------------------------------
@@ -112,13 +83,15 @@ AX_CXX_COMPILE_STDCXX_14(noext)
11283
# ----------------------------------------------------------
11384
# check boost
11485

115-
AX_BOOST_BASE([1.38.0])
116-
AX_BOOST_SYSTEM
117-
AX_BOOST_PROGRAM_OPTIONS
118-
CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
119-
LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
86+
#AX_BOOST_BASE([1.38.0])
87+
#AX_BOOST_SYSTEM
88+
#AX_BOOST_PROGRAM_OPTIONS
89+
#CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
90+
#LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
12091

12192
# ----------------------------------------------------------
12293
AC_CONFIG_FILES([Makefile
94+
rcss/Makefile
95+
rcss/rcg/Makefile
12396
src/Makefile])
12497
AC_OUTPUT

0 commit comments

Comments
 (0)