Hi Ping

2011/3/12 Ping Cheng <pingli...@gmail.com>:
> Do you mind testing the patch and sending a "Tested-by" to the list if it
> does the job for you?

Thanks for the notice, I did not yet completely understand how the
development for xf86-input-wacom works. Apparently the patches are not
only for documentation purposes, but mainly for reviewing.

I tested the patch (including the modified AM_CFLAGS line) on tag
xf86-input-wacom-0.10.11 (8cdf444fd1f4004b5a0d237b26ebcd72900338c4)
and it works as expected. Before the patch "wacom_drv.so" crashes,
after the patch it works. On current HEAD of master
(676b25e5ec5eb70d45d3228b28bef5c8a68ab7f6) the patch does also work,
but as expected, no behavioral difference in the resulting
"wacom_drv.so" with and without patch can be seen.

One thing I can notice is that nothing in the "test" directory is
built automatically when doing make in the root directory. A "make
wacom-tests" in "test" does work though. While not having much clue
about the automake syntax, to me the patch seems also to be OK on the
functional level.

Tested-by: Eduard Hasenleithner <ehase...@gmail.com>

> On Wed, Mar 9, 2011 at 4:20 PM, Peter Hutterer <peter.hutte...@who-t.net>
> wrote:
>>
>> test/Makefile.am included src/Makefile.am for the driver sources. However,
>> that also lead to the driver being built twice, once in src/ and once in
>> test/. On make install, test/wacom_drv.so would overwrite the
>> src/wacom_drv.so and thus install a driver with all static symbols
>> compiled
>> as non-static.
>>
>> This caused the VCOPY bug worked around in
>> 9d227cd0bd985e7dcb7923974361145ba1d78713.
>>
>> Avoid this by moving the sources into a shared included Makefile and build
>> an independent libwacom-test.la in the test directory.
>>
>> Reported-by: Eduard Hasenleithner <ehase...@gmail.com>
>> Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
>> ---
>>
>> Thank you for investigating this, much appreciated. I was wondering why
>> 9d227 was necessary, id didn't really make sense at the time.
>> This one should do the job now.
>>
>>  src/Makefile.am  |   16 +++-------------
>>  src/common.mk    |   15 +++++++++++++++
>>  test/Makefile.am |   11 ++++++-----
>>  3 files changed, 24 insertions(+), 18 deletions(-)
>>  create mode 100644 src/common.mk
>>
>> diff --git a/src/Makefile.am b/src/Makefile.am
>> index f3b9a5f..7d6ecf5 100644
>> --- a/src/Makefile.am
>> +++ b/src/Makefile.am
>> @@ -25,6 +25,8 @@
>>  # _ladir passes a dummy rpath to libtool so the thing will actually link
>>  # TODO: -nostdlib/-Bstatic/-lgcc platform magic, not installing the .a,
>> etc.
>>
>> +include common.mk
>> +
>>  @DRIVER_NAME@_drv_la_LTLIBRARIES = @DRIVER_NAME@_drv.la
>>  @DRIVER_NAME@_drv_la_LDFLAGS = -module -avoid-version
>>  @DRIVER_NAME@_drv_ladir = @inputdir@
>> @@ -32,16 +34,4 @@
>>  AM_CPPFLAGS=-I$(top_srcdir)/include/
>>  AM_CFLAGS = $(XORG_CFLAGS) $(CWARNFLAGS)
>>
>> -@DRIVER_NAME@_drv_la_SOURCES = \
>> -       $(top_srcdir)/src/xf86Wacom.c \
>> -       $(top_srcdir)/src/xf86Wacom.h \
>> -       $(top_srcdir)/src/wcmCommon.c \
>> -       $(top_srcdir)/src/wcmConfig.c \
>> -       $(top_srcdir)/src/wcmISDV4.c \
>> -       $(top_srcdir)/src/wcmFilter.c \
>> -       $(top_srcdir)/src/wcmFilter.h \
>> -       $(top_srcdir)/src/xf86WacomDefs.h \
>> -       $(top_srcdir)/src/wcmUSB.c \
>> -       $(top_srcdir)/src/wcmXCommand.c \
>> -       $(top_srcdir)/src/wcmValidateDevice.c \
>> -       $(top_srcdir)/src/wcmTouchFilter.c
>> +@DRIVER_NAME@_drv_la_SOURCES = $(DRIVER_SOURCES)
>> diff --git a/src/common.mk b/src/common.mk
>> new file mode 100644
>> index 0000000..fae8d9f
>> --- /dev/null
>> +++ b/src/common.mk
>> @@ -0,0 +1,15 @@
>> +# shared makefile between src/Makefile.am and test/Makefile.am
>> +
>> +DRIVER_SOURCES= \
>> +       $(top_srcdir)/src/xf86Wacom.c \
>> +       $(top_srcdir)/src/xf86Wacom.h \
>> +       $(top_srcdir)/src/wcmCommon.c \
>> +       $(top_srcdir)/src/wcmConfig.c \
>> +       $(top_srcdir)/src/wcmISDV4.c \
>> +       $(top_srcdir)/src/wcmFilter.c \
>> +       $(top_srcdir)/src/wcmFilter.h \
>> +       $(top_srcdir)/src/xf86WacomDefs.h \
>> +       $(top_srcdir)/src/wcmUSB.c \
>> +       $(top_srcdir)/src/wcmXCommand.c \
>> +       $(top_srcdir)/src/wcmValidateDevice.c \
>> +       $(top_srcdir)/src/wcmTouchFilter.c
>> diff --git a/test/Makefile.am b/test/Makefile.am
>> index 1898fe3..5710bb8 100644
>> --- a/test/Makefile.am
>> +++ b/test/Makefile.am
>> @@ -1,15 +1,16 @@
>>  if UNITTESTS
>> -include ../src/Makefile.am
>> +include ../src/common.mk
>>
>>  check_PROGRAMS = wacom-tests
>> -check_LTLIBRARRIES = @DRIVER_NAME@_drv.la
>> -@DRIVER_NAME@_drv_la_CFLAGS = -DDISABLE_STATIC -I$(top_srcdir)/src
>> $(XORG_CFLAGS) $(CWARNFLAGS) -fvisibility=default
>> +check_LTLIBRARIES = libwacom-test.la
>> +libwacom_test_la_SOURCES =$(DRIVER_SOURCES)
>> +libwacom_test_la_CFLAGS = -DDISABLE_STATIC -I$(top_srcdir)/src
>> $(XORG_CFLAGS) $(CWARNFLAGS) -fvisibility=default
>>
>>  TESTS=$(check_PROGRAMS)
>>
>>  INCLUDES = -I$(top_srcdir)/src
>> -AM_CFLAGS += $(GLIB_CFLAGS)
>> -TEST_LDADD=$(GLIB_LIBS) @DRIVER_NAME@_drv.la
>> +AM_CFLAGS = $(GLIB_CFLAGS)
>> +TEST_LDADD=$(GLIB_LIBS) libwacom-test.la
>>  COMMON_SOURCES=fake-symbols.c fake-symbols.h
>>
>>  wacom_tests_LDADD=$(TEST_LDADD)
>> --
>> 1.7.4
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Colocation vs. Managed Hosting
>> A question and answer guide to determining the best fit
>> for your organization - today and in the future.
>> http://p.sf.net/sfu/internap-sfd2d
>> _______________________________________________
>> Linuxwacom-devel mailing list
>> Linuxwacom-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel
>
>

------------------------------------------------------------------------------
Colocation vs. Managed Hosting
A question and answer guide to determining the best fit
for your organization - today and in the future.
http://p.sf.net/sfu/internap-sfd2d
_______________________________________________
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

Reply via email to