Skip to contentSkip to conversation

linuxconsoletools: new package

PATCH New Koen Martens 3 participants 11 messages Jun 19, 2017 – Jun 20, 2017

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 linuxconsoletools: new package

Linuxconsoletools contains the inputattach utility to attach legacy serial devices to the Linux kernel input layer and joystick utilities to calibrate and test joysticks and joypads.

The buildroot package adds options to build only certain tools.

website: http://sf.net/projects/linuxconsole/

---
Changes v1 -> v2:
- Remove 'default n' everywhere
- Change forward dependency BR2_PACKAGE_SDL to backward dependency
- Change license code to use SPDX convention
- Remove option to install man pages
- Remove superfluous lines from .mk file
- Refactor SDL_CONFIG make option
- Refactor make options
- Add blank lines after endif

 DEVELOPERS                                         |  3 ++
 package/Config.in                                  |  1 +
 .../linuxconsoletools/0001-conditional-build.patch | 58 ++++++++++++++++++++++
 package/linuxconsoletools/0002-sdl-config.patch    | 20 ++++++++
 package/linuxconsoletools/Config.in                | 34 +++++++++++++
 package/linuxconsoletools/linuxconsoletools.hash   |  2 +
 package/linuxconsoletools/linuxconsoletools.mk     | 43 ++++++++++++++++
 7 files changed, 161 insertions(+)
 create mode 100644 package/linuxconsoletools/0001-conditional-build.patch
 create mode 100644 package/linuxconsoletools/0002-sdl-config.patch
 create mode 100644 package/linuxconsoletools/Config.in
 create mode 100644 package/linuxconsoletools/linuxconsoletools.hash
 create mode 100644 package/linuxconsoletools/linuxconsoletools.mk
DEVELOPERS +3 -0
index f86a5dc..afc4596 100644
@@ -997,6 +997,9 @@ F:	package/ramsmp/
 N:	Kevin Joly <[email protected]>
 F:	package/libgphoto2/
 
+N:	Koen Martens <[email protected]>
+F:	package/linuxconsoletools/
+
 N:	Laurent Cans <[email protected]>
 F:	package/aircrack-ng/
 
package/Config.in +1 -0
index aeb7430..9df0b42 100644
@@ -422,6 +422,7 @@ endmenu
 	source "package/lcdproc/Config.in"
 	source "package/libuio/Config.in"
 	source "package/libump/Config.in"
+	source "package/linuxconsoletools/Config.in"
 	source "package/linux-backports/Config.in"
 	source "package/lirc-tools/Config.in"
 	source "package/lm-sensors/Config.in"
package/linuxconsoletools/0001-conditional-build.patch new file +58 -0

58 lines not on this page · raw message

