Menu

Mozilla Porting

Eric Lai
2000-12-21
2001-03-15
  • Eric Lai

    Eric Lai - 2000-12-21

    I see that you are trying to port Mozilla to Darwin but have you tried getting internet explorer and Netscape 6 to work on Darwin. I know that is not the aim but it can be a susitude while Mozilla is in the processes of being ported.

     
    • jwa

      jwa - 2000-12-21

      To get Internet Explorer or Netscape 6 to run in Darwin would probably be more work, as I don't think Microsoft or Netscape have plans to port it, so we would have to port something like Mac on Linux over to Darwin. Although, now that I think about it, that might be an interesting port to make. What do you think Proclus?

       
      • proclus realm

        proclus realm - 2001-01-29

        MOL!  Now that would be a project.  As I understand, MOL relies heavily on patching the linux kernel based on a current SystemMap.  Well, needless to say, a port would probably involve a total rewrite of the kernel interface.  So, you would have to know Linux, the Linux kernel, as well as mach, and Darwin.  Hey now, when you finished it, it wouldn't be MOL anymore.  How do you like the sound of MOD!  Or would it be MOM?

        That would certainly be a project unto itself.  If anyone wants to build and GPL it, I think that we would gladly add it to the distribution.  It would almost certainly out-perform the Classic environment!

        Regards,
        proclus

         
    • proclus realm

      proclus realm - 2000-12-22

      Well, that is an interesting suggestion.  My sense of it is that there is no way that Microsoft will give us an Explorer port.  As for Netscape, it would probably be possible to get the 4.7 sources for ppc-unknown-unknown and make them work, but it will require some leg-work.

      We have been giving the priority to Mozilla.  In my opinion it is the best browser for the modern OS that we are building, and the source code is a download away.  It is certainly the browser closest to the free software idea that is the basis of the GNU-Darwin project.

      In the future, Mozilla is far more likely to include peer to peer technologies and an SCP client than the other browsers.  These are also in line with the project goals.  As an example, we have gnutella now, but napster still needs some work.  Similarly, I think that Mozilla will be the first major browser on GNU-Darwin.

      Sorry if this is vague.  That was an excellent question!

      Regards,
      proclus

       
    • Finlay Dobbie

      Finlay Dobbie - 2001-01-27

      Mozilla is the opensource core of Netscape 6. Netscape 6 is pretty much Mozilla with some extra stuff thrown on top.

      Netscape 6 is closed source. If someone inside Netscape was particularly interested, I'm sure it would be possible to build it with a bit of work, but I doubt anybody in Netscape cares that much. The port wouldn't be much work since there is already a version for Linux (I think), and Mozilla pretty much runs on Darwin, doesn't it?

      IE is closed source also. However, there is not even a port to Linux, or any other UN*X OS. So therefore it's nigh on impossible to port.

      However, the w3.org standards-compliant browser Amaya might be an interesting thing to see... :-)

      Mac-On-Linux would take a lot of work to port also, but wouldn't be impossible. It patches the linux kernel at runtime, or something evil like that. But it would be an interesting thing to see! :-)

       
    • Adam Schuster

      Adam Schuster - 2001-01-30

      Howdy.

      This is exactly (ok, well in part) what my project is trying to do at the moment.  http://www.sourceforge.net/projects/qbati2

      Anyway, we (the few the proud the Q.BATi team) are in the process of trying to port FizzillaMach.  But as Unix, command line, make etc are not any of our strong suits, we are stuck with the following message (after a working ./configure):
      ../../config/nsinstall -R -m 755 mozilla-config ../../dist/bin
      config/config.mk:157: config/Darwin.mk: No such file or directory
      make[1]: *** No rule to make target `config/Darwin.mk'.  Stop.
      make: *** [export] Error 2

      It might make sense to collaborate in some way, so as to minimize overlap.  A thought.

      --changeistheonlyconstant--

       
      • proclus realm

        proclus realm - 2001-01-30

        Cool, you will find some helpful files and the answer to this question here.

        http://proclus.tripod.com/darwin/mozilla.html

        Also, you can get our sources from anonymous CVS.  It still needs much work, but we have worked though nsprpub and xpcom/build.  Check the SourceForge site docs for how to download these sources.

        http://sourceforge.net/docman/?group_id=1
        http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/mozilla/?cvsroot=gnu-darwin

        You should also use dlcompat.

        http://fink.sourceforge.net/files/dlcompat-20010123.tar.gz

        We were building static libraries, but these are unlikely to produce a working client.  When you get the Darwin.mk file, modify it so that it builds dynamic libraries.  Then there will be alot of work to clean up the code.  With dlcompat, you may be able to produce a working client using dynamic libraries as in the Next build.  Goodluck with it.  I really hope that you get there.

        Regards,
        proclus

         
        • Adam Schuster

          Adam Schuster - 2001-03-07

          Howdy, again.

          Working with some others, I've been able to get rather far in a Darwin/OS X port.  But we keep hitting a snag with htmlparser:

          COtherElements.h:2091: warning: declaration of `index' shadows global declaration
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L426$pb"} @ file address 65752.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L426$pb"} @ file address 65748.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L426$pb"} @ file address 65712.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L426$pb"} @ file address 65708.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L381$pb"} @ file address 44944.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L381$pb"} @ file address 44940.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L381$pb"} @ file address 44904.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L381$pb"} @ file address 44900.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L377$pb"} @ file address 44428.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L377$pb"} @ file address 44424.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L377$pb"} @ file address 44388.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L377$pb"} @ file address 44384.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L376$pb"} @ file address 44292.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L376$pb"} @ file address 44288.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L376$pb"} @ file address 44268.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L376$pb"} @ file address 44264.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L376$pb"} @ file address 44228.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L376$pb"} @ file address 44224.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L340$pb"} @ file address 32052.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L340$pb"} @ file address 32048.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L340$pb"} @ file address 32012.
          /var/tmp/cc002672.s:unknown:Can't emit reloc {- symbol "L340$pb"} @ file address 32008.

          Does anyone have any idea what exactly this is and (more importantly) what we can do to get around/fix it?

          Thanks for any ideas!

           
          • proclus realm

            proclus realm - 2001-03-07

            Sorry I can't be of more help.  This looks like a rather trivial compiler bug.  I just encountered it for the first time myself when compiling a program called arts++.  I'm having a similar problem with the f77 port.

            I tried with my Darwin installation and with my OSX/Dev tools installation, with the same results both ways.  I've recently noticed a new bug in the c++ compiler as well, where it appears to be over-zealous about pointer-types and prototypes.  Code that previously compiled, does not compile anymore.  Best of luck with Mozilla.  There is alot of c++ in the higher level interfaces.

            Regards,
            proclus

             
            • jwa

              jwa - 2001-03-07

              I thought I heard that there were newer versions of gcc and g++ in CVS, but I don't remember. If there are, could they maybe fix the problem?

               
              • Finlay Dobbie

                Finlay Dobbie - 2001-03-07

                Possibly... But building them is another matter. Perhaps wait for Darwin 1.3?

                 
          • jwa

            jwa - 2001-03-07

            Does this mean that you have gotten through xpcom? What version are you working on as well? I guess I'd just like more info on what you have been doing. I tried looking at your sourceforge site, but I didn't find anything.

             
            • Adam Schuster

              Adam Schuster - 2001-03-10

              I'm not sure when exactly it builds xpcom, so I'm not sure off hand.  I'm using a CVS pull from last week or so.  I'd love to put more stuff on my SourceForge site, but am not exactly sure how to do so.  Being that I'm rather new to the UNIX environment, I can't figure out how to guntar my mozilla directory to put it up on SourceForge.  gnutar -cz mozilla is as far as I can figure out, but it never seems to do anything but give me a long string of illegable text and lots of pinging.  Any ideas?

               
              • jwa

                jwa - 2001-03-10

                you need to say "gnutar -czf mozilla.tgz mozilla" the "f" tells it to go to a file, otherwise it tries to write it to your tape drive, which you probably don't have.

                 
                • Adam Schuster

                  Adam Schuster - 2001-03-15

                  Thanks for the help.  I got my mozilla directory gzip/tar'd rather soon after your post, but it took me a bit to finaly get it uploaded.  So, what I've got is up now at ftp://qbati2.sourceforge.net/pub/qbati2  In the mean time, I'm trying to venture into the brave new world of CVS, and get that all up and running :-)

                   
          • proclus realm

            proclus realm - 2001-03-12

            A follow up here: I just built a more recent cc from Apple CVS over the weekend. Now I get this instead.

            c++ -c -traditional-cpp -I../include Arts.cc -o Arts.o
            /System/Library/Frameworks/System.framework/Headers/c++/stl_alloc.h:191: sorry, not implemented: static data member templates
            /System/Library/Frameworks/System.framework/Headers/c++/stl_alloc.h:191: end of file read inside definition

            It appears that someone is working on this problem. When I try to comment out the offending lines in stl_alloc.h, it just creates more similar messages or compiler bug report messages.

            I've tarred up the compiler, if you want it. Just let me know. I may make a gcc package available at some point, because I would like to save some folks the trouble, if their compiler goes south. Bootstrapping takes _forever_.

            Regards,
            proclus

             

Log in to post a comment.