2 # ws-manifest.pl - create a generic manifest file (including u3 information) from the wireshark.nsi
6 # These are the known directories in the distribution and where they should live on a U3 device
9 $INSTDIR\${GTK_WIMP_DLLDST_DIR} host
10 $INSTDIR\${GTK_WIMP_RCDST_DIR} host
11 $INSTDIR\diameter device
13 $INSTDIR\etc\gtk-2.0 host
14 $INSTDIR\etc\pango host
16 $INSTDIR\lib\gtk-2.0\${GTK_LIB_DIR}\engines host
17 $INSTDIR\lib\gtk-2.0\${GTK_LIB_DIR}\immodules host
18 $INSTDIR\lib\gtk-2.0\${GTK_LIB_DIR}\loaders host
19 $INSTDIR\lib\gtk-2.0\modules host
20 $INSTDIR\plugins\${VERSION} device
21 $INSTDIR\radius device
22 $INSTDIR\snmp\mibs device
24 $INSTDIR\wimaxasncp device
27 my @dirs; # the directories in the manifest
28 my @defines; # stack of defines
31 if($line =~ /^SetOutPath (.+)$/) {
33 if($outpath ne '$PROFILE') { # ignore the PROFILE
34 push(@dirs, $outpath);
36 } elsif ($line =~ /!ifdef (.*)$/) {
38 } elsif ($line =~ /!endif/) {
40 if(scalar(@defines) == 0) {
43 } elsif ($line =~ /^File[^\"]+\"([^\"]+)\"/) {
45 # make things relative to the root rather than the NSIS directory
46 if($file =~ /^[^\.\$]/) { $file = "packaging\\nsis\\" . $file; }
47 $file =~ s/\.\.\\\.\.\\//; # remove ../../
48 push(@$outpath, $file);
50 if(defined @defines) {
51 push(@$file, "ifdef=" . $defines[-1]);
54 # there may be a parameter - copy it across
55 if($line =~ /\/(\S+)/) {
61 print "#\n# DO NOT EDIT - autogenerated from wireshark.nsi\n#\n";
63 foreach $dir(sort @dirs) {
70 print "[". $dir . " u3loc=" . $loc . "]\n";
72 foreach $file(sort @$dir) {
75 foreach $param (sort(@$file)) {
79 if($dir eq '$INSTDIR') { # try and find a better location
80 if($file =~ /\.dll$|\.exe$|EXE}$|DLL}$/) {
96 if(defined @ignored) {
98 print STDERR "ERROR\nThe following directories have no known location on a U3 device:\n";
100 foreach $dir(sort @ignored) {
101 print STDERR "\t" . $dir . " ";