summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorberkeviktor@aol.com <berkeviktor@aol.com>2010-08-29 04:55:58 +0200
committerberkeviktor@aol.com <berkeviktor@aol.com>2010-08-29 04:55:58 +0200
commitae4d71939c4c86b847e549561cef7774c74ec5c0 (patch)
tree14cb6a4cad042bcddeb43cfe207c71493a37306d
parent14eca4536f97b9821c01bcf8ec50568d130ed95c (diff)
make perl version selectable
-rw-r--r--build/build-x64.bat15
-rw-r--r--build/build-x86.bat15
-rw-r--r--build/release-x64.bat4
-rw-r--r--build/release-x86.bat4
-rw-r--r--build/xchat-wdk.iss27
-rw-r--r--config.h2
-rw-r--r--plugins/makefile.mak7
-rw-r--r--plugins/perl/makefile-510.mak36
-rw-r--r--plugins/perl/makefile-512.mak36
-rw-r--r--plugins/perl/makefile-58.mak (renamed from plugins/perl/makefile.mak)9
-rw-r--r--src/makeinc.skel5
11 files changed, 132 insertions, 28 deletions
diff --git a/build/build-x64.bat b/build/build-x64.bat
index c13459b6..6276677c 100644
--- a/build/build-x64.bat
+++ b/build/build-x64.bat
@@ -5,7 +5,7 @@ type makeinc.skel >> makeinc.mak
 set INCLUDE=c:\WinDDK\7600.16385.1\inc\api;c:\WinDDK\7600.16385.1\inc\crt;c:\WinDDK\7600.16385.1\inc\api\crt\stl70;c:\mozilla-build\build\xchat-dev64\include
 set LIB=c:\WinDDK\7600.16385.1\lib\wnet\amd64;c:\WinDDK\7600.16385.1\lib\Crt\amd64
 set OPATH=%PATH%
-set PATH=c:\WinDDK\7600.16385.1\bin\x86\amd64;c:\WinDDK\7600.16385.1\bin\x86;c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64;c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64;c:\mozilla-build\build\xchat-dev64\bin;c:\mozilla-build\perl-5.12-x64\bin
+set PATH=c:\WinDDK\7600.16385.1\bin\x86\amd64;c:\WinDDK\7600.16385.1\bin\x86;c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64;c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64;c:\mozilla-build\build\xchat-dev64\bin
 cd common
 nmake /nologo /f makefile.mak clean
 cd ..\fe-gtk
@@ -17,6 +17,17 @@ nmake /nologo /f makefile.mak
 cd ..\plugins
 nmake /nologo /f makefile.mak clean
 nmake /nologo /f makefile.mak
-cd ..\build
+cd perl
+set OOPATH=%PATH%
+set PATH=%OOPATH%;c:\mozilla-build\perl-5.8-x64\bin
+nmake /nologo /f makefile-58.mak clean
+nmake /nologo /f makefile-58.mak
+set PATH=%OOPATH%;c:\mozilla-build\perl-5.10-x64\bin
+nmake /nologo /f makefile-510.mak clean
+nmake /nologo /f makefile-510.mak
+set PATH=%OOPATH%;c:\mozilla-build\perl-5.12-x64\bin
+nmake /nologo /f makefile-512.mak clean
+nmake /nologo /f makefile-512.mak
+cd ..\..\build
 set PATH=%OPATH%
 call release-x64.bat
diff --git a/build/build-x86.bat b/build/build-x86.bat
index 72814e0a..5f252252 100644
--- a/build/build-x86.bat
+++ b/build/build-x86.bat
@@ -4,7 +4,7 @@ type makeinc.skel > makeinc.mak
 set INCLUDE=c:\WinDDK\7600.16385.1\inc\api;c:\WinDDK\7600.16385.1\inc\crt;c:\WinDDK\7600.16385.1\inc\api\crt\stl70;c:\mozilla-build\build\xchat-dev32\include
 set LIB=c:\WinDDK\7600.16385.1\lib\wxp\i386;c:\WinDDK\7600.16385.1\lib\Crt\i386
 set OPATH=%PATH%
