Subject: Re: minimo
To: Masahiko Ito <m-ito@mbox.kyoto-inet.or.jp>
From: Andy Ruhl <acruhl@gmail.com>
List: port-hpcmips
Date: 03/11/2005 09:20:56
On Fri, 11 Mar 2005 19:54:22 +0900 (JST), Masahiko Ito
<m-ito@mbox.kyoto-inet.or.jp> wrote:
> Hello all.
> 
> From: Andy Ruhl <acruhl@gmail.com>
> Subject: Re: minimo
> Date: Thu, 10 Mar 2005 21:27:55 -0700
> Message-ID: <78a2305a05031020273f135b7b@mail.gmail.com>
> 
> acruhl> I tried to build minimo a few times on my Qube, but it never worked.
> acruhl> There is a lot of conflicting info about how to build it, but the
> acruhl> problems I was getting didn't look like config problems, they looked
> acruhl> like code compatibility problems (from what my feeble mind can
> acruhl> comprehend anyway).
> acruhl>
> acruhl> Went back to the above mentioned page and it looks like this guy may
> acruhl> be joining us to tell us about his exploits soon. I can't wait, I'd
> acruhl> really like to see how minimo works on my Mobilepro 880. Dillo is just
> acruhl> about infuriating... mMosaic is slightly better.
> acruhl>
> acruhl> Andy
> acruhl>
> 
> Befor I build minimo (with gtk+-1.2.10) on NetBSD/hpcmips, I
> had to install followings.
> 
> 1. glib-1.2.10.tar.gz
> =====================
> 
>     * patch for glib-1.2.10
> 
> -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE --
> *** config.sub.ORG      Sat Jan 29 20:00:02 2005
> --- config.sub  Sat Jan 29 20:01:23 2005
> ***************
> *** 212,218 ****
>               | mipstx39-* | mipstx39el-* | mcore-* \
>               | f301-* | armv*-* | t3e-* \
>               | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
> !             | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* )
>                 ;;
>         # Recognize the various machine names and aliases which stand
>         # for a CPU type and a company and sometimes even an OS.
> --- 212,218 ----
>               | mipstx39-* | mipstx39el-* | mcore-* \
>               | f301-* | armv*-* | t3e-* \
>               | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
> !             | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* | hpcmips-*)
>                 ;;
>         # Recognize the various machine names and aliases which stand
>         # for a CPU type and a company and sometimes even an OS.
> -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE --
> 
>     * tar xvzf glib-1.2.10.tar.gz
>     * cd glib-1.2.10
>     * patch <patch_for_glib-1.2.10
>     * ./configure
>     * make
>     * make install
> 
> 2. gtk+-1.2.10.tar.gz
> =====================
> 
>     * patch1 for gtk+-1.2.10
> 
> -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE --
> *** config.sub.ORG      Sat Jan 29 20:36:10 2005
> --- config.sub  Sat Jan 29 20:36:49 2005
> ***************
> *** 212,218 ****
>               | mipstx39-* | mipstx39el-* | mcore-* \
>               | f301-* | armv*-* | t3e-* \
>               | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
> !             | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* )
>                 ;;
>         # Recognize the various machine names and aliases which stand
>         # for a CPU type and a company and sometimes even an OS.
> --- 212,218 ----
>               | mipstx39-* | mipstx39el-* | mcore-* \
>               | f301-* | armv*-* | t3e-* \
>               | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
> !             | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* | hpcmips-* )
>                 ;;
>         # Recognize the various machine names and aliases which stand
>         # for a CPU type and a company and sometimes even an OS.
> -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE --
> 
>     * patch2 for gtk+-1.2.10
>       If you don't use multibyte character, this patch is not needed.
> 
> -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE --
> *** configure.ORG       Wed Feb 23 13:05:21 2005
> --- configure   Wed Feb 23 13:46:31 2005
> ***************
> *** 76,81 ****
> --- 76,83 ----
>     --disable-glibtest       Do not try to compile and run a test GLIB program"
>   ac_help="$ac_help
>     --with-x                use the X Window System"
> + ac_help="$ac_help
> +   --with-xlocale          force use X_LOCALE"
> 
>   # Initialize some variables set by options.
>   # The variables have the same names as the options, with
> ***************
> *** 427,432 ****
> --- 429,437 ----
>       # Obsolete; use --with-x.
>       with_x=yes ;;
> 
> +   --with-xlocale)
> +     with_xlocale=yes ;;
> +
>     -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
>     | --x-incl | --x-inc | --x-in | --x-i)
>       ac_prev=x_includes ;;
> ***************
> *** 5845,5850 ****
> --- 5850,5859 ----
>     need_x_locale=yes
>   fi
>   rm -fr conftest*
> + fi
> +
> + if test "x$with_xlocale" = xyes; then
> +   need_x_locale=yes
>   fi
> 
>   echo "$ac_t""$need_x_locale" 1>&6
> -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE --
> 
>     * tar xvzf gtk+-1.2.10.tar.gz
>     * cd gtk+-1.2.10
>     * patch <patch1_for_gtk+-1.2.10
>     * patch <patch2_for_gtk+-1.2.10
>     * ./configure --with-locale=ja_JP.eucJP --with-xlocale
>       It seem that locale function of NetBSD/hpcmips is broken :-<, so `--with-xlocale'
>       option use X_LOCALE force.
>       If you don't use multibyte character, `--with-xlocale' option is not needed.
>     * make
>     * make install
> 
> 3. libIDL-0.6.8.tar.gz
> ======================
> 
>     * patch for libIDL-0.6.8
> 
> -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE --
> *** config.sub.ORG      Sun Jan 30 01:04:19 2005
> --- config.sub  Sun Jan 30 01:05:10 2005
> ***************
> *** 207,213 ****
>               | mipstx39-* | mipstx39el-* \
>               | f301-* | armv*-* | t3e-* \
>               | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
> !             | thumb-* | v850-* | d30v-* | tic30-* | c30-* )
>                 ;;
>         # Recognize the various machine names and aliases which stand
>         # for a CPU type and a company and sometimes even an OS.
> --- 207,213 ----
>               | mipstx39-* | mipstx39el-* \
>               | f301-* | armv*-* | t3e-* \
>               | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
> !             | thumb-* | v850-* | d30v-* | tic30-* | c30-* | hpcmips-*)
>                 ;;
>         # Recognize the various machine names and aliases which stand
>         # for a CPU type and a company and sometimes even an OS.
> -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE --
> 
>     * tar xvzf libIDL-0.6.8.tar.gz
>     * cd libIDL-0.6.8
>     * patch <patch_for_libIDL-0.6.8
>     * ./configure
>     * make
>     * make install
> 
> 4. unzip551.tar.gz
> ==================
> 
>     * tar xvzf unzip551.tar.gz
>     * cd unzip-5.51
>     * ln -s unix/Makefile .
>     * make
>     * make install
> 
> 5. zip23.tar.gz
> ===============
> 
>     * tar xvzf zip23.tar.gz
>     * cd zip-2.3
>     * ln -s unix/Makefile .
>     * make
>     * make install
> 
> I think the biggest problem to build minimo for NetBSD/hpcmips that
> gcc(2.95.3) generate broken assembler source when combination of -fPIC
> option and switch-case sentence. and as got error like
> 
>  {standard input}: Assembler messages:
>  {standard input}:2218: Fatal error: {standard input}:997: bad return from bfd_install_relocation
>  gmake[1]: *** [nsObsoleteAStringThunk.o] Error 1
> 
> so I changed switch-case sentence to if-else sentence when
> `bfd_install_relocation' error happened. This is my main work to
> resolve problems of building minimo.
> 
> patch is here.
> 
> -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE --
> begin 644 firefox-1.0-netbsd-hpcmips.diff.gz
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
> 8_FOR_61_^P<+OU4;AZ[M/[LQA;WW,0``
> `
> end
> -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE -- CUT HERE --
> 
>     * tar xvzf  firefox-1.0-source.tar.bz2
>     * cd mozilla
>     * zcat /somewhere/firefox-1.0-netbsd-hpcmips.diff.gz | patch -p1
>     * vi .mozconfig
> 
> export MOZ_PHOENIX=1
> mk_add_options MOZ_PHOENIX=1
> 
> ac_add_options --disable-ldap
> ac_add_options --disable-mailnews
> ac_add_options --enable-extensions=cookie,xmlextras
> ac_add_options --enable-crypto
> ac_add_options --disable-composer
> ac_add_options --enable-single-profile
> ac_add_options --disable-profilesharing
> ac_add_options --enable-optimize
> ac_add_options --disable-debug
> ac_add_options --enable-default-toolkit=gtk
> ac_add_options --disable-xft
> ac_add_options --disable-freetype2
> ac_add_options --disable-profilesharing
> ac_add_options --disable-profilelocking
> ac_add_options --enable-single-profile
> ac_add_options --disable-accessibility
> ac_add_options --disable-composer
> ac_add_options --enable-plaintext-editor-only
> ac_add_options --disable-postscript
> ac_add_options --disable-mathml
> ac_add_options --disable-jsd
> ac_add_options --disable-installer
> ac_add_options --disable-xprint
> ac_add_options --disable-necko-disk-cache
> ac_add_options --enable-necko-small-buffers
> ac_add_options --disable-logging
> ac_add_options --disable-tests
> ac_add_options --enable-crypto
> ac_add_options --enable-necko-protocols=http,file,res,jar
> ac_add_options --enable-image-decoders=png,gif,jpeg
> ac_add_options --enable-strip
> ac_add_options --enable-reorder
> 
>     * make -f client.mk build
>     * cd xpinstall/packager
>     * make MOZILLA_BIN=../../dist/bin/firefox
>     * cd ../../embedding/config
>     * make
>     * cd ../../dist/
>     * tar cf - Embed ; (cd ~ && tar xvf -)
>     * vi ~/Embed/greprefs/all.js
> 
>      if you need, edit this.
> 
>      example
>      =======
> 
> pref("network.proxy.type",                  1);
> pref("network.proxy.ftp",                   "192.168.0.100");
> pref("network.proxy.ftp_port",              8080);
> pref("network.proxy.http",                  "192.168.0.100");
> pref("network.proxy.http_port",             8080);
> pref("network.proxy.ssl",                   "192.168.0.100");
> pref("network.proxy.ssl_port",              8080);
> pref("network.proxy.no_proxies_on",         "localhost, 127.0.0.1, 192.168.0.0/24");
> 
>     * cd ~/Embed/
>     * ./run-mozilla.sh ./TestGtkEmbed http://www.yahoo.com/
> 
> I have done build of minimo(+gtk+-1.2.10) and I can run minimo, but
> this minimo replied *no* reaction when any button on web page was
> clicked :-<
> 
> Next, I tried to build minimo with gtk+-2.2.4, but this minimo dead
> with message
> 
>     new_gtk_browser
>             menu bar
>             tool bar
>             location bar
>             status bar
>     Segmentation fault - core dumped
> 
> This is my current status of building minimo.

Thanks a lot for that info! Too bad it doesn't work yet. There aren't
any very nice options for "lightweight" browswers in my opinion. The
screenshots you have of Minimo are very promising.

Andy