[ekiga/gnome-2-26] [windows] Allow to create executable from release or from git/svn
- From: Eugen Dedu <ededu src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [ekiga/gnome-2-26] [windows] Allow to create executable from release or from git/svn
- Date: Fri, 16 Apr 2010 18:57:54 +0000 (UTC)
commit c3d09faef26fc8dabba08b15ceecfd897608aa37
Author: Eugen Dedu <Eugen Dedu pu-pm univ-fcomte fr>
Date: Fri Apr 16 20:56:50 2010 +0200
[windows] Allow to create executable from release or from git/svn
win32/Makefile | 114 +++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 85 insertions(+), 29 deletions(-)
---
diff --git a/win32/Makefile b/win32/Makefile
index fdc7aa6..ed5946d 100644
--- a/win32/Makefile
+++ b/win32/Makefile
@@ -1,6 +1,9 @@
#!/usr/bin/make -f
-DEBUG := 1 # 0=release, 1=debug version
+# RELEASE: 0=from git/svn, 1=release (tar.gz) for ekiga, ptlib and opal
+RELEASE := 1
+# DEBUG: 0=release, 1=debug version
+DEBUG := 1
MAKEFLAGS :=
MAKEOPTS := $(MAKEFLAGS)
MAKE_LIB_OPTS:=$(MAKEFLAGS)
@@ -60,38 +63,59 @@ export PATH:=$(BINDIR):$(PATH)
export LDD:=$(BUILDROOT)/$(HOST_TOOL_PREFIX)-ldd.sh
-GIT_EKIGA_REV = reset --hard HEAD
-#GIT_EKIGA_REV = checkout -b gnome-2-26 origin/gnome-2-26
-EKIGA_URL = git://git.gnome.org/ekiga
-EKIGA_ARCHIVE := ekiga
-EKIGA_DIR = $(BUILDROOT)/ekiga
+ifeq ($(RELEASE),1)
+ EKIGA_VER := 3.2.6
+ EKIGA_URL := http://ftp.gnome.org/pub/gnome/sources/ekiga/3.2
+ EKIGA_ARCHIVE := ekiga-$(EKIGA_VER).tar.gz
+ EKIGA_DIR := $(BUILDROOT)/ekiga-$(EKIGA_VER)
+else
+ #GIT_EKIGA_REV = reset --hard HEAD
+ GIT_EKIGA_REV = checkout -b gnome-2-26 origin/gnome-2-26
+ EKIGA_URL = git://git.gnome.org/ekiga
+ EKIGA_ARCHIVE := ekiga
+ EKIGA_DIR = $(BUILDROOT)/ekiga
+ EKIGA_VER := $(strip $(shell grep AC_INIT $(SRCDIR)/$(EKIGA_ARCHIVE)/configure.ac | awk 'BEGIN { FS = "," } ; { print $$2 }'))
+ EKIGA_REV := $(strip $(shell (cd $(SRCDIR)/$(EKIGA_ARCHIVE); git describe | awk 'BEGIN { FS = "-" } ; { print $$2 "_" $$3 }' )))
+ifneq ($(EKIGA_REV),)
+ EKIGA_VER := $(EKIGA_VER)-git-$(EKIGA_REV)
+endif
+endif
EKIGA_PREFIX:= $(TARGETDIR)/Ekiga
+EKIGA_INSTALLER := ekiga-setup-$(EKIGA_VER).exe
EKIGA_WIN32_DIR := $(CURDIR)
EKIGA_WIN32_DIFF_DIR := $(EKIGA_WIN32_DIR)/diff
EKIGA_INSTALLER_DIR := $(BUILDROOT)/nsisinstaller
-EKIGA_VER := $(strip $(shell grep AC_INIT $(SRCDIR)/$(EKIGA_ARCHIVE)/configure.ac | awk 'BEGIN { FS = "," } ; { print $$2 }'))
-EKIGA_REV := $(strip $(shell (cd $(SRCDIR)/$(EKIGA_ARCHIVE); git describe | awk 'BEGIN { FS = "-" } ; { print $$2 "_" $$3 }' )))
-ifneq ($(EKIGA_REV),)
- EKIGA_VER := $(EKIGA_VER)-git-$(EKIGA_REV)
-endif
-EKIGA_INSTALLER := ekiga-setup-$(EKIGA_VER).exe
-OPAL_VER:= 3.4.1
-OPAL_REV:= HEAD
-OPAL_URL:= https://opalvoip.svn.sourceforge.net/svnroot/opalvoip/opal/tags/v3_4_1
-OPAL_ARCHIVE := opal
-OPAL_DIR:= $(BUILDROOT)/opal
+ifeq ($(RELEASE),1)
+ OPAL_VER := 3.6.6
+ OPAL_URL := http://ftp.gnome.org/pub/gnome/sources/opal/3.6
+ OPAL_ARCHIVE := opal-$(OPAL_VER).tar.gz
+ OPAL_DIR := $(BUILDROOT)/opal-$(OPAL_VER)
+else
+ # OPAL_REV: HEAD or revision number
+ OPAL_REV := HEAD
+ OPAL_URL := https://opalvoip.svn.sourceforge.net/svnroot/opalvoip/opal/branches/v3_6
+ OPAL_ARCHIVE := opal
+ OPAL_DIR := $(BUILDROOT)/opal
+endif
ifeq ($(DEBUG),1)
OPAL_LIB := libopal_d_s.a
else
OPAL_LIB := libopal_s.a
endif
-PTLIB_VER:= 2.4.1
-PTLIB_REV:= HEAD
-PTLIB_URL:= https://opalvoip.svn.sourceforge.net/svnroot/opalvoip/ptlib/tags/v2_4_1
-PTLIB_DIR:= $(BUILDROOT)/ptlib
-PTLIB_ARCHIVE := ptlib
+ifeq ($(RELEASE),1)
+ PTLIB_VER:= 2.6.5
+ PTLIB_URL := http://ftp.gnome.org/pub/gnome/sources/ptlib/2.6
+ PTLIB_ARCHIVE := ptlib-$(PTLIB_VER).tar.gz
+ PTLIB_DIR := $(BUILDROOT)/ptlib-$(PTLIB_VER)
+else
+ # PTLIB_REV: HEAD or revision number
+ PTLIB_REV := HEAD
+ PTLIB_URL := https://opalvoip.svn.sourceforge.net/svnroot/opalvoip/ptlib/branches/v2_6
+ PTLIB_ARCHIVE := ptlib
+ PTLIB_DIR := $(BUILDROOT)/ptlib
+endif
ifeq ($(DEBUG),1)
PTLIB_LIB := libpt_d_s.a
else
@@ -347,12 +371,20 @@ $(LIBDIR)/libldap.dll: binaries $(OPENLDAP_DIR)/config.status
### PTLib
update-sources::
- @echo --- Getting PTLib $(PTLIB_REV) ...
+ @echo --- Getting PTLib ...
+ifeq ($(RELEASE),1)
+ $(WGET) -P $(SRCDIR) $(PTLIB_URL)/$(PTLIB_ARCHIVE)
+else
$(SVN) co $(PTLIB_URL) $(SRCDIR)/$(PTLIB_ARCHIVE) -r $(PTLIB_REV)
+endif
$(PTLIB_DIR)/configure: binaries $(LIBDIR)/libldap.dll $(LIBDIR)/libogg.a $(LIBDIR)/libspeex.a $(SRCDIR)/$(PTLIB_ARCHIVE) $(LIBDIR)/libexpat.a
rm -rf $(PTLIB_DIR) $(LIBDIR)/$(PTLIB_LIB) $(INCLUDEDIR)/ptclib $(INCLUDEDIR)/ptlib
+ifeq ($(RELEASE),1)
+ tar xfz $(SRCDIR)/$(PTLIB_ARCHIVE) -C $(BUILDROOT)
+else
$(CP) -r $(SRCDIR)/$(PTLIB_ARCHIVE) $(PTLIB_DIR)
+endif
$(PTLIB_DIR)/config.status: binaries $(PTLIB_DIR)/configure
rm -f $(LIBDIR)/$(PTLIB_LIB)
@@ -458,12 +490,20 @@ $(LIBDIR)/libtheora.a: $(THEORA_DIR)/config.status
### OPAL
update-sources::
- @echo --- Getting OPAL $(OPAL_REV)...
+ @echo --- Getting OPAL ...
+ifeq ($(RELEASE),1)
+ $(WGET) -P $(SRCDIR) $(OPAL_URL)/$(OPAL_ARCHIVE)
+else
$(SVN) co $(OPAL_URL) $(SRCDIR)/$(OPAL_ARCHIVE) -r $(OPAL_REV)
+endif
$(OPAL_DIR)/configure: binaries $(LIBDIR)/libogg.a $(LIBDIR)/libspeex.a $(LIBDIR)/$(PTLIB_LIB) $(SRCDIR)/$(OPAL_ARCHIVE) $(BINDIR)/avcodec.dll $(LIBDIR)/libx264.a $(LIBDIR)/libtheora.a
rm -rf $(OPAL_DIR) $(LIBDIR)/$(OPAL_LIB) $(INCLUDEDIR)/opal
+ifeq ($(RELEASE),1)
+ tar xfz $(SRCDIR)/$(OPAL_ARCHIVE) -C $(BUILDROOT)
+else
$(CP) -r $(SRCDIR)/$(OPAL_ARCHIVE) $(OPAL_DIR)
+endif
$(OPAL_DIR)/config.status: binaries $(OPAL_DIR)/configure
rm -f $(LIBDIR)/$(OPAL_LIB)
@@ -589,25 +629,41 @@ $(LIBDIR)/libxml2.a: binaries $(XML2_DIR)/config.status
$(MAKE) $(MAKEOPTS) -C $(XML2_DIR) install
### GnomeMeeting / Ekiga
-update-sources::
+update-sources2::
@echo --- Getting Ekiga ...
+ifeq ($(RELEASE),1)
+ $(WGET) -P $(SRCDIR) $(EKIGA_URL)/$(EKIGA_ARCHIVE)
+else
+ifeq ($(wildcard $(SRCDIR)/$(EKIGA_ARCHIVE)), )
$(GIT) clone $(EKIGA_URL) $(SRCDIR)/$(EKIGA_ARCHIVE)
+ # switch to branch
+ cd $(SRCDIR)/$(EKIGA_ARCHIVE); git $(GIT_EKIGA_REV)
+else
+ cd $(SRCDIR)/$(EKIGA_ARCHIVE); $(GIT) pull
+endif
+endif
-$(EKIGA_DIR)/autogen.sh: binaries $(SRCDIR)/$(EKIGA_ARCHIVE)
+$(EKIGA_DIR)/configure: binaries $(SRCDIR)/$(EKIGA_ARCHIVE)
rm -rf $(EKIGA_DIR)
+ifeq ($(RELEASE),1)
+ tar xfz $(SRCDIR)/$(EKIGA_ARCHIVE) -C $(BUILDROOT)
+else
$(CP) -r $(SRCDIR)/$(EKIGA_ARCHIVE) $(EKIGA_DIR)
+ cd $(EKIGA_DIR); NOCONFIGURE=1 ./autogen.sh # generate configure
+endif
touch $@
-$(EKIGA_DIR)/config.status: binaries $(EKIGA_DIR)/autogen.sh $(LIBDIR)/$(PTLIB_LIB) $(LIBDIR)/$(OPAL_LIB) \
+$(EKIGA_DIR)/config.status: binaries $(EKIGA_DIR)/configure $(LIBDIR)/$(PTLIB_LIB) $(LIBDIR)/$(OPAL_LIB) \
$(LIBDIR)/pkgconfig/gtk+-2.0.pc $(LIBDIR)/pkgconfig/atk-2.0.pc $(LIBDIR)/pkgconfig/glib-2.0.pc \
$(LIBDIR)/libpng.a $(LIBDIR)/pkgconfig/pango32.pc $(LIBDIR)/pkgconfig/cairo.pc $(LIBDIR)/libxml2.a \
$(LIBDIR)/libintl.a $(LIBDIR)/libiconv.a $(LIBDIR)/libsigc++.a
rm -f $(EKIGA_DIR)/src/ekiga.exe
ifeq ($(DEBUG),1)
- cd $(EKIGA_DIR); ACLOCAL_FLAGS="-I $(BUILDROOT)/share/aclocal"; ./autogen.sh $(confekiga) --enable-debug
+ cd $(EKIGA_DIR); ACLOCAL_FLAGS="-I $(BUILDROOT)/share/aclocal"; ./configure $(confekiga) --enable-opal-debug
else
- cd $(EKIGA_DIR); ACLOCAL_FLAGS="-I $(BUILDROOT)/share/aclocal"; ./autogen.sh $(confekiga)
+ cd $(EKIGA_DIR); ACLOCAL_FLAGS="-I $(BUILDROOT)/share/aclocal"; ./configure $(confekiga)
endif
+
$(EKIGA_DIR)/src/ekiga.exe: binaries $(EKIGA_DIR)/config.status
$(MAKE) $(MAKEOPTS) -C $(EKIGA_DIR)
$(MAKE) $(MAKEOPTS) -C $(EKIGA_DIR)/help
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]