Re: [GnomeMeeting-devel-list] Ekiga WIN32



Hello everybody,
as promised

On Monday 22 May 2006 14:11, Michael Rickmann wrote:
> and .... I will try to submit a solution to this list.

Here are my suggestions. Since I think that the Ekiga Win32 packaging deserves 
a bit more attention in CVS I have tried to change Ekiga's configuration 
files that they can be used for Linux and Win32 builds. Note: to build this 
you need a fairly recent intltool. I use intltool_0.35 from Ubuntu Dapper.
I put a few files into Ekiga's win32 directory. ekiga.ico, INSTALL_Gtk.txt 
(both exist for a long time), ekiga.rc (resource file from me, includes icon 
and stuffs information into the executable, right click and choose 
properties), Makefile (only compiles the resource). If you agree, please 
check ekiga.rc for political correctnes.

Changes to the configuration files:
configure.in:
I have introduced CVS_VERSION as a new AC_DEFINE variable because I think that 
we will need some means to identify the Win32 various Win32 executables which 
we are going to release. Via ekiga.rc it will end up in ekiga.exe.
Next, configure.in already contains code to identify the target-OS. I have 
moved this is to the begining of the file. Then all default config values, 
installation directories and subsequent checks can be handled OS specific 
(differences mainly for pwlib and opal). For checking the Opal version also 
in Win32 I had to extend the diff/opal_configure.ac for extracting the 
version.
Finally, Win32 installation of the translations must not have a DATADIRNAME 
directory.
help/Makefile.am:
As already reported to this list, I could not convince the included 
gnome-doc-utils.make to provide the manual in html or xhtml format. So I have 
created a new target doc-xhtml: and provided my rule, which converts the 
index.xml files to several xhtml files.
Makefile.am:
SUBDIRS additions win32 (resource), help (first stage, xml generation)
Legalism_DATA: I think files like Changelog, COPYING, LICENSE should be part 
of any distribution of a GNU program, also for Windows, so install them.
pixmaps/Makefile.am:
pixmap_DATA: We only need to install ekiga-logo.png here. The other image is 
already installed by Makefile.am to the correct place.
src/Makefile.am:
In Win32, we do not need ekiga-config-tool.
We have to link the resource object though.

This should releave the Win32 build process a bit and make the package more 
complete. For the
overall Makefile it means:
...
EKIGA_PREFIX = $(BUILDROOT)/dist/Ekiga
...
confekiga= $(confflags) --with-pwlib-dir=$(BUILDROOT) 
--with-opal-dir=$(BUILDROOT) \
	--prefix=$(EKIGA_PREFIX) --bindir=$(EKIGA_PREFIX) --datadir=$(EKIGA_PREFIX) \
	--sysconfdir=$(EKIGA_PREFIX) --libdir=$(EKIGA_PREFIX)
...
ekiga/config.status: ....
	.....
	(cd ekiga/;PATH=$(BUILDROOT)/bin:$(PATH) ACLOCAL_FLAGS="-I 
$(BUILDROOT)/share/aclocal" \
	./autogen.sh $(confekiga) 2>&1 | tee configure.log )
ekiga/src/ekiga.exe: binaries ekiga/config.status
	$(MAKE) -C ekiga $(MAKEOPTS) 2>&1 | tee make.log
	$(MAKE) -C ekiga/help doc-xhtml
dist/zips: .....
	-$(RM) -rf dist
	
	make -C ekiga install
	for lib in liblber.dll libldap_r.dll libxml2-2.dll ; do \
	install -m 755 bin/$$lib $(EKIGA_PREFIX) ;\
	done
	$(STRIP) $(EKIGA_PREFIX)/*.exe $(EKIGA_PREFIX)/*.dll
	install -m 755 bin/SDL.dll $(EKIGA_PREFIX)
	cp ekiga/win32/INSTALL_Gtk.txt dist
	.....

Files in the attachment as the last time when CVS had not branched yet.
Makefile : my current Makefile for the whole build, just for reference
win32 directory: goes into ekiga/win32
diff directory: 
  ekiga_pkgconfig.patch patches configure.in and the Makefile.am s
  resulting configure.in for better readability
  opal_configure.ac, version extracting

To check linux compatibility I have applied the build ekiga_pkgconfig.patch to 
ekiga-cvs, build a package for Ubuntu and tested it. To build (patch applied 
or not) I had to downgrade intltool again.
Regards
Michael

Attachment: buildiff.tar.gz
Description: application/tgz



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]