February 2001 Archives
OK, I've got local InstallBLIB and File::Copy fixed up. For now, I am going to just copy the old File::Find over to the 5.6.1 lib. It is not entirely feature-compatible with the new one, but good enough for now. Tomorrow, I think I'll go through some outstanding build issues with some of the modules. IO should be fine now (with the fixed File::Find), but some of the extensions had some problems (like one of the Devel:: modules). Maybe I'll try to clean out some other bug reports, if I can.
I did a build of the latest bleadperl, and aside from some symbols that should have been skipped in makedef.pl, it worked fine, all the way through to the perl MPW tool for all four compilers. I didn't go further than that.
Find::File is severely broken in 5.6. It was rewritten from scratch, and apparently without any thought given to portability. This is troublesome. I guess some of the responsibility is mine; when it was first submitted to p5p in late 1999, I saw the post, but never looked at the code. I don't know what should be done about it. Our choices that I see now: 1. fix the existing code (ack), 2. roll back to the previous version for 5.6/5.7 (not likely, since there were new features introduced), 3. roll back just for MacPerl (unattractive; see 2.), 4. rewrite from scratch again (ack!).
InstallBLIB had a little issue, that I fixed a long time ago, but didn't roll the change into the right copy or something. Thanks, Thomas.
File::Copy needs porting. It is actually not so bad, but to do syscopy it needs Mac::MoreFiles. Ack. Mac::MoreFiles won't be available when File::Copy is used in PerlInstall before Mac::MoreFiles even gets built ...
Find::File is severely broken in 5.6. It was rewritten from scratch, and apparently without any thought given to portability. This is troublesome. I guess some of the responsibility is mine; when it was first submitted to p5p in late 1999, I saw the post, but never looked at the code. I don't know what should be done about it. Our choices that I see now: 1. fix the existing code (ack), 2. roll back to the previous version for 5.6/5.7 (not likely, since there were new features introduced), 3. roll back just for MacPerl (unattractive; see 2.), 4. rewrite from scratch again (ack!).
InstallBLIB had a little issue, that I fixed a long time ago, but didn't roll the change into the right copy or something. Thanks, Thomas.
File::Copy needs porting. It is actually not so bad, but to do syscopy it needs Mac::MoreFiles. Ack. Mac::MoreFiles won't be available when File::Copy is used in PerlInstall before Mac::MoreFiles even gets built ...
Well, I finally got 5.6.1 source release out. I got config.h in shape, mostly. I need to look into macish.h a bit more. I had to add fp.h to macish.h for SC and MrC to get some of the math operations enabled in the new config.h. It seems about as usable as the 5.6.0 release was, so I guess that's good.
Now that we've got 5.6.1 going, I have about another week of cleanup of the build (maybe more, depending on what other users tell me), and then testing, testing, testing, porting, testing, porting, testing. I have access to a MySQL database on SourceForge now, and I may use that to help organize it all.
Now that we've got 5.6.1 going, I have about another week of cleanup of the build (maybe more, depending on what other users tell me), and then testing, testing, testing, porting, testing, porting, testing. I have access to a MySQL database on SourceForge now, and I may use that to help organize it all.
I got a lot more done on config.h. I really want to do another release (tomorrow?); it will depend on how much time I have. I sent Matthias some questions about various config.h macros. That is not necessary for the next release, but I didn't want to put it off any longer. I really want to figure out some problems with module installations, but I think I just might go ahead and do another test build, and then release. I can move on to the other stuff later.
What with this cold knocking me out, and other committments, I am behind where I want to be, so I think a release is important at this point, to keep things moving.
CVS is not updated with the current 5.6.1 source, but the macos and macperl directories are what matters; I am just taking the 5.6.1 source directly from the perforce repository. For now I will just let the CVS stuff in perl (except for the macos dir) remain stale; it is too much trouble to keep it up to date anyway, as maint-5.6 is updated quite often.
The next release will be in two forms, I think. One complete archive with everything, and then multiple smaller archives, for people who already have a lot of it.
What with this cold knocking me out, and other committments, I am behind where I want to be, so I think a release is important at this point, to keep things moving.
CVS is not updated with the current 5.6.1 source, but the macos and macperl directories are what matters; I am just taking the 5.6.1 source directly from the perforce repository. For now I will just let the CVS stuff in perl (except for the macos dir) remain stale; it is too much trouble to keep it up to date anyway, as maint-5.6 is updated quite often.
The next release will be in two forms, I think. One complete archive with everything, and then multiple smaller archives, for people who already have a lot of it.
I worked a lot more in config.h tonight. It is pretty close to done. I have a bunch of variables I am unsure of, and I'll pass those along to Matthias or Jarkko for help if I can't figure them out. Tomorrow I want to do another source release, this time for 5.6.1. I hope I can find the time to get it out. I have a hockey game at 10 p.m. on Thursday, which means I will be hanging out for a few hours after work, so I will have some extra time then, too.
I got a complete 5.6.1 build done tonight. I want to try to get problems with InstallBLIB worked out, and update config.h some more, and do a release tomorrow night.
The more I do, the longer the road looks. There are a lot of little bugs that are popping up. It seems like aside from the core of perl, many things are just not working properly. Toolbox modules, STDIN ... I did do some successful tests with Socket, which is good. :-)
The more I do, the longer the road looks. There are a lot of little bugs that are popping up. It seems like aside from the core of perl, many things are just not working properly. Toolbox modules, STDIN ... I did do some successful tests with Socket, which is good. :-)
OK, I figured out the problem with environ. It had been (erroneously) defined before, and now was (properly) un-defined, plus it was not supposed to be accessed anymore. So add in another #ifdef USE_ENVIRON_ARRAY arround the little code in util.c, and then we are set.
Although, I had to throw in a completely empty Perl_my_setenv function. At some point, it should do something, but for now it won't. I am pretty sure current MacPerl does not populate environ, either, so ... no biggie.
After a bunch of little things (and forgetting, then remembering, that xsubpp had not been patched and was therefore severely busted for my bleadperl build), I got a little MPW tool for perl.68K, v5.7.0. What does this mean? It means that we are close enough that v5.6.1 should be entirely doable (once the patches are integrated).
I am going to submit a few more patches for bleadperl, then I am going to return to the some other problems (InstallBLIB, maybe Config some more), and hopefully by then v5.6.1 will be ready for me to look at.
I might do some more work tonight (on the aforementioned patches), but not much work the rest of the week after that. Tomorrow is Valentine's Day, and then my three-day MacPerl Work Week is done.
Although, I had to throw in a completely empty Perl_my_setenv function. At some point, it should do something, but for now it won't. I am pretty sure current MacPerl does not populate environ, either, so ... no biggie.
After a bunch of little things (and forgetting, then remembering, that xsubpp had not been patched and was therefore severely busted for my bleadperl build), I got a little MPW tool for perl.68K, v5.7.0. What does this mean? It means that we are close enough that v5.6.1 should be entirely doable (once the patches are integrated).
I am going to submit a few more patches for bleadperl, then I am going to return to the some other problems (InstallBLIB, maybe Config some more), and hopefully by then v5.6.1 will be ready for me to look at.
I might do some more work tonight (on the aforementioned patches), but not much work the rest of the week after that. Tomorrow is Valentine's Day, and then my three-day MacPerl Work Week is done.
Well, I was sick longer than I thought I would be (that was a horrible cold, ack!) but it is mostly over now. I basically finished up my patches to bleadperl (this round of them, anyway) and submitted them to Jarkko last night, and he said they looked fine. Hopefully they will be in the next maintperl round, if they survive the next bleadperl release.
I tried to do a build of bleadperl on Mac OS last night (with the patches), and except for some problems with config.h (needs a lot of work) and environ being undefined where it was previously defined (??), all of the core .c files compiled. That's good. Of course, nothing was tested. And I need to figure out that dang environ problem. environ in util.c was definitely defined in the 5.6.0 build.
I tried to do a build of bleadperl on Mac OS last night (with the patches), and except for some problems with config.h (needs a lot of work) and environ being undefined where it was previously defined (??), all of the core .c files compiled. That's good. Of course, nothing was tested. And I need to figure out that dang environ problem. environ in util.c was definitely defined in the 5.6.0 build.
Well, I can't say much for the _new_ code in bleadperl, but Matthias' original patch to p5p is in there, and the few new patches seem to fit in OK. I didn't build yet, but I plan to give it a shot. I am going to finish this up tomorrow, I hope, and submit the patch to bleadperl to Jarkko; hopefully he can integrate it into maintperl ...
Thanks to Sarathy, I got access to perl source repository, housed at ActiveState, and running perforce, which is a software management system thingy kinda like CVS, only much better. And it costs a lot of money, so it should be much better. I called `p4 sync` (p4 is the perforce client) to get the repository to my Linux box, and decided I wanted to try it with MPW too (perforce has clients for many different architectures and OSes). It took me awhile, because I could not easily replicate the ssh tunnel on Mac OS (MacSSH does only ssh2, but I needed ssh1), until geoffeg from #perl pointed out to us that the -g option to ssh allows me to connect to a local tunnel with a remote host. So I just restarted the tunnel with -g and pointed the MPW client to my Linux box, and there we were. I suppose if I ever need to access remotely, I could either temporarily open up a port on my home box and still use it as a ssh tunnel proxy thing, or I could use F-Secure locally to tunnel (which is suboptimal; it has been quite buggy for me). The repository sync was about 250MB, so it took awhile.
I don't know if I will use p4 more from Linux or MPW, but since I was figuring out p4 and all (reading much of its documentation late into the night), it was good to get it working on both, and get it out of the way.
So that was much of the evening. The rest I spent doublechecking the original patch. I took the amended patch from Peter Prymmer and did my own builds on Linux with it, and others with my original patch, and lo and behold and no surprises at all, his patch worked perfectly. Adding in some more changes, I got a good patch that seems to work with MacPerl and Unix perl. I will do another test build or two, and hopefully, tonight, I will look at bleadperl and see how the patches fit.
I don't know if I will use p4 more from Linux or MPW, but since I was figuring out p4 and all (reading much of its documentation late into the night), it was good to get it working on both, and get it out of the way.
So that was much of the evening. The rest I spent doublechecking the original patch. I took the amended patch from Peter Prymmer and did my own builds on Linux with it, and others with my original patch, and lo and behold and no surprises at all, his patch worked perfectly. Adding in some more changes, I got a good patch that seems to work with MacPerl and Unix perl. I will do another test build or two, and hopefully, tonight, I will look at bleadperl and see how the patches fit.
After some words from Sarathy, Jarkko, and Nick, it looks like I am going to try to patch 5.7.0, and if those patches get into the perforce repository, then they should be able to be merged into 5.6.1 relatively easily. I hope to do that ASAP; I might not get to it until Monday, though, since I don't do a lot of work on this stuff except for Monday-Wednesday. Maybe I will find some hours this weekend, though.
Several people had success with builds, and have given me good feedback. I have been and will incorporate it into the archives and the build instructions.
VISE has pretty good licensing terms for share/free software; I want to make a pre-release installer and get it to them so I can get registered and get a serial no. from them.
So priorities now: getting the libraries to all build and install; work on Config.pm; evaluate 5.6.1/5.7.0; play around with VISE.
Several people had success with builds, and have given me good feedback. I have been and will incorporate it into the archives and the build instructions.
VISE has pretty good licensing terms for share/free software; I want to make a pre-release installer and get it to them so I can get registered and get a serial no. from them.
So priorities now: getting the libraries to all build and install; work on Config.pm; evaluate 5.6.1/5.7.0; play around with VISE.