Issue 25475 - W32-tcsh breaks in scp/source/javafilter
Summary: W32-tcsh breaks in scp/source/javafilter
Status: CLOSED FIXED
Alias: None
Product: Installation
Classification: Application
Component: code (show other issues)
Version: 680
Hardware: PC Windows 2000
: P2 Trivial (vote)
Target Milestone: OOo 2.0
Assignee: ingo.schmidt-rosbiegal
QA Contact: issues@installation
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-02-13 15:56 UTC by quetschke
Modified: 2004-04-19 16:54 UTC (History)
3 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
Patch for solenv/bin/modules/.../globals.pm (1.01 KB, patch)
2004-02-13 21:47 UTC, quetschke
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this issue.
Description quetschke 2004-02-13 15:56:04 UTC
The build of cws_src680_ooo20040225 breaks in scp/source/javafilter with:

------------------------------
Making: ../../wntmsci8.pro/par/fam/basic_javafilter.par
cpplcc -+ -P -I.  -I. -I../inc -I../../inc -I../../WIN/inc
-I../../wntmsci8.pro/inc -I.
-I/cygdrive/d/v1/cws_src680_ooo20040225/solver/680/wntmsci8.pro/inc/stl
-I/cygdrive/d/v1/cws_src680_ooo20040225/solver/680/wntmsci8.pro/inc/external
-I/cygdrive/d/v1/cws_src680_ooo20040225/solver/680/wntmsci8.pro/inc
-I/cygdrive/d/v1/cws_src680_ooo20040225/solenv/wntmsci8/inc
-I/cygdrive/d/v1/cws_src680_ooo20040225/solenv/inc
-I/cygdrive/d/v1/cws_src680_ooo20040225/res
-I/cygdrive/d/v1/cws_src680_ooo20040225/solver/680/wntmsci8.pro/inc/stl
-I/cygdrive/c/j2sdk1.4.1_02/include/win32 -I/cygdrive/c/j2sdk1.4.1_02/include
-I'/cygdrive/C/Programme/Microsoft SDK/include'
-I/cygdrive/c/PROGRA~1/MICROS~1.NET/Vc7/include     -I. -I../../res -I.
-DFAM_PRODUCT -DWNT -DWNT -DNT351 -DMSC -DM1300 -DINTEL -D_USE_NAMESPACE
-D_X86_=1  -DFULL_DESK -DSTLPORT_VERSION=400 -DWINVER=0x400 -D_WIN32_IE=0x400
-D_MT -DCPPU_ENV=msci -DSUPD=680 -DBUILD=8741 -DPRODUCT -DNDEBUG -DPRODUCT_FULL
-DOSL_DEBUG_LEVEL=0 -DOPTIMIZE -DEXCEPTIONS_OFF -DCUI -DSOLAR_JAVA -DSRC680 
-DWITHOUT_MOZILLA -DSCP_DATESTRING=13022004 -DUDK_MAJOR=3 -DUDK_MINOR=1
-DUDK_MICRO=0 -DOFFICEUPD=680 -UMSC -DCOMID=MSC -DCOMNAME=msci -D_MSC
-DCCNUMVER=001300009466 -DDLLSUFFIX=mi basic_javafilter.scp >
../../wntmsci8.pro/misc/fam/basic_javafilter.pre
cpp version 17.8.1999
/bin/perl /cygdrive/d/v1/cws_src680_ooo20040225/solenv/bin/pre2par.pl -s
../../wntmsci8.pro/misc/fam/basic_javafilter.pre -o
../../wntmsci8.pro/par/fam/basic_javafilter.par

pre2par -s ../../wntmsci8.pro/misc/fam/basic_javafilter.pre -o
../../wntmsci8.pro/par/fam/basic_javafilter.par

***************************************************************
Error: Could not create directory: 
in function: create_directory
Saved logfile: logfile.log
***************************************************************
dmake:  Error code 255, while making
'../../wntmsci8.pro/par/fam/basic_javafilter.par'
echo: No match.