-set PATH=c:\WinDDK\7600.16385.1\bin\x86\x86;c:\WinDDK\7600.16385.1\bin\x86;c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin;c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin;c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE;c:\mozilla-build\build\xchat-dev32\bin;c:\mozilla-build\mingw32\bin;c:\mozilla-build\perl-5.12-x86\bin
+set PATH=c:\WinDDK\7600.16385.1\bin\x86\x86;c:\WinDDK\7600.16385.1\bin\x86;c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin;c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin;c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE;c:\mozilla-build\build\xchat-dev32\bin;c:\mozilla-build\mingw32\bin
 nmake /nologo /f makefile.mak clean
 cd pixmaps
 nmake /nologo /f makefile.mak
@@ -13,7 +13,18 @@ nmake /nologo /f makefile.mak
 cd ..\plugins
 nmake /nologo /f makefile.mak clean
 nmake /nologo /f makefile.mak
-cd ..\build
+cd perl
+set OOPATH=%PATH%
+set PATH=%OOPATH%;c:\mozilla-build\perl-5.8-x86\bin
+nmake /nologo /f makefile-58.mak clean
+nmake /nologo /f makefile-58.mak
+set PATH=%OOPATH%;c:\mozilla-build\perl-5.10-x86\bin
+nmake /nologo /f makefile-510.mak clean
+nmake /nologo /f makefile-510.mak
+set PATH=%OOPATH%;c:\mozilla-build\perl-5.12-x86\bin
+nmake /nologo /f makefile-512.mak clean
+nmake /nologo /f makefile-512.mak
+cd ..\..\build
 call compile-po-files.bat
 cd ..\build
 set PATH=%OPATH%
diff --git a/build/release-x64.bat b/build/release-x64.bat
index fc410486..fd191414 100644
--- a/build/release-x64.bat
+++ b/build/release-x64.bat
@@ -31,7 +31,9 @@ copy %SSL_BIN%\ssleay32.dll %XCHAT_DEST%\ssleay32.dll.x64
 copy %SSL_BIN%\zlib1.dll %XCHAT_DEST%\zlib1.dll.x64
 copy ..\plugins\ewc\xcewc.dll %XCHAT_DEST%\plugins\xcewc.dll.x64
 copy ..\plugins\lua\xclua.dll %XCHAT_DEST%\plugins\xclua.dll.x64
-copy ..\plugins\perl\xcperl.dll %XCHAT_DEST%\plugins\xcperl.dll.x64
+copy ..\plugins\perl\xcperl-58.dll %XCHAT_DEST%\plugins\xcperl-58.dll.x64
+copy ..\plugins\perl\xcperl-510.dll %XCHAT_DEST%\plugins\xcperl-510.dll.x64
+copy ..\plugins\perl\xcperl-512.dll %XCHAT_DEST%\plugins\xcperl-512.dll.x64
 copy ..\plugins\python\xcpython.dll %XCHAT_DEST%\plugins\xcpython.dll.x64
 copy ..\plugins\tcl\xctcl.dll %XCHAT_DEST%\plugins\xctcl.dll.x64
 copy ..\plugins\xdcc\xcxdcc.dll %XCHAT_DEST%\plugins\xcxdcc.dll.x64
diff --git a/build/release-x86.bat b/build/release-x86.bat
index f21548b6..3bef1277 100644
--- a/build/release-x86.bat
+++ b/build/release-x86.bat
@@ -37,7 +37,9 @@ copy %SSL_BIN%\ssleay32.dll %XCHAT_DEST%
 copy %SSL_BIN%\zlib1.dll %XCHAT_DEST%
 xcopy /q /s /i ..\plugins\ewc\xcewc.dll %XCHAT_DEST%\plugins\
 copy ..\plugins\lua\xclua.dll %XCHAT_DEST%\plugins
-copy ..\plugins\perl\xcperl.dll %XCHAT_DEST%\plugins
+copy ..\plugins\perl\xcperl-58.dll %XCHAT_DEST%\plugins
+copy ..\plugins\perl\xcperl-510.dll %XCHAT_DEST%\plugins
+copy ..\plugins\perl\xcperl-512.dll %XCHAT_DEST%\plugins
 copy ..\plugins\python\xcpython.dll %XCHAT_DEST%\plugins
 copy ..\plugins\tcl\xctcl.dll %XCHAT_DEST%\plugins
 copy ..\plugins\xdcc\xcxdcc.dll %XCHAT_DEST%\plugins
