replace *a lot* of file related calls by their GLib counterparts. This is necessary...
[obnox/wireshark/wip.git] / Makefile.nmake
index ea82d4093e58a4872dc2a2205e0c2e600f60821b..b8440650f8d07a7a0e0d17fd379caeffc3824d13 100644 (file)
@@ -104,7 +104,7 @@ randpkt_LIBS= wiretap\wiretap-$(WTAP_VERSION).lib \
        $(NET_SNMP_DIR)\win32\lib\release\netsnmp.lib
 
 EXECUTABLES=ethereal.exe ethereal-gtk2.exe tethereal.exe \
-       capinfos.exe editcap.exe mergecap.exe text2pcap.exe
+       capinfos.exe editcap.exe mergecap.exe text2pcap.exe randpkt.exe
 
 RESOURCES=image\ethereal.res image\libethereal.res image\tethereal.res \
        image\capinfos.res image\editcap.res image\mergecap.res \
@@ -360,9 +360,10 @@ gtk:: help config.h svnversion.h AUTHORS-SHORT doxygen
 gtk2:: help config.h svnversion.h AUTHORS-SHORT
        if not exist gtk2.tmp mkdir gtk2.tmp
        cd gtk
-       xcopy Makefile.* ..\gtk2.tmp /d /y
-       xcopy *.c        ..\gtk2.tmp /d /y
-       xcopy *.h        ..\gtk2.tmp /d /y
+       set copycmd=/y
+       xcopy Makefile.* ..\gtk2.tmp /d
+       xcopy *.c        ..\gtk2.tmp /d
+       xcopy *.h        ..\gtk2.tmp /d
        cd ..\gtk2.tmp
        $(MAKE) /$(MAKEFLAGS) /f Makefile.nmake GTK_CFLAGS="$(GTK2_CFLAGS)" GTK_LIBS="$(GTK2_LIBS)" libui.lib
        cd ..
@@ -403,12 +404,15 @@ doxygen: doxygen.cfg doxygen-run
 ################################################################################
 
 REQUIRED_TOOLS=\
+       $(CC) \
+       $(LINK) \
+       nmake \
        $(SH)   \
        $(YACC) \
        $(LEX)  \
        env     \
        grep    \
-       /usr/bin/find   \
+       find    \
        $(PERL) \
        $(PYTHON)       \
        sed     \
@@ -421,7 +425,12 @@ verify_tools:
 # Download and install all the required libraries into ETHEREAL_LIBS.
 # If you used this setup target before, consider doing a clean_setup.
 setup: verify_tools
-!IF "$(GTK2_INST_VERSION)" == "2.4"
+!IF "$(GTK2_INST_VERSION)" == "2.6"
+       @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
+               glib gtk2.6/glib-2.6.6.zip
+       @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
+               glib gtk2.6/glib-dev-2.6.6.zip
+!ELSEIF "$(GTK2_INST_VERSION)" == "2.4"
        @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
                glib gtk2.4/glib-2.4.7.zip
        @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
@@ -448,7 +457,7 @@ setup: verify_tools
 !ENDIF
 !IFDEF PCAP_DIR
        @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
-               . wpdpack_3_0.zip
+               . WpdPack_3_1.zip
 !ENDIF
 !IFDEF ADNS_DIR
        @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
@@ -456,14 +465,25 @@ setup: verify_tools
 !ENDIF
 !IFDEF PCRE_DIR
        @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
-               . pcre-4.4.zip
+               pcre-6.3 pcre-6.3-bin.zip
+       @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
+               pcre-6.3 pcre-6.3-lib.zip
 !ENDIF
 !IFDEF ZLIB_DIR
        @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
                zlib123-dll zlib123-dll.zip
 !ENDIF
 !IFDEF GTK2_DIR
-!IF "$(GTK2_INST_VERSION)" == "2.4"
+!IF "$(GTK2_INST_VERSION)" == "2.6"
+       @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
+               gtk2 gtk2.6/gtk+-2.6.9.zip
+       @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
+               gtk2 gtk2.6/gtk+-dev-2.6.9.zip
+       @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
+               gtk2 gtk2.6/atk-1.9.0.zip
+       @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
+               gtk2 gtk2.6/atk-dev-1.9.0.zip
+!ELSEIF "$(GTK2_INST_VERSION)" == "2.4"
        @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
                gtk2 gtk2.4/gtk+-2.4.14.zip
        @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
