This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: ast-branch: msvc project sync
Type: Stage:
Components: Interpreter Core Versions:
process
Status: closed Resolution: accepted
Dependencies: Superseder:
Assigned To: brett.cannon Nosy List: brett.cannon, jpe, logistix, theller
Priority: normal Keywords: patch

Created on 2003-05-23 22:20 by logistix, last changed 2022-04-10 16:08 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
msvc71.diff logistix, 2005-01-11 22:20 patch to build on msvc 7.1
Messages (12)
msg43829 - (view) Author: Grant Olson (logistix) Date: 2003-05-23 22:20
The PCBuild project files weren't updated to reflect the 
new files used by ast-branch.  Attached is a patch to 
get it back into sync.

It also adds references to Python-ast.h and code.h to 
zipimport.c and pyexpat.c so that they will compile 
properly.  Parsermodule still won't compile [for obvious 
reasons ;-)]

I couldn't figure out how to setup a command-line script 
in VC 6.0, so the adsl_c.py script would still need to be 
done manually to get a working compile.  If anyone 
knows how the _ssl project was setup to run a python 
script, I'd appreciate some pointers.
msg43830 - (view) Author: Thomas Heller (theller) * (Python committer) Date: 2003-05-28 11:51
Logged In: YES 
user_id=11105

Logistix, to add a command line project in MSVC6, you select
'Add new Project to workspace' from the pcbuild workspace
context menu, and in the dialog that appears you click the
'Makefile'  icon in the projects tab, enter a project name,
click ok and then you can enter the command lines to use.
msg43831 - (view) Author: Grant Olson (logistix) Date: 2005-01-05 07:15
Logged In: YES 
user_id=699438

I've attached an updated patch that gets things working 
against current cvs.  This also includes some fixes for typos 
that appear to have slipped through gcc and my have caused 
obscure bugs in *nix as well.
msg43832 - (view) Author: Grant Olson (logistix) Date: 2005-01-11 22:20
Logged In: YES 
user_id=699438

Attaching updated patch for VC7.1.  Patches 3 files.

pcbuild.vcprod xml config file to add new files and remove
old.  No impact on linux builds.

pc/config.c removes reference to parsermodule file.  No
impact on linux builds.

newcompile.c required a one-line change to an array
prototype.  Using the keyword 'static' causes VC to think
that it's the real array def and it complains because there
is no data.  Commenting out 'static' fixes the problem. 
Unsure of impact on other builds.
msg43833 - (view) Author: Grant Olson (logistix) Date: 2005-03-20 20:34
Logged In: YES 
user_id=699438

Assigned to Brett per his post in python-dev.
msg43834 - (view) Author: John Ehresman (jpe) * Date: 2005-03-20 22:11
Logged In: YES 
user_id=22785

Looking at the diff, I wonder if we're losing any needed
specialized config options for particular files because I
see a number of FileConfiguration blocks removed.
msg43835 - (view) Author: Grant Olson (logistix) Date: 2005-03-20 22:37
Logged In: YES 
user_id=699438

I removed two files from the project that are no longer used. 
compile.c and tokenzier.c have been superceded by 
newcompile.c and tokenizer_pgen.c.

If you look at the nesting in the XML project file, you'll see 
that those are per-file config settings for the two files in 
question.  They're just getting deleted as part of the file 
removal.

Why there were per-file settings instead of project-specific 
settings is another question altogeather.  Maybe it's an 
artifact from an automated VC6.0 project file upgrade.
msg43836 - (view) Author: John Ehresman (jpe) * Date: 2005-03-20 22:41
Logged In: YES 
user_id=22785

Yes, my question is really whether the config options for
the old files be applied to the new files (compile.c ->
newcompile.c, tokenizer.c -> tokenizer_pgen.c)
msg43837 - (view) Author: Grant Olson (logistix) Date: 2005-03-20 23:10
Logged In: YES 
user_id=699438

No you don't.

The easiest way to demonstrate is to open 
python\dist\src\pcbuild\pythoncore.vcproj on the HEAD 
branch of the source.  There is a top-level <Configuration> tag 
that is at the same level as the files tag that contains the 
appropriate information.  If you go down to the <Files> 
section, you'll see that files added after the 7.1 upgrade like 
_csv.c heapqmodule.c, and genobj.c don't have the per-file 
configuration info and compile fine.

I've gotten good builds in debug and release modes.  I can't 
test Itanium builds though.
msg43838 - (view) Author: John Ehresman (jpe) * Date: 2005-03-20 23:22
Logged In: YES 
user_id=22785

It looks like the preprocessor definitions are potentially
different.  It also works for me, but I wonder if there's
some obscure reason the settings are overridden or if it is
an artifact of the conversion from the msvc 6 project file.
msg43839 - (view) Author: Grant Olson (logistix) Date: 2005-03-21 02:00
Logged In: YES 
user_id=699438

I hear what you're saying, but right now the options seem to 
be a broken build on windows or one that might have some 
unknown minor configuration problems.

If you're looking for someone on the core team to bless it, I 
think Martin Von Loewis might be the guy.  We just need to 
find some way to bribe him. ;-)
msg43840 - (view) Author: Brett Cannon (brett.cannon) * (Python committer) Date: 2005-03-21 19:30
Logged In: YES 
user_id=357491

Other than just moving the static array up instead of removing the static 
declaration I applied the patch as rev. 1.34.2.3 for PC/config.c, 1.26.2.2 for 
PCbuild/pythoncore.vcproj and rev. 1.1.2.104 for Python/newcompile.c .

Thanks logistix for the patch and John for verifying it works.
History
Date User Action Args
2022-04-10 16:08:52adminsetgithub: 38543
2003-05-23 22:20:47logistixcreate