diff --git a/build/xchat-wdk.iss b/build/xchat-wdk.iss
index fe96dfa9..cd0e537d 100644
--- a/build/xchat-wdk.iss
+++ b/build/xchat-wdk.iss
@@ -1,9 +1,9 @@
 [Setup]

 AppName=XChat-WDK

-AppVerName=XChat-WDK r1464

-AppVersion=14.64

-VersionInfoVersion=14.64

-OutputBaseFilename=XChat-WDK r1464

+AppVerName=XChat-WDK r1464-2

+AppVersion=14.64.2

+VersionInfoVersion=14.64.2

+OutputBaseFilename=XChat-WDK r1464-2

 AppPublisher=XChat-WDK

 AppPublisherURL=http://code.google.com/p/xchat-wdk/

 AppCopyright=Copyright (C) 1998-2010 Peter Zelezny

@@ -38,7 +38,7 @@ Name: "translations"; Description: "Translations"; Types: normal full custom
 Name: "plugins"; Description: "Language Interfaces"; Types: full custom

 Name: "plugins\lua"; Description: "Lua (experimental)"; Types: full custom

 Name: "plugins\lua\luawdk"; Description: "Lua-WDK 5.1.4-2"; Types: full custom

-Name: "plugins\perl"; Description: "Perl (needs ActivePerl 5.12)"; Types: full custom

+Name: "plugins\perl"; Description: "Perl (needs ActivePerl)"; Types: full custom

 Name: "plugins\python"; Description: "Python (needs ActivePython 2.6)"; Types: full custom

 Name: "plugins\tcl"; Description: "Tcl (needs ActiveTcl 8.5)"; Types: full custom

 

@@ -46,6 +46,9 @@ Name: "plugins\tcl"; Description: "Tcl (needs ActiveTcl 8.5)"; Types: full custo
 Name: portablemode; Description: "Yes"; GroupDescription: "Portable Install (no Registry entries, no Start Menu icons, no uninstaller):"; Flags: unchecked

 Name: x86; Description: "x86"; GroupDescription: "XChat-WDK version:"; Flags: exclusive unchecked

 Name: x64; Description: "x64"; GroupDescription: "XChat-WDK version:"; Flags: exclusive; Check: Is64BitInstallMode

+Name: perl58; Description: "5.8"; GroupDescription: "ActivePerl version:"; Flags: exclusive unchecked

+Name: perl510; Description: "5.10"; GroupDescription: "ActivePerl version:"; Flags: exclusive unchecked

+Name: perl512; Description: "5.12"; GroupDescription: "ActivePerl version:"; Flags: exclusive

 

 [Files]

 Source: "COPYING"; DestDir: "{app}"; Components: libs

@@ -158,15 +161,23 @@ Source: "plugins\xcxdcc.dll.x64"; DestDir: "{app}\plugins"; DestName: "xcxdcc.dl
 Source: "plugins\xclua.dll"; DestDir: "{app}\plugins"; Components: plugins\lua; Tasks: x86

 Source: "plugins\xclua.dll.x64"; DestDir: "{app}\plugins"; DestName: "xclua.dll"; Components: plugins\lua; Tasks: x64

 

-Source: "plugins\xcperl.dll"; DestDir: "{app}\plugins"; Components: plugins\perl; Tasks: x86

-Source: "plugins\xcperl.dll.x64"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Components: plugins\perl; Tasks: x64

-

 Source: "plugins\xcpython.dll"; DestDir: "{app}\plugins"; Components: plugins\python; Tasks: x86

 Source: "plugins\xcpython.dll.x64"; DestDir: "{app}\plugins"; DestName: "xcpython.dll"; Components: plugins\python; Tasks: x64

 

 Source: "plugins\xctcl.dll"; DestDir: "{app}\plugins"; Components: plugins\tcl; Tasks: x86

 Source: "plugins\xctcl.dll.x64"; DestDir: "{app}\plugins"; DestName: "xctcl.dll"; Components: plugins\tcl; Tasks: x64

 