@@ -482,7 +502,12 @@ setup: verify_tools
        @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
                gtk2 gtk2/atk-dev-1.4.0.zip
 !ENDIF
-!IF "$(PANGO_INST_VERSION)" == "1.4"
+!IF "$(PANGO_INST_VERSION)" == "1.8"
+       @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
+               gtk2 gtk2.6/pango-1.8.2.zip
+       @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
+               gtk2 gtk2.6/pango-dev-1.8.2.zip
+!ELSEIF "$(PANGO_INST_VERSION)" == "1.4"
        @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
                gtk2 gtk2.4/pango-1.4.1.zip
        @$(SH) tools\win32-setup.sh --download "$(ETHEREAL_LIBS)" \
@@ -520,69 +545,72 @@ clean_setup:
 # to the source tree, so you can run (t)ethereal directly from there.
 # Note that the gtk2 version of ethereal is called ethereal-gtk2.exe
 
-install-deps: clean_deps install-gtk1-deps install-gtk2-deps
+install-deps: clean-deps install-gtk1-deps install-gtk2-deps
        cd plugins
        $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake install-plugins
        cd ..
 
 install-gtk2-deps: install-required-deps
 !IFDEF GTK2_DIR
-       xcopy $(GTK2_DIR)\bin\libgdk-win32-2.0-0.dll . /d /y
-       xcopy $(GTK2_DIR)\bin\libgdk_pixbuf-2.0-0.dll . /d /y
-       xcopy $(GTK2_DIR)\bin\libgtk-win32-2.0-0.dll . /d /y
-       xcopy $(GTK2_DIR)\bin\libatk-1.0-0.dll . /d /y
-       xcopy $(GTK2_DIR)\bin\libpango-1.0-0.dll . /d /y
-       xcopy $(GTK2_DIR)\bin\libpangowin32-1.0-0.dll . /d /y
+       set copycmd=/y
+       xcopy $(GTK2_DIR)\bin\libgdk-win32-2.0-0.dll . /d
+       xcopy $(GTK2_DIR)\bin\libgdk_pixbuf-2.0-0.dll . /d
+       xcopy $(GTK2_DIR)\bin\libgtk-win32-2.0-0.dll . /d
+       xcopy $(GTK2_DIR)\bin\libatk-1.0-0.dll . /d
+       xcopy $(GTK2_DIR)\bin\libpango-1.0-0.dll . /d
+       xcopy $(GTK2_DIR)\bin\libpangowin32-1.0-0.dll . /d
        mkdir etc
        mkdir etc\gtk-2.0
        mkdir etc\pango
        mkdir lib
        mkdir lib\gtk-2.0
-       mkdir lib\gtk-2.0\$(GTK2_INST_VERSION).0
-       mkdir lib\gtk-2.0\$(GTK2_INST_VERSION).0\loaders
-       mkdir lib\gtk-2.0\$(GTK2_INST_VERSION).0\immodules
+       mkdir lib\gtk-2.0\$(GTK2_LIB_DIR)
+       mkdir lib\gtk-2.0\$(GTK2_LIB_DIR)\loaders
+       mkdir lib\gtk-2.0\$(GTK2_LIB_DIR)\immodules
        mkdir lib\pango