package/linuxconsoletools/0002-sdl-config.patch new file +20 -0
new file mode 100644
index 0000000..c19c274
@@ -0,0 +1,20 @@
+Specify sdl-config to use instead of using host sdl-config.
+
+Signed-off-by: Koen Martens <[email protected]>
+
+diff -Naur a/utils/Makefile b/utils/Makefile
+--- a/utils/Makefile	2017-06-16 18:48:28.402824790 +0200
++++ b/utils/Makefile	2017-06-16 18:48:53.898696647 +0200
+@@ -69,10 +69,10 @@
+ 	$(CC) $(CFLAGS) $(CPPFLAGS) -funsigned-char $^ $(LDFLAGS) -lm -o $@
+ 
+ ffmvforce.o: ffmvforce.c
+-	$(CC) $(CFLAGS) $(CPPFLAGS) -c $^ -o $@ `sdl-config --cflags`
++	$(CC) $(CFLAGS) $(CPPFLAGS) -c $^ -o $@ `${SDL_CONFIG} --cflags`
+ 
+ ffmvforce: ffmvforce.o
+-	$(CC) $^ -o $@ $(LDFLAGS) -g -lm `sdl-config --libs`
++	$(CC) $^ -o $@ $(LDFLAGS) -g -lm `${SDL_CONFIG} --libs`
+ 
+ axbtnmap.o: axbtnmap.c axbtnmap.h
+ 
package/linuxconsoletools/Config.in new file +34 -0
new file mode 100644
index 0000000..08a4af3
@@ -0,0 +1,34 @@
+config BR2_PACKAGE_LINUXCONSOLETOOLS
+	bool "linuxconsoletools"
+	default n
+	help
+	  Linuxconsoletools contains the inputattach utility
+	  to attach legacy serial devices to the Linux kernel
+	  input layer and joystick utilities to calibrate and
+	  test joysticks and joypads.
+	  
+	  http://sf.net/projects/linuxconsole/
+
+if BR2_PACKAGE_LINUXCONSOLETOOLS
+
+config BR2_PACKAGE_LINUXCONSOLETOOLS_INPUTATTACH
+	bool "inputattach"
+	default y
+	help
+	  The inputattach utility attaches legacy serial devices
+	  to the Linux kernel input layer.
+
+config BR2_PACKAGE_LINUXCONSOLETOOLS_JOYSTICK
+	bool "joystick utilities"
+	help
+	  Joystick utilities (jstest, jscal, jscal-store,
+	  jscal-restore, evdev-joystick).
+
+config BR2_PACKAGE_LINUXCONSOLETOOLS_FORCEFEEDBACK
+	bool "force-feedback utilities"
+	select BR2_PACKAGE_SDL
+	help
+	  Build force-feedback driver utilities (fftest,
+	  ffmvforce, ffset, ffcfstress).
+
+endif
package/linuxconsoletools/linuxconsoletools.hash new file +2 -0
new file mode 100644
index 0000000..756c9f4
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256	ced2efed00b67b45f82eddc69be07385835d558f658016315ac621fe2eaa8146	linuxconsoletools-1.6.0.tar.bz2
package/linuxconsoletools/linuxconsoletools.mk new file +43 -0

43 lines not on this page · raw message

Signature · 1 line
2.7.4
#1 lore raw

PATCH v2 1/1 linuxconsoletools: new package

Hello,

Quoted 11 lines · Koen Martens

Linuxconsoletools contains the inputattach utility to attach legacy serial devices to the Linux kernel input layer and joystick utilities to calibrate and test joysticks and joypads.

The buildroot package adds options to build only certain tools.

website: http://sf.net/projects/linuxconsole/

Thanks, I've applied, after doing a few minor tweaks. See below.

package/linuxconsoletools/Config.in line 3

Quoted 9 lines
package/linuxconsoletools/Config.in new file +3 -0
new file mode 100644
index 0000000..08a4af3
@@ -0,0 +1,34 @@
+config BR2_PACKAGE_LINUXCONSOLETOOLS
+	bool "linuxconsoletools"
+	default n

There was still a useless "default n" here, so I've dropped.

package/linuxconsoletools/Config.in line 9

Quoted 6 lines
package/linuxconsoletools/Config.in new file +6 -0
+	help
+	  Linuxconsoletools contains the inputattach utility
+	  to attach legacy serial devices to the Linux kernel
+	  input layer and joystick utilities to calibrate and
+	  test joysticks and joypads.
+	  

There was a trailing tab character on this line, which I dropped.

package/linuxconsoletools/Config.in line 13

Quoted 4 lines
package/linuxconsoletools/Config.in new file +4 -0
+	  http://sf.net/projects/linuxconsole/
+ifeq ($(BR2_PACKAGE_LINUXCONSOLETOOLS_FORCEFEEDBACK),y)
+LINUXCONSOLETOOLS_MAKE_OPTS += ENABLE_FORCEFEEDBACK=1
+LINUXCONSOLETOOLS_MAKE_OPTS += SDL_CONFIG=$(STAGING_DIR)/usr/bin/sdl-config

I've put these in a single assignment:

+LINUXCONSOLETOOLS_MAKE_OPTS += \
+ ENABLE_FORCEFEEDBACK=1 \
+ SDL_CONFIG=$(STAGING_DIR)/usr/bin/sdl-config

