Avoid having to rebuild conflicting master/soe_errors.c objects. Inside
the `tool` folder, the `soe_error_codes` array is used only by
SoeCommand, so this should not create further problems.
Without this patch, `./bootstrap` fails with the following error if
pkgconf/pkg-config is not installed:
lib/Makefile.am:76: error: 'pkgconfig_DATA' is used but 'pkgconfigdir' is undefined
This can be triggered by disinstalling `pkgconf/pkg-config`. The problem
here is that the check for `pkg-config` is done at configure level but
`automake` fails at bootstrap level because of the above error.
This basically "fixes" the issue by changing the way in which
`./bootstrap` fails.
In the /etc/ethercat.conf file, the MASTERX_DEVICE string is given as a
mac address or a wildcard. When we want to deploy the (same) software (image)
to a bunch of different hardware, and these computers do have more than one
interface that matches the driver, we need a way to define the device by
network interface name. This allows to also define the network device by name
(e.g. eth0, eno1, ...)
Signed-off-by: Matthias Schoepfer <m.schoepfer@rethinkrobotics.com>
Try to reuse the configured paths as much as possible. Unfortunately, to
be able to fully expand some variable (e.g. `bindir`), these files must
be expanded by make, not by configure. This adds some complexity:
https://www.gnu.org/software/automake/manual/html_node/Scripts.html
Mostly fixed omitted double quotes, some conversion of $(eval ..) to $(()).
Left the echo -n untouched, shellcheck complains about not being standard in
/bin/sh. Also, seems like some code is dublicated in ethercatctl.in and
init.d/ethercat.in.
Signed-off-by: Matthias Schoepfer <m.schoepfer@rethinkrobotics.com>
The problem is both automake and kbuild recurse into subdirectories. In
`make distcheck`, automake cleans its `SUBDIRS` and only then tries to
clean the toplevel one. This in turn will trigger a kbuild clean that
will try to recurse into its own (now empty) subdirectories.
Avoid this issue by removing Kbuild clean from the toplevel.