-       mkdir lib\pango\$(PANGO_INST_VERSION).0
-       mkdir lib\pango\$(PANGO_INST_VERSION).0\modules
-       xcopy $(GTK2_DIR)\etc\gtk-2.0\*.* etc\gtk-2.0 /d /y
-       xcopy $(GTK2_DIR)\etc\pango\pango.* etc\pango /d /y
-       xcopy $(GTK2_DIR)\lib\gtk-2.0\$(GTK2_INST_VERSION).0\loaders\libpixbufloader-*.dll lib\gtk-2.0\$(GTK2_INST_VERSION).0\loaders /d /y
-       xcopy $(GTK2_DIR)\lib\gtk-2.0\$(GTK2_INST_VERSION).0\immodules\im-*.dll lib\gtk-2.0\$(GTK2_INST_VERSION).0\immodules /d /y
-       xcopy $(GTK2_DIR)\lib\pango\$(PANGO_INST_VERSION).0\modules\pango-*.dll lib\pango\$(PANGO_INST_VERSION).0\modules /d /y
+       mkdir lib\pango\$(PANGO_LIB_DIR)
+       mkdir lib\pango\$(PANGO_LIB_DIR)\modules
+       xcopy $(GTK2_DIR)\etc\gtk-2.0\*.* etc\gtk-2.0 /d
+       xcopy $(GTK2_DIR)\etc\pango\pango.* etc\pango /d
+       xcopy $(GTK2_DIR)\lib\gtk-2.0\$(GTK2_LIB_DIR)\loaders\libpixbufloader-*.dll lib\gtk-2.0\$(GTK2_LIB_DIR)\loaders /d
+       xcopy $(GTK2_DIR)\lib\gtk-2.0\$(GTK2_LIB_DIR)\immodules\im-*.dll lib\gtk-2.0\$(GTK2_LIB_DIR)\immodules /d
+       xcopy $(GTK2_DIR)\lib\pango\$(PANGO_LIB_DIR)\modules\pango-*.dll lib\pango\$(PANGO_LIB_DIR)\modules /d
 !ENDIF
 
 install-gtk1-deps: install-required-deps
 !IFDEF GTK1_DIR
-       xcopy $(GTK1_DIR)\lib\libgtk-0.dll . /d /y
-       xcopy $(GTK1_DIR)\lib\libgdk-0.dll . /d /y
+       set copycmd=/y
+       xcopy $(GTK1_DIR)\lib\libgtk-0.dll . /d
+       xcopy $(GTK1_DIR)\lib\libgdk-0.dll . /d
 !ENDIF
 
 install-required-deps:
-       xcopy wiretap\wiretap-$(WTAP_VERSION).dll . /d /y
+       set copycmd=/y
+       xcopy wiretap\wiretap-$(WTAP_VERSION).dll . /d
 !IFDEF ENABLE_LIBETHEREAL
-       xcopy epan\libethereal.dll . /d /y
+       xcopy epan\libethereal.dll . /d
 !ENDIF
-       xcopy $(GLIB_DIR)\bin\libglib-2.0-0.dll . /d /y
-       xcopy $(GLIB_DIR)\bin\libgmodule-2.0-0.dll . /d /y
-       xcopy $(GLIB_DIR)\bin\libgobject-2.0-0.dll . /d /y
-       xcopy $(ICONV_DIR)\bin\iconv.dll . /d /y
-       xcopy $(GETTEXT_DIR)\bin\intl.dll . /d /y
+       xcopy $(GLIB_DIR)\bin\libglib-2.0-0.dll . /d
+       xcopy $(GLIB_DIR)\bin\libgmodule-2.0-0.dll . /d
+       xcopy $(GLIB_DIR)\bin\libgobject-2.0-0.dll . /d
+       xcopy $(ICONV_DIR)\bin\iconv.dll . /d
+       xcopy $(GETTEXT_DIR)\bin\intl.dll . /d
 !IFDEF ZLIB_DIR
-       xcopy $(ZLIB_DIR)\zlib1.dll . /d /y
+       xcopy $(ZLIB_DIR)\zlib1.dll . /d
 !ENDIF
 !IFDEF ADNS_DIR
-       xcopy $(ADNS_DIR)\adns_win32\LIB\adns_dll.dll . /d /y
+       xcopy $(ADNS_DIR)\adns_win32\LIB\adns_dll.dll . /d
 !ENDIF
 !IFDEF PCRE_DIR
-       xcopy $(PCRE_DIR)\bin\pcre.dll . /d /y
+       xcopy $(PCRE_DIR)\bin\pcre.dll . /d
 !ENDIF
 
-clean_deps:
+clean-deps:
        rm -f *.dll
        rm -rf etc
        rm -rf lib
        cd plugins
-       $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean_deps
+       $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake clean-deps
        cd ..