Try to fix PortableApps packaging. Note that the Qt definitions should
[metze/wireshark/wip.git] / packaging / portableapps / win32 / makenmake.pl
1 #
2 # makenmake.pl - create a nmake file from a generic manifest file that will create the appropriate PortableApp structure
3 # $Id$
4 #
5
6 print q{
7 #
8 # DO NOT EDIT - autogenerated from makenmake.pl and ../../wireshark.manifest
9 #
10
11 include ../../../config.nmake
12 include <win32.mak>
13
14 FILES           = Files
15 APP             = App
16 WIRESHARK       = Wireshark
17
18 TOPDIR  = ..\..\..
19 STAGING_DIR = $(TOPDIR)\$(INSTALL_DIR)
20 COPY    = xcopy
21 MOVE    = mv
22 MKDIR   = mkdir
23 COPY_FLAGS      = /d /y
24
25 # XXX This should be defined in config.nmake.
26 !IF EXIST("$(TOPDIR)\wireshark-qt-release\qtshark.exe")
27 QT_DIR  = "$(TOPDIR)\wireshark-qt-release" 
28 !ENDIF
29 !IF EXIST("$(TOPDIR)\wireshark-qt-release\Qt5Core.dll")
30 NEED_QT5_DLL    = USE
31 !ENDIF
32 !IF EXIST("$(TOPDIR)\wireshark-qt-release\QtCore4.dll")
33 NEED_QT4_DLL    = USE
34 !ENDIF
35
36 distribution:
37 };
38
39 while($line = <>) {
40     
41     if($line =~ /^\#/) { # comment
42         next;
43     } elsif($line =~ /^\[(\S+)/) { # new directory
44         if(defined $define) { # Clear out any leftover defines.
45             print "!ENDIF\n";
46             undef($define);
47         }
48
49         $dir = $1;
50
51         $dir =~ s/\$INSTDIR?//; # remove $INSTDIR
52         
53         $dir =~ s/\{/\(/g; $dir =~ s/\}/\)/g; # convert curlies to round brackets
54
55         if($dir ne '') { 
56             print "\tif not exist \$(FILES)\\\$(APP)\\\$(WIRESHARK)$dir \$(MKDIR) \$(FILES)\\\$(APP)\\\$(WIRESHARK)$dir\n"; 
57         }
58         
59     } else { # this is a file
60
61         $line =~ /^\s+(\S+)/;
62         $file = $1;
63
64         $file =~ s/\{/\(/g; $file =~ s/\}/\)/g; # convert curlies to round brackets
65
66         if($file =~ /^[^\$]/) {
67             $file = "\$(TOPDIR)\\" . $file;
68         }
69
70         if($line =~ /ifdef=(\w+)/) { # dependency
71             if($define ne $1) {
72                 if(defined $define) {
73                     print "!ENDIF\n";
74                 }
75                 $define = $1;
76                 print "!IF DEFINED($define)\n";
77             }
78         } else {
79             
80             if(defined $define) {
81                 print "!ENDIF\n";
82             }
83             undef $define;
84         }
85
86         $oname = "";
87
88         print "\t\$(COPY) \"$file\" \"\$(FILES)\\\$(APP)\\\$(WIRESHARK)$dir\" \$(COPY_FLAGS)\n";
89
90         if($line =~ /oname=(\S+)/) { # override this filename
91             $oname = $1;
92             $file =~ /\\(.*)$/;
93             $name = $1;
94
95             print "\t\$(MOVE) \"\$(FILES)\\\$(APP)\\\$(WIRESHARK)\\$dir\\$name\" \"\$(FILES)\\\$(APP)\\\$(WIRESHARK)\\$dir\\$oname\"\n";
96
97         }
98
99     }
100 }