+

+

+Source: "plugins\xcperl-58.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Components: plugins\perl; Tasks: x86 and perl58

+Source: "plugins\xcperl-510.dll.x64"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Components: plugins\perl; Tasks: x64 and perl58

+

+Source: "plugins\xcperl-510.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Components: plugins\perl; Tasks: x86 and perl510

+Source: "plugins\xcperl-510.dll.x64"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Components: plugins\perl; Tasks: x64 and perl510

+

+Source: "plugins\xcperl-512.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Components: plugins\perl; Tasks: x86 and perl512

+Source: "plugins\xcperl-512.dll.x64"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Components: plugins\perl; Tasks: x64 and perl512

+

 [Icons]

 Name: "{group}\XChat-WDK"; Filename: "{app}\xchat.exe"; Tasks: not portablemode

 Name: "{group}\Uninstall XChat-WDK"; Filename: "{uninstallexe}"; Tasks: not portablemode

diff --git a/config.h b/config.h
index f3ec915b..649f54e1 100644
--- a/config.h
+++ b/config.h
@@ -6,7 +6,7 @@
 #define USE_GTKSPELL
 #endif*/
 #define PACKAGE_NAME "xchat"
-#define PACKAGE_VERSION "r1464"
+#define PACKAGE_VERSION "r1464-2"
 #define XCHATLIBDIR "."
 #define XCHATSHAREDIR "."
 #define OLD_PERL
diff --git a/plugins/makefile.mak b/plugins/makefile.mak
index 8a83b5a6..82cc41ec 100644
--- a/plugins/makefile.mak
+++ b/plugins/makefile.mak
@@ -3,8 +3,6 @@ all:
 	@-$(MAKE) /nologo /s /f makefile.mak $@
 	@cd ..\lua
 	@-$(MAKE) /nologo /s /f makefile.mak $@
-	@cd ..\perl
-	@-$(MAKE) /nologo /s /f makefile.mak $@
 	@cd ..\python
 	@-$(MAKE) /nologo /s /f makefile.mak $@
 	@cd ..\tcl
@@ -23,11 +21,6 @@ clean:
 	@del lua\*.exp
 	@del lua\*.lib
 	@del lua\*.obj
-	@del perl\*.def
-	@del perl\*.dll
-	@del perl\*.exp
-	@del perl\*.lib
-	@del perl\*.obj
 	@del python\*.def
 	@del python\*.dll
 	@del python\*.exp
