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