]> sjero.net Git - linphone/blobdiff - Makefile.am
Aac-eld add missing header according to RFC3640 3.3.6
[linphone] / Makefile.am
index a1cd5594e364052b7282facd35f54e048c4b6dce..36466ab9eea510178a15a584255a085de5c31d2a 100644 (file)
@@ -4,7 +4,7 @@
 ACLOCAL_AMFLAGS = -I m4 $(ACLOCAL_MACOS_FLAGS)
 
 SUBDIRS = build m4 pixmaps po @ORTP_DIR@ @MS2_DIR@ \
-               coreapi console gtk share scripts
+               coreapi console gtk share scripts tools
 
 
 
@@ -18,13 +18,13 @@ OPTIONAL_SOUNDS=\
                share/sounds/linphone/rings/rock.wav
 
 
-INSTALLDIR=$(shell cd $(top_builddir) && pwd)/linphone-install
+INSTALLDIR=$(abs_top_builddir)/linphone-install
 INSTALLDIR_WITH_PREFIX=$(INSTALLDIR)/$(prefix)
-ZIPFILE=$(shell cd $(top_builddir) && pwd)/$(PACKAGE)-win32-$(VERSION).zip
+ZIPFILE=$(abs_top_builddir)/$(PACKAGE)-win32-$(VERSION).zip
 ZIP_EXCLUDED=include lib \
                $(OPTIONAL_SOUNDS)
 
