Mark,

I've just returned from the vacation. And I have planned to work on
trying to run awt with GnuWin32 libraries today. But we have few
predicatble issues with them.

We also did not finish the talks about integrating the needed sources
into Harmony class library since the licenses seems to be Apache
authorized. As we did with zlib.

And we also have possibility to update Harmony build script to
download and build this libraries...

SY, Alexey

2006/7/11, Mark Hindess <[EMAIL PROTECTED]>:

I've checked in a script so that:

  svn co ... classlib
  cd classlib
  ant fetch-depends
  sh depends/libs/build/fetch-awt-depends.sh
  ant -Dwith.awt.swing=true rebuild

should work on Debian Linux.  Updates for other distributions would be
very welcome.

Any update on what to do on Windows?

I'm hoping to get the misc natives from the awt contribution integrated
today (or maybe tomorrow) then I'll start on the awt natives so it would
be good to resolve this issue.

Regards,
 Mark.

On 11 July 2006 at 12:43, [EMAIL PROTECTED] wrote:
> Author: hindessm
> Date: Tue Jul 11 05:43:09 2006
> New Revision: 420823
>
> URL: http://svn.apache.org/viewvc?rev=420823&view=rev
> Log:
> Added README.txt for AWT dependencies - mostly taken from contribution README
> .
> Added helper script for Linux - Debian/Ubuntu only but could be updated for
> other common distros.
>
>
> Added:
>     incubator/harmony/enhanced/classlib/trunk/depends/libs/build/   (with pro
> ps)
>     incubator/harmony/enhanced/classlib/trunk/depends/libs/build/README.txt
>  (with props)
>     incubator/harmony/enhanced/classlib/trunk/depends/libs/build/fetch-awt-de
> pends.sh   (with props)
>
> Propchange: incubator/harmony/enhanced/classlib/trunk/depends/libs/build/
> -----------------------------------------------------------------------------
> -
> --- svn:ignore (added)
> +++ svn:ignore Tue Jul 11 05:43:09 2006
> @@ -0,0 +1,3 @@
> +jpeg
> +lcms
> +png
>
> Added: incubator/harmony/enhanced/classlib/trunk/depends/libs/build/README.tx
> t
> URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/d
> epends/libs/build/README.txt?rev=420823&view=auto
> =============================================================================
> =
> --- incubator/harmony/enhanced/classlib/trunk/depends/libs/build/README.txt (
> added)
> +++ incubator/harmony/enhanced/classlib/trunk/depends/libs/build/README.txt T
> ue Jul 11 05:43:09 2006
> @@ -0,0 +1,175 @@
> +Dependencies for AWT
> +--------------------
> +
> +For Debian/Ubuntu, it should be possible to run:
> +
> +  sh depends/libs/build/fetch-awt-depends.sh
> +
> +to construct the dependency tree.
> +
> +On other platforms the dependencies must be build using the following
> +instructions.
> +
> +
> +1. Building the external libraries
> +----------------------------------
> +
> +To enable image decoding (JPEG and PNG images) and color management
> +with awt, build the IJG JPEG, Libpng and the Little CMS libraries.
> +
> +After performing the instructions below, you create the following
> +directory tree structure:
> +
> +<EXTRACT_DIR>/depends/libs/build
> +       |
> +       \---jpeg
> +       |    |
> +       |    +--- cderror.h
> +       |    +--- jinclude.h
> +       |    +--- jpeglib.h
> +       |    +--- cdjpeg.h
> +       |    +--- jdct.h
> +       |    +--- jmemsys.h
> +       |    +--- jversion.h
> +       |    +--- jchuff.h
> +       |    +--- jdhuff.h
> +       |    +--- jmorecfg.h
> +       |    +--- jerror.h
> +       |    +--- jpegint.h
> +       |    +--- jconfig.lnx and/or jconfig.vc
> +       |    +--- libjpeg.lib and/or libjpeg.ia32 and/or libjpeg.ipf
> +       \---png
> +       |    |
> +       |    +--- png.h
> +       |    +--- pngconf.h
> +       |    +--- libpng.lib and/or libpng.ia32 and/or libpng.ipf
> +       \---lcms
> +       |    |
> +       |    +--- icc34.h
> +       |    +--- lcms.h
> +       |    +--- lcms114.lib and/or liblcms.ia32 and/or liblcms.ipf
> +       ...
> +
> +NOTE: The tree above indicates the files required for this contribution,
> +      not all the files distributed with each library.
> +
> +Further in the document, <EXTERNAL_LIBS_DIR> denotes the directory
> +<EXTRACT_DIR>/depends/libs/build.
> +
> +1.1 Building the IJG IPEG library
> +
> +    System: Windows* IA-32
> +
> +    1. Change the directory to the IJG JPEG library source directory;
> +       normally, jpeg-6b.
> +    2. Copy the file jconfig.vc to jconfig.h.
> +    3. Copy the jconfig.vc file to the <EXTERNAL_LIBS_DIR>/jpeg/ directory.
> +    4. Start the Microsoft* Windows* SDK build environment or
> +       the Visual Studio .NET* 2003 Command Prompt.
> +    5. Build the library by running:
> +
> +         For the release version: nmake nodebug=1 /f makefile.vc
> +         For the debug version: nmake /f makefile.vc
> +
> +    6. Copy the file libjpeg.lib to the <EXTERNAL_LIBS_DIR>/jpeg directory.
> +    7. Copy the required header files to the <EXTERNAL_LIBS_DIR>/jpeg
> +       directory.  For a list of required files, see the tree view above.
> +
> +    System: Linux* IA-32
> +
> +    1. Change the directory to the IJG JPEG library source directory;
> +       normally, jpeg-6b.
> +    2. Configure the build by running:
> +
> +         For the release version: ./configure CFLAGS=Â'-O2 -fpicÂ'
> +         For the debug version: ./configure CFLAGS=Â'-g -fpicÂ'
> +
> +    3. Copy the file jconfig.h created during the previous step to
> +       the <EXTERNAL_LIBS_DIR>/jpeg/jconfig.lnx directory.
> +    4. To build the library, run:
> +
> +         make
> +
> +    5. Copy the resulting libjpeg.a file to the file
> +       <EXTERNAL_LIBS_DIR>/jpeg/libjpeg.ia32.
> +
> +    6. Copy the required header files to the <EXTERNAL_LIBS_DIR>/jpeg
> +       directory.
> +
> +1.2 Building the Libpng library
> +
> +    System: Windows* IA-32
> +
> +    1. Place the libpng source directory and zlib source directory
> +       in a convenient location and rename the zlib source directory to zlib
> .
> +    2. Change the working directory to the libpng source directory.
> +    3. Edit the file ./scripts/makefile.vcwin32 by changing the following li
> ne:
> +
> +         CFLAGS  = -nologo -MD -O2 -W3 -I..\zlib
> +
> +         For the release version, type: CFLAGS = -nologo -MT -O2 -W3 -I..\zl
> ib .
> +         For the debug version, type: CFLAGS = -nologo -MTd -W3 -I..\zlib .
> +
> +    4. Start the Microsoft* Windows* SDK build environment
> +       or the Visual Studio .NET* 2003 Command Prompt.
> +    5. Subsequently run the following commands:
> +
> +         nmake /f scripts\makefile.vcwin32 clean
> +         nmake /f scripts\makefile.vcwin32
> +
> +    6. Copy the files libpng.lib,  png.h and pngconf.h to
> +       the directory <EXTERNAL_LIBS_DIR>/png.
> +
> +   System: Linux* IA-32
> +
> +   1. Change the working directory to the libpng source directory.
> +   2. Configure the build by running:
> +
> +         For the release version: ./configure CFLAGS=Â'-O2 -fpicÂ'
> +         For the debug version: ./configure CFLAGS=Â'-g -fpicÂ'
> +
> +   3. To build the library, run:
> +
> +        make
> +
> +   4. Copy the resulting ./.libs/libpng.a file the following file
> +      <EXTERNAL_LIBS_DIR>/png/libpng.ia32
> +
> +   5. Copy the files png.h and pngconf.h to the
> +      <EXTERNAL_LIBS_DIR>/png directory.
> +
> +1.3 Building the Little CMS library
> +
> +   System: Windows* IA-32
> +
> +   1. Change the working directory to the LCMS source directory.
> +   2. Open the Visual Studio* solution from the ./Projects/VC7/ directory.
> +   3. Set the LCMS static library as a startup project.
> +   4. Specify the configuration: debug or release.
> +   5. Open the project properties. Go to C/C++/Code generation
> +      and change the run-time library to multi-threaded: /MT or /MTd.
> +   6. Go to C/C++/Preprocessor and add __CONSOLE__ to the preprocessor
> +      definitions.
> +   7. Build the LCMS static library.
> +   8. Copy the file lcms114.lib to the <EXTERNAL_LIBS_DIR>/lcms directory.
> +         NOTE: Use the file lcms114d.lib for the debug configuration.
> +   9. Copy ./include/icc34.h and ./include/lcms.h to the
> +      <EXTERNAL_LIBS_DIR>/lcms directory.
> +
> +   System: Linux* IA-32
> +
> +   1. Change the working directory to the LCMS source directory.
> +   2. Configure the build by running:
> +
> +     For the release version: ./configure CFLAGS=Â'-O2 -fpicÂ'
> +     For the debug version: ./configure CFLAGS=Â'-g -fpicÂ'
> +
> +   3. To build the library, run:
> +
> +     make
> +
> +   4. Copy the file ./src/.libs/liblcms.a to the following file
> +      <EXTERNAL_LIBS_DIR>/lcms/liblcms.ia32
> +
> +   5. Copy the files ./include/icc34.h and ./include/lcms.h
> +      to the <EXTERNAL_LIBS_DIR>/lcms directory.
>
> Propchange: incubator/harmony/enhanced/classlib/trunk/depends/libs/build/READ
> ME.txt
> -----------------------------------------------------------------------------
> -
>     svn:eol-style = native
>
> Added: incubator/harmony/enhanced/classlib/trunk/depends/libs/build/fetch-awt
> -depends.sh
> URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/d
> epends/libs/build/fetch-awt-depends.sh?rev=420823&view=auto
> =============================================================================
> =
> --- incubator/harmony/enhanced/classlib/trunk/depends/libs/build/fetch-awt-de
> pends.sh (added)
> +++ incubator/harmony/enhanced/classlib/trunk/depends/libs/build/fetch-awt-de
> pends.sh Tue Jul 11 05:43:09 2006
> @@ -0,0 +1,88 @@
> +#!/bin/sh
> +
> +for d in depends make modules ;do
> +  if [ \! -d $d ]; then
> +    echo no $d directory
> +    echo this script should be run from classlib top-level directory
> +    echo
> +    echo sh depends/libs/build/fetch-awt-swing.sh
> +    exit 1
> +  fi
> +done
> +
> +LCMS_HOME=/usr
> +mkdir -p depends/libs/build/lcms
> +while read s t
> +do
> +  src=$LCMS_HOME/$s
> +  tgt=depends/libs/build/lcms/$t
> +  if [ \! -e $src ]; then
> +    echo $src not found
> +    echo liblcms development package not install
> +    echo for debian/ubuntu try: apt-get install liblcms1-dev
> +    exit 1
> +  fi
> +  if [ -e $tgt ]; then
> +    echo $tgt exists
> +  else
> +    echo Linking $src to $tgt
> +    ln -s $src $tgt
> +  fi
> +done <<EOF
> +  lib/liblcms.a liblcms.ia32
> +  include/icc34.h icc34.h
> +  include/lcms.h lcms.h
> +EOF
> +
> +PNG_HOME=/usr
> +mkdir -p depends/libs/build/png
> +while read s t
> +do
> +  src=$PNG_HOME/$s
> +  tgt=depends/libs/build/png/$t
> +  if [ \! -e $src ]; then
> +    echo $src not found
> +    echo libpng development package not install
> +    echo for debian/ubuntu try: apt-get install libpng12-dev
> +    exit 1
> +  fi
> +  if [ -e $tgt ]; then
> +    echo $tgt exists
> +  else
> +    echo Linking $src to $tgt
> +    ln -s $src $tgt
> +  fi
> +done <<EOF
> +  lib/libpng.a libpng.ia32
> +  include/pngconf.h pngconf.h
> +  include/png.h png.h
> +EOF
> +
> +JPEG_HOME=/usr
> +mkdir -p depends/libs/build/jpeg
> +while read s t
> +do
> +  src=$JPEG_HOME/$s
> +  tgt=depends/libs/build/jpeg/$t
> +  if [ \! -e $src ]; then
> +    echo $src not found
> +    echo libjpeg development package not install
> +    echo for debian/ubuntu try: apt-get install libjpeg62-dev
> +    exit 1
> +  fi
> +  if [ -e $tgt ]; then
> +    echo $tgt exists
> +  else
> +    echo Linking $src to $tgt
> +    ln -s $src $tgt
> +  fi
> +done <<EOF
> +  lib/libjpeg.a libjpeg.ia32
> +  include/jconfig.h jconfig.lnx
> +  include/jpeglib.h jpeglib.h
> +  include/jmorecfg.h jmorecfg.h
> +  include/jerror.h jerror.h
> +  include/jpegint.h jpegint.h
> +EOF
> +
> +exit
>
> Propchange: incubator/harmony/enhanced/classlib/trunk/depends/libs/build/fetc
> h-awt-depends.sh
> -----------------------------------------------------------------------------
> -
>     svn:eol-style = native
>
> Propchange: incubator/harmony/enhanced/classlib/trunk/depends/libs/build/fetc
> h-awt-depends.sh
> -----------------------------------------------------------------------------
> -
>     svn:executable = *
>



---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
Alexey A. Petrenko
Intel Middleware Products Division

Reply via email to