diff --git a/plugins/perl/makefile-510.mak b/plugins/perl/makefile-510.mak
new file mode 100644
index 00000000..4cb8b550
--- /dev/null
+++ b/plugins/perl/makefile-510.mak
@@ -0,0 +1,36 @@
+include "..\..\src\makeinc.mak"
+
+TARGET = xcperl-510.dll
+PERLLIB = perl510
+
+!ifdef X64
+PERLPATH = c:\mozilla-build\perl-5.10-x64\lib\CORE
+!else
+PERLPATH = c:\mozilla-build\perl-5.10-x86\lib\CORE
+!endif
+
+all: $(TARGET)
+
+perl.def:
+	echo EXPORTS > perl.def
+	echo xchat_plugin_init >> perl.def
+	echo xchat_plugin_deinit >> perl.def
+	echo xchat_plugin_get_info >> perl.def
+
+perl.obj: perl.c
+	$(CC) $(CFLAGS) perl.c $(GLIB) -I$(PERLPATH) -DPERL_DLL=\"$(PERLLIB).dll\"
+
+perl.c: xchat.pm.h
+
+xchat.pm.h: Xchat.pm IRC.pm
+	perl.exe generate_header
+
+$(TARGET): perl.obj perl.def
+	$(LINK) /DLL /out:$(TARGET) perl.obj $(LDFLAGS) $(PERLLIB).lib /libpath:$(PERLPATH) /DELAYLOAD:$(PERLLIB).dll DELAYIMP.LIB user32.lib shell32.lib advapi32.lib /def:perl.def
+
+clean:
+	del $(TARGET)
+	del *.obj
+	del perl.def
+	del *.lib
+	del *.exp
diff --git a/plugins/perl/makefile-512.mak b/plugins/perl/makefile-512.mak
new file mode 100644
index 00000000..10ee054d
--- /dev/null
+++ b/plugins/perl/makefile-512.mak
@@ -0,0 +1,36 @@
+include "..\..\src\makeinc.mak"
+
+TARGET = xcperl-512.dll
+PERLLIB = perl512
+
+!ifdef X64
+PERLPATH = c:\mozilla-build\perl-5.12-x64\lib\CORE
+!else
+PERLPATH = c:\mozilla-build\perl-5.12-x86\lib\CORE
+!endif
+
+all: $(TARGET)
+
+perl.def:
+	echo EXPORTS > perl.def
+	echo xchat_plugin_init >> perl.def
+	echo xchat_plugin_deinit >> perl.def
+	echo xchat_plugin_get_info >> perl.def
+
+perl.obj: perl.c
+	$(CC) $(CFLAGS) perl.c $(GLIB) -I$(PERLPATH) -DPERL_DLL=\"$(PERLLIB).dll\"
+
+perl.c: xchat.pm.h
+
+xchat.pm.h: Xchat.pm IRC.pm
+	perl.exe generate_header
+
+$(TARGET): perl.obj perl.def
+	$(LINK) /DLL /out:$(TARGET) perl.obj $(LDFLAGS) $(PERLLIB).lib /libpath:$(PERLPATH) /DELAYLOAD:$(PERLLIB).dll DELAYIMP.LIB user32.lib shell32.lib advapi32.lib /def:perl.def
+
+clean:
+	del $(TARGET)
+	del *.obj
+	del perl.def
+	del *.lib
+	del *.exp
diff --git a/plugins/perl/makefile.mak b/plugins/perl/makefile-58.mak
index fd54f458..e26c6220 100644
--- a/plugins/perl/makefile.mak
+++ b/plugins/perl/makefile-58.mak
@@ -1,6 +1,13 @@
 include "..\..\src\makeinc.mak"
 
-TARGET = $(PERLOUTPUT)
+TARGET = xcperl-58.dll
+PERLLIB = perl58
+
+!ifdef X64
+PERLPATH = c:\mozilla-build\perl-5.8-x64\lib\CORE
+!else
+PERLPATH = c:\mozilla-build\perl-5.8-x86\lib\CORE
+!endif
 
 all: $(TARGET)
 
diff --git a/src/makeinc.skel b/src/makeinc.skel
index 6c1c3984..8eb5feb5 100644
--- a/src/makeinc.skel
+++ b/src/makeinc.skel
@@ -22,7 +22,6 @@ CPPFLAGS = $(CPPFLAGS) /favor:AMD64 /D_WIN64
 LDFLAGS = $(LDFLAGS) msvcrt_win2003.obj
 
 LUAPATH = c:\mozilla-build\build\lua-wdk-5.1.4-2-x64
-PERLPATH = c:\mozilla-build\perl-5.12-x64\lib\CORE
 PYTHONPATH = c:\mozilla-build\python-2.6-x64
 TCLPATH = c:\mozilla-build\tcl-8.5-x64
 !else
@@ -42,7 +41,6 @@ LIBS = $(LIBS) /libpath:$(OPENSSLPATH)\lib libeay32.lib ssleay32.lib
 LDFLAGS = $(LDFLAGS) msvcrt_winxp.obj
 
 LUAPATH = c:\mozilla-build\build\lua-wdk-5.1.4-2-x86
-PERLPATH = c:\mozilla-build\perl-5.12-x86\lib\CORE
 PYTHONPATH = c:\mozilla-build\python-2.6-x86
 TCLPATH = c:\mozilla-build\tcl-8.5-x86
 
@@ -53,9 +51,6 @@ MMX = YES
 LUALIB = lua51
 LUAOUTPUT = xclua.dll
 
-PERLLIB = perl512
-PERLOUTPUT = xcperl.dll
-
 PYTHONLIB = python26
 PYTHONOUTPUT = xcpython.dll