package/linuxconsoletools/Config.in line 18

Quoted 5 lines
package/linuxconsoletools/Config.in new file +5 -0
+LINUXCONSOLETOOLS_DEPENDENCIES += sdl
+endif
+
+LINUXCONSOLETOOLS_MAKE_OPTS += CC=$(TARGET_CC)
+LINUXCONSOLETOOLS_MAKE_OPTS += CFLAGS="$(TARGET_CFLAGS)"

Both of those lines are not needed: CC and CFLAGS are already part of $(TARGET_CONFIGURE_OPTS), which you pass in the build and install commands.

Committed with those minor issues fixed. Thanks a lot for this contribution!

Best regards,

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
#2 lore raw

PATCH v2 1/1 linuxconsoletools: new package

Hi Thomas,

Thanks, also for the small corrections. I must've missed a few things. This was my first attempt at contributing, from which I've learned quite a lot. So hopefully, I'll be able to contribute some more things in the near future and get it right the first time. It'll mostly be in the category 'old and ancient', given the kind of ancient hardware I'm currently working on :)

- Koen

Quoted 71 lines · Thomas Petazzoni

Hello,

Quoted 11 lines · Koen Martens

Linuxconsoletools contains the inputattach utility to attach legacy serial devices to the Linux kernel input layer and joystick utilities to calibrate and test joysticks and joypads.

The buildroot package adds options to build only certain tools.

website: http://sf.net/projects/linuxconsole/

Thanks, I've applied, after doing a few minor tweaks. See below.

package/linuxconsoletools/Config.in line 3

Quoted 9 lines
package/linuxconsoletools/Config.in new file +3 -0
new file mode 100644
index 0000000..08a4af3
@@ -0,0 +1,34 @@
+config BR2_PACKAGE_LINUXCONSOLETOOLS
+	bool "linuxconsoletools"
+	default n

There was still a useless "default n" here, so I've dropped.

package/linuxconsoletools/Config.in line 9

Quoted 6 lines
package/linuxconsoletools/Config.in new file +6 -0
+	help
+	  Linuxconsoletools contains the inputattach utility
+	  to attach legacy serial devices to the Linux kernel
+	  input layer and joystick utilities to calibrate and
+	  test joysticks and joypads.
+	  

There was a trailing tab character on this line, which I dropped.

package/linuxconsoletools/Config.in line 13

Quoted 4 lines
package/linuxconsoletools/Config.in new file +4 -0
+	  http://sf.net/projects/linuxconsole/
+ifeq ($(BR2_PACKAGE_LINUXCONSOLETOOLS_FORCEFEEDBACK),y)
+LINUXCONSOLETOOLS_MAKE_OPTS += ENABLE_FORCEFEEDBACK=1
+LINUXCONSOLETOOLS_MAKE_OPTS += SDL_CONFIG=$(STAGING_DIR)/usr/bin/sdl-config

I've put these in a single assignment:

(quoted diff) +3 -0
+LINUXCONSOLETOOLS_MAKE_OPTS += \
+       ENABLE_FORCEFEEDBACK=1 \
+       SDL_CONFIG=$(STAGING_DIR)/usr/bin/sdl-config

package/linuxconsoletools/Config.in line 18

Quoted 7 lines
package/linuxconsoletools/Config.in new file +5 -0
+LINUXCONSOLETOOLS_DEPENDENCIES += sdl
+endif
+
+LINUXCONSOLETOOLS_MAKE_OPTS += CC=$(TARGET_CC)
+LINUXCONSOLETOOLS_MAKE_OPTS += CFLAGS="$(TARGET_CFLAGS)"

Both of those lines are not needed: CC and CFLAGS are already part of $(TARGET_CONFIGURE_OPTS), which you pass in the build and install commands.

Committed with those minor issues fixed. Thanks a lot for this contribution!

Best regards,

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
#3 lore raw

PATCH v2 1/1 linuxconsoletools: new package

Hello,

