On Tue, Aug 23, 2011 at 12:50:52PM -0500, DRC wrote: > On 8/17/11 4:01 PM, Martin Koegler wrote: > > First of all, Makefile.am is missing some include path, so that a out of > > source tree build fails (xserver 1.7): > > --- tigervnc-1.0.1.svn0.orig/unix/xserver/hw/vnc/Makefile.am > > +++ tigervnc-1.0.1.svn0/unix/xserver/hw/vnc/Makefile.am > > @@ -17,7 +17,8 @@ libvnccommon_la_SOURCES = $(HDRS) vncExt > > > > libvnccommon_la_CPPFLAGS = -DVENDOR_RELEASE="$(VENDOR_RELEASE)" \ > > -DVENDOR_STRING="\"$(VENDOR_STRING)\"" -I$(TIGERVNC_SRCDIR)/common > > -UHAVE_CONFIG_H \ > > - -I$(TIGERVNC_SRCDIR)/unix/vncconfig $(XVNC_CPPFLAGS) > > -I$(includedir)/pixman-1 -I$(includedir) > > + -I$(TIGERVNC_SRCDIR)/unix/vncconfig $(XVNC_CPPFLAGS) > > -I$(includedir)/pixman-1 -I$(includedir) \ > > + -I$(top_srcdir)/include > > > > bin_PROGRAMS = Xvnc > > > > @@ -49,6 +50,7 @@ libvnc_la_CPPFLAGS = $(XVNC_CPPFLAGS) -I > > -I$(top_srcdir)/hw/xfree86/common \ > > -I$(top_srcdir)/hw/xfree86/os-support \ > > -I$(top_srcdir)/hw/xfree86/os-support/bus \ > > + -I$(top_srcdir)/include \ > > -I$(includedir)/pixman-1 -I$(includedir) > > > > libvnc_la_LDFLAGS = -module -avoid-version > > > > My second problem is, that it seems no longer possible to build the vnc > > module. Linking the > > vnc module for the Xserver leads to an linker error, because cmake only > > generates non-PIC object files (eg libnetwork). > > autotools+libtool did this automatically. > > Martin, > > I'll ask again. How are you building vnc.so?
I'm trying to build a debian package for tigervnc reusing the distribution xserver sources. To your commited build options patch: In my case, I put the xserver sources under the tigervnc sources (unix/xserver-XXX) and build the X server in the cmake build directory too (seperate directories for xserver sources/binaries). The build system only add ../../include [include of the build directory], not include of the xserver sources. XSERVERLIBS_CFLAGS does not contains this include directory, therefore my build still fails. I'm missing $(top_srcdir)/include in the include path. Just for the reference, my current debian/rules: #!/usr/bin/make -f include /usr/share/cdbs/1/rules/debhelper.mk include /usr/share/cdbs/1/class/cmake.mk include /usr/share/cdbs/1/rules/utils.mk DEB_CMAKE_EXTRA_FLAGS := -DENABLE_GNUTLS=ON XSERVER_VERSION=1.7.7 XSERVER_DIR=$(CURDIR)/unix/xorg-server-$(XSERVER_VERSION) XSERVER_BUILD_DIR=$(DEB_BUILDDIR)/unix/xorg-server-$(XSERVER_VERSION) extract-xserver-stamp: xserver/xorg-server_$(XSERVER_VERSION).orig.tar.gz $(wildcard xserver/xorg-server_$(XSERVER_VERISON)-*.diff) unix/xserver17.patch rm -rf $(XSERVER_DIR) cd unix && tar xzf ../xserver/xorg-server_$(XSERVER_VERSION).orig.tar.gz cd $(XSERVER_DIR) && patch -p1 < ../../$(wildcard xserver/xorg-server_$(XSERVER_VERSION)-*.diff) QUILT_PATCHES=$(XSERVER_DIR)/debian/patches QUILT_SERIES=$(XSERVER_DIR)/debian/patches/series quilt import unix/xserver17.patch cd $(XSERVER_DIR) && QUILT_PATCHES=debian/patches QUILT_SERIES=debian/patches/series quilt push -a touch extract-xserver-stamp update-xserver-stamp: extract-xserver-stamp $(wildcard unix/xserver/hw/vnc/*) rm -rf $(XSERVER_DIR)/hw/vnc cp -r unix/xserver/hw $(XSERVER_DIR) touch update-xserver-stamp configure-xserver-stamp: update-xserver-stamp cd $(XSERVER_DIR) && autoreconf -i mkdir -p $(XSERVER_BUILD_DIR) cd $(XSERVER_BUILD_DIR) && $(XSERVER_DIR)/configure \ --prefix=/usr \ --mandir=\$${prefix}/share/man \ --infodir=\$${prefix}/share/info \ --sysconfdir=/etc \ --localstatedir=/var \ --disable-static \ --without-dtrace \ --disable-werror \ --disable-debug \ --disable-unit-tests \ --with-int10=x86emu \ --with-xkb-path=/usr/share/X11/xkb \ --with-xkb-output=/var/lib/xkb \ --with-default-xkb-rules=evdev \ --disable-builddocs \ --disable-install-libxf86config \ --disable-null-root-cursor \ --enable-mitshm \ --enable-xres \ --disable-xcsecurity \ --disable-xcalibrate \ --disable-tslib \ --disable-multibuffer \ --enable-dbe \ --disable-xf86bigfont \ --enable-dpms \ --disable-config-udev --disable-config-hal \ --disable-xorg \ --disable-xquartz \ --disable-xwin \ --disable-xsdl \ --disable-xfake \ --disable-install-setuid \ --with-default-font-path="/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,built-ins" \ --enable-aiglx \ --enable-glx-tls \ --enable-registry \ --enable-composite \ --enable-record \ --enable-xv \ --enable-xvmc \ --enable-dga \ --enable-screensaver \ --enable-xdmcp \ --enable-xdm-auth-1 \ --enable-glx \ --enable-xinerama \ --enable-xace \ --disable-dmx \ --disable-xvfb \ --disable-xnest \ --disable-kdrive \ --disable-xephyr \ --disable-xfbdev \ --enable-xselinux \ --with-sha1=libgcrypt \ --enable-xcsecurity touch configure-xserver-stamp build/tigervncserver:: configure-xserver-stamp make -C $(XSERVER_BUILD_DIR) install/tigervncserver:: make -C $(XSERVER_BUILD_DIR) install DESTDIR=$(CURDIR)/debian/tmp/ rename "s/vnc/tigervnc/;" debian/tmp/usr/bin/* debian/tmp/usr/share/man/man1/* clean:: rm -rf $(XSERVER_DIR) rm -rf $(XSERVER_BUILD_DIR) rm -rf extract-xserver-stamp update-xserver-stamp configure-xserver-stamp ------------------------------------------------------------------------------ EMC VNX: the world's simplest storage, starting under $10K The only unified storage solution that offers unified management Up to 160% more powerful than alternatives and 25% more efficient. Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev _______________________________________________ Tigervnc-devel mailing list Tigervnc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tigervnc-devel