-SDK_ZIPFILE=$(shell cd $(top_builddir) && pwd)/lib$(PACKAGE)-win32-$(VERSION).zip
+SDK_ZIPFILE=$(abs_top_builddir)/lib$(PACKAGE)-win32-$(VERSION).zip
 SDK_EXCLUDED= \
        bin/linphone.exe \
        lib/*.la \
@@ -38,26 +38,27 @@ SDK_EXCLUDED= \
 GTK_PREFIX=/
 GTK_THEME=Outcrop
 GTK_FILELIST=gtk+-2.22.1.filelist
-GTK_FILELIST_PATH=$(shell cd $(top_srcdir) && pwd)/$(GTK_FILELIST)
+GTK_FILELIST_PATH=$(abs_top_srcdir)/$(GTK_FILELIST)
 LINPHONEDEPS_FILELIST=linphone-deps.filelist
-WINBINDIST_FILES=$(shell cat $(top_srcdir)/$(LINPHONEDEPS_FILELIST))
+WINBINDIST_FILES=`cat $(abs_top_srcdir)/$(LINPHONEDEPS_FILELIST)`
 ISS_SCRIPT=linphone.iss
-ISS_SCRIPT_PATH=$(shell cd $(top_srcdir) && pwd)/$(ISS_SCRIPT)
+ISS_SCRIPT_PATH=$(abs_top_srcdir)/$(ISS_SCRIPT)
 #path to Inno Setup 5 compiler
 ISCC=ISCC.exe
 PACKAGE_WIN32_FILELIST=$(PACKAGE)-win32.filelist
 PACKAGE_BUNDLE_FILE=$(top_srcdir)/build/macos/$(PACKAGE).bundle
 
-EXTRA_DIST = config.rpath  BUGS linphone.kdevelop  \
-                               README.arm \
-                               README.mingw \
-                               README.macos \
-                               autogen.sh \
-                               linphone.spec.in \
-                               $(GTK_FILELIST) \
-                               gen-gtkfilelist.sh \
-                               $(LINPHONEDEPS_FILELIST) \
-                               $(ISS_SCRIPT).in
+EXTRA_DIST =           BUGS  \
+                       README.arm \
+                       README.mingw \
+                       README.macos \
+                       autogen.sh \
+                       linphone.spec \
+                       linphone.spec.in \
+                       $(GTK_FILELIST) \
+                       gen-gtkfilelist.sh \
+                       $(LINPHONEDEPS_FILELIST) \
+                       $(ISS_SCRIPT).in
 
 DISTCLEANFILES= $(ISS_SCRIPT) $(PACKAGE_WIN32_FILELIST)
 
@@ -69,31 +70,39 @@ all-local: linphone.spec linphone.iss
 
 linphone.spec: linphone.spec.in
 
-.phony: rpm
-rpm:
+.phony: rpm rpm-novideo rpm-base
+rpm-base:
        $(MAKE) dist
-       cd oRTP && $(MAKE) dist && mv -f ortp*.tar.gz ../
-       cd mediastreamer2 && $(MAKE) dist && mv -f mediastreamer*.tar.gz ../
-# Create "Specfile" at the same level as the tarball content
        -rm -f $(PACKAGE)-$(VERSION).tar
        gunzip $(PACKAGE)-$(VERSION).tar.gz
-       cp $(PACKAGE).spec Specfile
-       tar --append --file=$(PACKAGE)-$(VERSION).tar Specfile
+#remove ms2 and ortp spec file to make sure linphone spec file is used bu rpmbuild
+       tar --delete --file=$(PACKAGE)-$(VERSION).tar $(PACKAGE)-$(VERSION)/mediastreamer2/mediastreamer2.spec
+       tar --delete --file=$(PACKAGE)-$(VERSION).tar $(PACKAGE)-$(VERSION)/oRTP/ortp.spec
        gzip $(PACKAGE)-$(VERSION).tar
+
+rpm: rpm-base
 # <https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=2068410>
        TAR_OPTIONS=--wildcards rpmbuild -ta --clean --rmsource --rmspec $(PACKAGE)-$(VERSION).tar.gz
 
+rpm-novideo: rpm-base
+# <https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=2068410>
+       TAR_OPTIONS=--wildcards rpmbuild -ta --clean --rmsource --rmspec $(PACKAGE)-$(VERSION).tar.gz --without video
+
 #a zip containing win32 binaries, suitable to generate an installer
 
 if BUILD_ZRTP
 WINBINDIST_FILES+=./bin/libzrtpcpp.dll ./bin/msys-1.0.dll ./bin/msys-crypto-1.0.0.dll
 endif
 
+if BUILD_TUNNEL
+WINBINDIST_FILES+=./bin/libtunnel-0.dll
+endif
+
 other-cherrypick:
        cd $(GTK_PREFIX) && \
        for file in $(WINBINDIST_FILES) ; do \
                if test -d $$file; then \
-                       mkdir -p $(INSTALLDIR_WITH_PREFIX)/$$file ;\
+                       $(MKDIR_P) $(INSTALLDIR_WITH_PREFIX)/$$file ;\
                else \
                        cp $$file $(INSTALLDIR_WITH_PREFIX)/$$file ;\
                fi \
@@ -110,18 +119,18 @@ gtk-cherrypick:
        cd $(GTK_PREFIX) && \
        for file in `cat $(GTK_FILELIST_PATH)` ; do \
                if test -d $$file; then \
-                       mkdir -p $(INSTALLDIR_WITH_PREFIX)/$$file ;\
+                       $(MKDIR_P) $(INSTALLDIR_WITH_PREFIX)/$$file ;\
                else \
                        cp $$file $(INSTALLDIR_WITH_PREFIX)/$$file ;\
                fi \
        done && \
-       mkdir -p  $(INSTALLDIR_WITH_PREFIX)/share/themes && \
+       $(MKDIR_P) $(INSTALLDIR_WITH_PREFIX)/share/themes && \
        cp -rf share/themes/$(GTK_THEME) $(INSTALLDIR_WITH_PREFIX)/share/themes/.
 
 zip:
        rm -f $(ZIPFILE)
        rm -rf $(INSTALLDIR)
-       mkdir -p $(INSTALLDIR)
+       $(MKDIR_P) $(INSTALLDIR)
        make install DESTDIR=$(INSTALLDIR)
 #remove unwanted linphone stuff
        cd $(INSTALLDIR_WITH_PREFIX) && rm -rf $(ZIP_EXCLUDED)
@@ -136,7 +145,7 @@ zip:
 sdk:
        rm -f $(SDK_ZIPFILE)
        rm -rf $(INSTALLDIR)
-       mkdir -p $(INSTALLDIR)
+       $(MKDIR_P) $(INSTALLDIR)
        make install DESTDIR=$(INSTALLDIR)
 # remove unwanted stuff (gtk interface)
        cd $(INSTALLDIR_WITH_PREFIX) && rm -rf $(SDK_EXCLUDED)
@@ -155,6 +164,9 @@ filelist: zip
                fi \
        done
 
+
+### WINDOWS
+
 setup.exe: filelist
        cp $(ISS_SCRIPT) $(INSTALLDIR_WITH_PREFIX)/.
        cd $(INSTALLDIR_WITH_PREFIX) && \
@@ -164,16 +176,18 @@ setup.exe: filelist
        rm -f $(INSTALLDIR_WITH_PREFIX)/$(PACKAGE_WIN32_FILELIST)
        rm -f $(INSTALLDIR_WITH_PREFIX)/$(ISS_SCRIPT)
 
+###
+
 newdate:
        cd gtk && $(MAKE) newdate
 
 if HAVE_MD5SUM
-GEN_MD5=$(shell $(MD5SUM) linphone-$(VERSION).tar.gz | awk {'print $$4'})
+GEN_MD5=`$(MD5SUM) linphone-$(VERSION).tar.gz | awk {'print $$4'}`
 else
-GEN_MD5=$(shell $(MD5SUM) linphone-$(VERSION).tar.gz | awk {'print $$1'})
+GEN_MD5=`$(MD5SUM) linphone-$(VERSION).tar.gz | awk {'print $$1'}`
 endif
 
-Portfile:      $(top_srcdir)/scripts/Portfile.tmpl dist
+Portfile: $(top_srcdir)/scripts/Portfile.tmpl dist
        sed -e 's/\@VERSION\@/$(LINPHONE_VERSION)/g' \
          -e 's/\@LINPHONE_MD5\@/$(GEN_MD5)/' < $< > $@
 
@@ -181,9 +195,13 @@ Portfile-devel:    $(top_srcdir)/scripts/Portfile-devel.tmpl dist
        sed -e 's/\@VERSION\@/$(LINPHONE_VERSION)/g' \
          -e 's/\@LINPHONE_MD5\@/$(GEN_MD5)/' < $< > $@
 
+
+### MAC
+
 MACAPPNAME=Linphone.app
 MACAPPZIP=$(PACKAGE)-$(VERSION).app.zip
-BUNDLEDIR=$(shell echo "$$HOME/Desktop/$(MACAPPNAME)")
+BUNDLEPREFIX=./
+BUNDLEDIR=$(BUNDLEPREFIX)$(MACAPPNAME)
 LIBICONV_HACK=$(top_builddir)/build/macos/libiconv.2.dylib
 
 $(LIBICONV_HACK):
@@ -192,15 +210,26 @@ $(LIBICONV_HACK):
 
 bundle: $(LIBICONV_HACK)
        rm -rf $(INSTALLDIR)
-       mkdir -p $(INSTALLDIR)
+       $(MKDIR_P) $(INSTALLDIR)
        make install DESTDIR=$(INSTALLDIR)
+       BUNDLE_PREFIX=$(BUNDLEPREFIX) \
        LINPHONE_INSTALL_PREFIX=$(INSTALLDIR_WITH_PREFIX) \
        LIBLINPHONE_INSTALL_PREFIX=$(INSTALLDIR_WITH_PREFIX) \
+       MS2_PLUGINS_INSTALL_PREFIX=$(prefix) \
        gtk-mac-bundler $(PACKAGE_BUNDLE_FILE)
        printf "[Pango]\nModuleFiles=./etc/pango/pango.modules\n" \
-       > $(BUNDLEDIR)/Contents/Resources/etc/pango/pangorc 
+       > $(BUNDLEDIR)/Contents/Resources/etc/pango/pangorc
+       cp -f $(BUNDLEDIR)/Contents/Resources/etc/pango/pango.modules $(BUNDLEDIR)/Contents/Resources/etc/pango/pango.modules.orig
+       sed -e 's:@executable_path.*/::g' $(BUNDLEDIR)/Contents/Resources/etc/pango/pango.modules.orig  > $(BUNDLEDIR)/Contents/Resources/etc/pango/pango.modules
        cp -f $(LIBICONV_HACK) $(BUNDLEDIR)/Contents/Resources/lib/.
-       cd $(BUNDLEDIR)/.. && rm -f $(MACAPPZIP) && zip -r $(MACAPPZIP) $(MACAPPNAME)
-
+       cd $(BUNDLEDIR)/.. && rm -f $(MACAPPZIP) && zip -r $(MACAPPZIP) $(MACAPPNAME) && cd -
 
+###
+### CLEAN
 
+clean-local:
+       rm -rf $(BUNDLEDIR)
+discovery:
+       touch specs.cpp
+       $(CC) --include $(top_builddir)/config.h \
+          $(TUNNEL_CFLAGS) $(CFLAGS) $(MEDIASTREAMER2_CFLAGS) $(ORTP_CFLAGS) -E -P -v -dD specs.cpp