Quoted 6 lines · Koen Martens

Thanks, also for the small corrections. I must've missed a few things. This was my first attempt at contributing, from which I've learned quite a lot. So hopefully, I'll be able to contribute some more things in the near future and get it right the first time. It'll mostly be in the category 'old and ancient', given the kind of ancient hardware I'm currently working on :)

Thanks to you in the first place for contributing. Your future contributions are of course very welcome.

A last piece of advice: you should reply *below* and not *above* the text you're replying top. See top posting
(https://en.wikipedia.org/wiki/Posting_style#Top-posting) and bottom posting (https://en.wikipedia.org/wiki/Posting_style#Bottom-posting).
Bottom posting is the preferred posting style on open-source mailing lists.

Thanks again!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
#4 lore raw

PATCH v2 1/1 linuxconsoletools: new package

In reply to Thomas Petazzoni
Quoted 9 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Hello,

Quoted 5 lines · Koen Martens

Linuxconsoletools contains the inputattach utility to attach legacy serial devices to the Linux kernel input layer and joystick utilities to calibrate and test joysticks and joypads.

Quoted 8 lines
Quoted 6 lines

The buildroot package adds options to build only certain tools.

website: http://sf.net/projects/linuxconsole/

Thanks, I've applied, after doing a few minor tweaks. See below.

Sorry for the slow response, I only noticed the patch now.

We already have (an old version of) this code in the input-tools package, so the binaries here will conflict with those.

What is the way forward? Drop the old package and add Config.in.legacy handling for the old symbols?

Signature · 1 line
Bye, Peter Korsgaard
#5 lore raw

PATCH v2 1/1 linuxconsoletools: new package

Quoted 19 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni

Quoted 7 lines · <[email protected]> writes:

Hello,

Quoted 5 lines · Koen Martens

Linuxconsoletools contains the inputattach utility to attach legacy serial devices to the Linux kernel input layer and joystick utilities to calibrate and test joysticks and joypads.

Quoted 8 lines
Quoted 6 lines

The buildroot package adds options to build only certain tools.

website: http://sf.net/projects/linuxconsole/

Thanks, I've applied, after doing a few minor tweaks. See below.

Quoted 7 lines

Sorry for the slow response, I only noticed the patch now.

We already have (an old version of) this code in the input-tools package, so the binaries here will conflict with those.

What is the way forward? Drop the old package and add Config.in.legacy handling for the old symbols?

Oops, had i known I would have updated the existing package. That still is an option of course. Revert my patch and bring the input-tools package into 2017. Of course, my patch can install all tools from the upstream archive, whereas the input-tools only installs 3 of them. Also, with the old pkg we would end up with toggles for each individual tool if we want to stay in style.

Is there a specific reason the input-tools package uses the (renamed) debian tarball btw instead of the original upstream?

- Koen

Signature · 1 line
Sent from my Android device with K-9 Mail. Please excuse my brevity.
#6 lore raw

PATCH v2 1/1 linuxconsoletools: new package

In reply to Peter Korsgaard

Hello,

Quoted 16 lines · Peter Korsgaard
Quoted 7 lines

Hello,

Quoted 5 lines · Koen Martens

Linuxconsoletools contains the inputattach utility to attach legacy serial devices to the Linux kernel input layer and joystick utilities to calibrate and test joysticks and joypads.

Quoted 8 lines
Quoted 6 lines

The buildroot package adds options to build only certain tools.

website: http://sf.net/projects/linuxconsole/

Thanks, I've applied, after doing a few minor tweaks. See below.

Quoted 7 lines

Sorry for the slow response, I only noticed the patch now.

We already have (an old version of) this code in the input-tools package, so the binaries here will conflict with those.

What is the way forward? Drop the old package and add Config.in.legacy handling for the old symbols?

Thanks for pointing out, I didn't notice there was an overlap with our input-tools package. Our input-tools package references
http://linuxconsole.sourceforge.net/ as the upstream URL, which no longer exists, and fetches a Debian package from 2010 called joystick. All of this is a pretty confusing:

Buildroot package name != upstream URL project != Debian package name

Since linuxconsoletools provides the three utilities provided by input-tools, has a name matching the upstream project, and uses a more recent version, I would suggest to drop input-tools indeed, and add a Config.in.legacy option that automatically enables linuxconsoletools.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
#7 lore raw

PATCH v2 1/1 linuxconsoletools: new package

Quoted 11 lines
Quoted 4 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

What is the way forward? Drop the old package and add Config.in.legacy handling for the old symbols?

Thanks for pointing out, I didn't notice there was an overlap with our input-tools package. Our input-tools package references
http://linuxconsole.sourceforge.net/ as the upstream URL, which no longer exists, and fetches a Debian package from 2010 called joystick. All of this is a pretty confusing:

Quoted 6 lines

Buildroot package name != upstream URL project != Debian package name

Since linuxconsoletools provides the three utilities provided by input-tools, has a name matching the upstream project, and uses a more recent version, I would suggest to drop input-tools indeed, and add a Config.in.legacy option that automatically enables linuxconsoletools.

Yes, I agree - The input-tools package is very old and hasn't been updated in close to 10 years.

Will you send a patch to add the legacy handling or should I?

Signature · 1 line
Bye, Peter Korsgaard
#8 lore raw

PATCH v2 1/1 linuxconsoletools: new package

Hello,

Quoted 16 lines · Peter Korsgaard
Quoted 9 lines
Quoted 2 lines

What is the way forward? Drop the old package and add Config.in.legacy handling for the old symbols?

Thanks for pointing out, I didn't notice there was an overlap with our input-tools package. Our input-tools package references
http://linuxconsole.sourceforge.net/ as the upstream URL, which no longer exists, and fetches a Debian package from 2010 called joystick. All of this is a pretty confusing:

Quoted 6 lines

Buildroot package name != upstream URL project != Debian package name

Since linuxconsoletools provides the three utilities provided by input-tools, has a name matching the upstream project, and uses a more recent version, I would suggest to drop input-tools indeed, and add a Config.in.legacy option that automatically enables linuxconsoletools.

Quoted 4 lines

Yes, I agree - The input-tools package is very old and hasn't been updated in close to 10 years.

Will you send a patch to add the legacy handling or should I?

I wasn't planning on sending such a patch, so feel free to do it :)

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
#9 lore raw

PATCH v2 1/1 linuxconsoletools: new package

Quoted 6 lines · Thomas Petazzoni
Quoted 5 lines · Peter Korsgaard
Quoted 4 lines

Since linuxconsoletools provides the three utilities provided by input-tools, has a name matching the upstream project, and uses a more recent version, I would suggest to drop input-tools indeed, and add a Config.in.legacy option that automatically enables linuxconsoletools.

Quoted 6 lines
Quoted 4 lines

Yes, I agree - The input-tools package is very old and hasn't been updated in close to 10 years.

Will you send a patch to add the legacy handling or should I?

I wasn't planning on sending such a patch, so feel free to do it :)

If no-one beats me to it, i can create it tomorrow.

- Koen

#10 lore raw

PATCH v2 1/1 linuxconsoletools: new package

Quoted 7 lines · Koen Martens
Quoted 6 lines · Thomas Petazzoni
Quoted 5 lines · Peter Korsgaard
Quoted 4 lines

Since linuxconsoletools provides the three utilities provided by input-tools, has a name matching the upstream project, and uses a more recent version, I would suggest to drop input-tools indeed, and add a Config.in.legacy option that automatically enables linuxconsoletools.

Quoted 8 lines
Quoted 6 lines
Quoted 4 lines

Yes, I agree - The input-tools package is very old and hasn't been updated in close to 10 years.

Will you send a patch to add the legacy handling or should I?

I wasn't planning on sending such a patch, so feel free to do it :)

If no-one beats me to it, i can create it tomorrow.

Or today....

https://patchwork.ozlabs.org/patch/778450/

- Koen