ERROR: Error 65280 occurred while making
/cygdrive/d/v1/cws_src680_ooo20040225/scp/source/javafilter
dmake:  Error code 1, while making 'build_all'
echo: No match.

--------------------------------------------------

I bet that there are some 4NTisms used in that perl script.
Comment 1 Olaf Felka 2004-02-13 16:00:53 UTC
of @ mh: Please have a look.
Comment 2 ingo.schmidt-rosbiegal 2004-02-13 17:05:49 UTC
Hi,

there is not much that can go wrong in the perl script pre2par. But of course
this is the first time we use this new scp tooling.
Some questions:
Is this the first call of pre2par or are there successful calls before? 
Is there already the output directory in your scp project
(../../wntmsci8.pro/par/fam) or does the script has to create the output directory? 
My first idea is, that you do not have enough access rights in the output
directory of scp or that this disk is full.
Comment 3 quetschke 2004-02-13 17:50:24 UTC
OK, here comes some debugging info, the line:

pre2par::directory::check_directory($pre2par::globals::parfilename);

in solenv/bin/pre2par.pl fails. The value of $pre2par::globals::parfilename is:

../../wntmsci8.pro/par/osl/python.par

The logfile.log says:
***************************************************************
Error: Could not create directory: 
-----------------------------------^ No!
in function: create_directory
***************************************************************

So somehow we loose the parameter. I was in the middle of writing this
as your comment arrived, I'll address it:

> Some questions:
> Is this the first call of pre2par or are there successful calls before?
Yes, first call.

> Is there already the output directory in your scp project
> (../../wntmsci8.pro/par/fam) or does the script has to create the output
> directory?
No, has to be created.

> My first idea is, that you do not have enough access rights in the output
> directory of scp or that this disk is full.

The disc has plenty of space, I'll look into the rights issue.
Comment 4 quetschke 2004-02-13 18:12:17 UTC
Ok, in sub check_directory in directory.pm the following line
	pre2par::pathanalyzer::get_path_from_fullqualifiedname(\$productdirectory);

changes $productdirectory from "../../wntmsci8.pro/par/osl/python.par" to "".

I still bet on something "/" vs. "\" related ;-)
Comment 5 quetschke 2004-02-13 18:26:44 UTC
I found this as root of the problem in par2script/globals.pm:

	if ( $plat =~ /win/i ) 
	{
		$separator = "\\";
		$pathseparator = "\;";
		$isunix = 0;
		$iswin = 1;
	}
	else
	{ 
		$separator = "/";
		$pathseparator = "\:";
		$isunix = 1;
		$iswin = 0;
	}

Brrrr, ^O gives "cygwin" for the cygwin perl and "MSWin32" for ActiveState
perl.

Can someone please explain for which purpose $isunix or $iswin are used?

Is it OK for w32-tcsh to use $isunix = 1?

What is pre2par supposed to do?
Comment 6 quetschke 2004-02-13 18:47:33 UTC
Errm for this error it is pre2par/globals.pm.
Comment 7 quetschke 2004-02-13 21:47:16 UTC
Created attachment 13121 [details]
Patch for solenv/bin/modules/.../globals.pm
Comment 8 quetschke 2004-02-13 21:48:50 UTC
With the previous patch scp builds completely with w32-tcsh, but does it do the
right thing(TM) ?
Comment 9 Martin Hollmichel 2004-02-14 09:50:43 UTC
reassigned to is for review.
Comment 10 ingo.schmidt-rosbiegal 2004-02-16 16:00:25 UTC
Absolutely correct to fix this in globals.pm. To check
if ( $plat =~ /win/i ) is obviously not sufficient, because of "darwin" and
"cygwin". Sorry, this was my error.
This has also to be fixed in globals.pm of par2script.
Comment 11 ingo.schmidt-rosbiegal 2004-02-20 16:33:45 UTC
Fixed in globals.pm of pre2par and par2script in cws scp2fix1
Comment 12 ingo.schmidt-rosbiegal 2004-02-25 13:41:43 UTC
Verified.
Comment 13 ingo.schmidt-rosbiegal 2004-04-19 16:54:15 UTC
Closing this task