filemorph

Check-in [4b56991808]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Re-work Windows eployment to not require PAR
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:4b56991808ca67559966d9989c05711f31924370
User & Date: kevin 2015-11-09 11:49:12
Context
2015-11-11
11:56
Update overhaul to Windows build and deployment check-in: 30849adf00 user: kevin tags: trunk
2015-11-09
11:49
Re-work Windows eployment to not require PAR check-in: 4b56991808 user: kevin tags: trunk
2015-10-30
02:54
Finalize 2.5 for Windows check-in: d39408e0cd user: kevin tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to build.bat.

1
2
3
4
5
6















7
8
9

10






11
12
13
14
15
16
17
18
19
20


SET COPYCMD=/Y

if exist FileMorph.exe (
del FileMorph.exe
)
















call perltidy --pt=2 --bbt=2 --sbt=2 --naws filemorph.pl

call move /y filemorph.pl.tdy filemorph.pl








call xcopy scriptlibs C:\Tcl\lib\ /s /i /y

call xcopy winlibs C:\Tcl\lib\ /s /i /y

call pp  -C -M Encode::Byte -l zlib1.dll -l tcl86.dll -l tk86.dll  -a "C:/Tcl;script/Tcl" filemorph.pl -o FileMorph.exe 


call "C:\Program Files (x86)\Resource Hacker\ResourceHacker.exe" -modify  "FileMorph.exe", "FileMorph.exe", "filemorph-exe-par.ico", ICONGROUP, WINEXE, 0

call ie4uinit.exe -ClearIconCache








>
>
>
>
>
>
>
>
>
>
>
>
>
>
>


|
>

>
>
>
>
>
>
|

|

|

<
|

|
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38

39
40
41
42
43
SET COPYCMD=/Y

if exist FileMorph.exe (
del FileMorph.exe
)

if exist build\ (
rmdir build\
)
mkdir build\
mkdir build\filemorph\

call xcopy  C:\Strawberry\c\bin\*.dll build\filemorph\ /s /i /y
call xcopy  C:\Strawberry\perl\bin\*.dll build\filemorph\ /s /i /y
call xcopy C:\Tcl\bin\*.dll build\filemorph\ /s /i /y
call xcopy  C:\Strawberry\perl\lib build\filemorph\lib /s /i /y
call xcopy  C:\Strawberry\perl\site build\filemorph\site /s /i /y
call xcopy  C:\Strawberry\perl\vendor build\filemorph\vendor /s /i /y
call xcopy C:\Tcl\lib build\lib /s /i /y
call xcopy C:\Tcl\bin build\bin /s /i /y

call perltidy --pt=2 --bbt=2 --sbt=2 --naws filemorph.pl

call move /y filemorph.pl.tdy filemorph.pl 
call xcopy  filemorph.pl build\filemorph\filemorph.pl /y

call windres icons.rc -o coff -o icons.o
call windres versioninfo.rc -o coff -o versioninfo.o
call perl build.pl

call xcopy FileMorph.exe build\filemorph\

::call xcopy scriptlibs C:\Tcl\lib\ /s /i /y

::call xcopy winlibs C:\Tcl\lib\ /s /i /y

::call pp  -C -M Encode::Byte -l zlib1.dll -l tcl86.dll -l tk86.dll  -a "C:/Tcl;script/Tcl" filemorph.pl -o FileMorph.exe 


::call "C:\Program Files (x86)\Resource Hacker\ResourceHacker.exe" -modify  "FileMorph.exe", "FileMorph.exe", "filemorph-exe-par.ico", ICONGROUP, WINEXE, 0

::call ie4uinit.exe -ClearIconCache


Changes to filemorph.pl.

20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
...
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
BEGIN {

    if ($Config{osname} eq "darwin") {
        my $frameworkpath = "$Bin/Contents/Frameworks/Tcl.framework/Tcl";
        $ENV{'PERL_TCL_DL_PATH'} = $frameworkpath;
    }
    if ($Config{osname} eq "MSWin32") {
        require Win32::GUI;
        Win32::GUI->import();
        $DOS = Win32::GUI::GetPerlWindow();

        Win32::GUI::Hide($DOS);
        if (exists $ENV{PAR_PROGNAME}) {
            my $libtarget = "$ENV{TMP}/lib";
            my $libsrc    = "$ENV{PAR_TEMP}/inc/script/Tcl/lib";
            rmove($libsrc, $libtarget);
            my $bintarget = "$ENV{TMP}/bin";
            my $binsrc    = "$ENV{PAR_TEMP}/inc/script/Tcl/bin";
            rmove($binsrc, $bintarget);
        }
    }

}

#use strict;
use warnings;

................................................................................

Tkx::MainLoop();
exit;

###----subroutines

sub shutdown {

    if (IS_WINDOWS) {
        Win32::GUI::Show($DOS);
    }
    &Tkx::exit;
}

sub makeImage {

    my $data = "iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABGdBTUEAALGPC/xh
BQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAA







|
|
<

<
<
<
<
<
<
<
<
<







 







<
<
<
<







20
21
22
23
24
25
26
27
28

29









30
31
32
33
34
35
36
...
530
531
532
533
534
535
536




537
538
539
540
541
542
543
BEGIN {

    if ($Config{osname} eq "darwin") {
        my $frameworkpath = "$Bin/Contents/Frameworks/Tcl.framework/Tcl";
        $ENV{'PERL_TCL_DL_PATH'} = $frameworkpath;
    }
    if ($Config{osname} eq "MSWin32") {
        my $frameworkpath = "$Bin/Tcl/bin/tcl86.dll";
        $ENV{'PERL_TCL_DL_PATH'} = $frameworkpath;











    }

}

#use strict;
use warnings;

................................................................................

Tkx::MainLoop();
exit;

###----subroutines

sub shutdown {




    &Tkx::exit;
}

sub makeImage {

    my $data = "iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABGdBTUEAALGPC/xh
BQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAA

Changes to versioninfo.rc.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
1 VERSIONINFO
FILEVERSION 2, 5, 0, 0
PRODUCTVERSION 2, 5, 0, 0
FILEOS 4
FILETYPE 1
{
    BLOCK "StringFileInfo" {
        BLOCK "040904E4" {
            VALUE "FileDescription", "File modification tool"
            VALUE "OriginalFilename", "FileMorph"
            VALUE "CompanyName", "WordTech Communications LLC"
            VALUE "FileVersion", "2.5.0"
            VALUE "LegalCopyright", "(c) 2015 WordTech Communications LLc"
            VALUE "ProductName", "FileMorph"
            VALUE "ProductVersion", "2.5.0"
        }
    }
    BLOCK "VarFileInfo" {
        VALUE "Translation", 0x409, 1252
    }
}

|
|








|


|






1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
1 VERSIONINFO
FILEVERSION 2, 6, 0, 0
PRODUCTVERSION 2, 6, 0, 0
FILEOS 4
FILETYPE 1
{
    BLOCK "StringFileInfo" {
        BLOCK "040904E4" {
            VALUE "FileDescription", "File modification tool"
            VALUE "OriginalFilename", "FileMorph"
            VALUE "CompanyName", "WordTech Communications LLC"
            VALUE "FileVersion", "2.6.0"
            VALUE "LegalCopyright", "(c) 2015 WordTech Communications LLc"
            VALUE "ProductName", "FileMorph"
            VALUE "ProductVersion", "2.6.0"
        }
    }
    BLOCK "VarFileInfo" {
        VALUE "Translation", 0x409, 1252
    }
}