~ubuntu-branches/ubuntu/raring/libjpeg-turbo/raring-security

« back to all changes in this revision

Viewing changes to BUILDING.txt

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2011-12-20 23:12:52 UTC
  • mfrom: (1.1.1)
  • Revision ID: package-import@ubuntu.com-20111220231252-74naxp27nuzxpn8o
Tags: 1.1.90+svn733-0ubuntu2
* Sync with upstream to svn733.

* Rename libjpeg-test to libjpeg-turbo-test.
* Rename libjpeg-turbo-dbg to libjpeg-turbo8-dbg.
* Rename libjpeg8-dev to libjpeg-turbo8-dev.
* Move the docs into the -dev package, install the upstream changelog
  in the -dev only.
* Split out libturbojpeg.so into it's own package, don't let
  libjpeg-turbo8-dev depend on it.
* Fix libjpeg-turbo8-dbg package description.
* Install jconfig.h into multiarch include path.
* Remove HAVE_STD{LIB,DEF}_H from jconfig.h since they are not used and
  conflict with autoconf.
* libjpeg-turbo8:
  - Add a symbols file, with a different version for symbols only found
    in the libjpeg-turbo implementation.
  - Remove the shlibs file.
  - Breaks/Replaces libjpeg8 (<< 8c-2ubuntu5).
* Copy the exifautotran and jpegexiforient tools from the libjpeg8
  sources, install into libjpeg-turbo-progs.
* Don't install tjbench in libjpeg-turbo-progs to avoid dependency
  on libturbojpeg.

Show diffs side-by-side

added added

removed removed

Lines of Context:
11
11
-- automake 1.7 or later
12
12
-- libtool 1.4 or later
13
13
 
 
14
-- NASM (if building x86 or x86-64 SIMD extensions)
14
15
   * 0.98, or 2.01 or later is required for a 32-bit build
15
16
   * NASM 2.00 or later is required for a 64-bit build
16
17
   * NASM 2.07 or later is required for a 64-bit build on OS X.  This can be
281
281
Use CMake (see recipes below)
282
282
 
283
283
 
 
284
===========
 
285
ARM Support
 
286
===========
 
287
 
 
288
This release of libjpeg-turbo can use ARM NEON SIMD instructions to accelerate
 
289
JPEG compression/decompression by approximately 2-4x on ARMv7 and later
 
290
platforms.  If libjpeg-turbo is configured on an ARM Linux platform, then the
 
291
build system will automatically include the NEON SIMD routines, if they are
 
292
supported.
 
293
 
 
294
 
 
295
Building libjpeg-turbo for iOS
 
296
------------------------------
 
297
 
 
298
iOS platforms, such as the iPhone and iPad, also use ARM processors, some of
 
299
which support NEON instructions.  Additional steps are required to build
 
300
libjpeg-turbo for these platforms.  The steps below assume iOS SDK v4.3.  If
 
301
you are using a different SDK version, then you will need to modify the
 
302
examples accordingly.
 
303
 
 
304
Additional build requirements:
 
305
 
 
306
  gas-preprocessor.pl (https://github.com/yuvi/gas-preprocessor) should be
 
307
  installed in your PATH.
 
308
 
 
309
Set the following shell variables for simplicity:
 
310
 
 
311
  IOS_PLATFORMDIR="/Developer/Platforms/iPhoneOS.platform"
 
312
  IOS_SYSROOT="$IOS_PLATFORMDIR/Developer/SDKs/iPhoneOS4.3.sdk"
 
313
  IOS_GCC="$IOS_PLATFORMDIR/Developer/usr/bin/arm-apple-darwin10-llvm-gcc-4.2"
 
314
 
 
315
  ARM v6 only (up to and including iPhone 3G):
 
316
  IOS_CFLAGS="-march=armv6 -mcpu=arm1176jzf-s -mfpu=vfp"
 
317
 
 
318
  ARM v7 only (iPhone 3GS and newer, iPad):
 
319
  IOS_CFLAGS="-march=armv7 -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon"
 
320
 
 
321
Follow the procedure under "Building libjpeg-turbo" above, adding
 
322
 
 
323
  --host arm-apple-darwin10 --enable-static --disable-shared \
 
324
    CC="$IOS_GCC" LD="$IOS_GCC" \
 
325
    CFLAGS="-mfloat-abi=softfp -isysroot $IOS_SYSROOT -O3 $IOS_CFLAGS" \
 
326
    LDFLAGS="-mfloat-abi=softfp -isysroot $IOS_SYSROOT $IOS_CFLAGS"
 
327
 
 
328
to the configure command line.
 
329
 
 
330
Once built, lipo can be used to combine the ARM v6 and v7 variants into a
 
331
universal library.
 
332
 
284
333
 
285
334
*******************************************************************************
286
335
**     Building on Windows (Visual C++ or MinGW)
596
645
make udmg [BUILDDIR32={32-bit build directory}]
597
646
 
598
647
  On 64-bit OS X systems, this creates a version of the Macintosh package and
599
 
  disk image which contains universal i386/x86-64 binaries.  You should first
 
648
  disk image that contains universal i386/x86-64 binaries.  You should first
600
649
  configure a 32-bit out-of-tree build of libjpeg-turbo, then configure a
601
650
  64-bit out-of-tree build, then run 'make udmg' from the 64-bit build
602
651
  directory.  The build system will look for the 32-bit build under
609
658
 
610
659
make csunpkg [BUILDDIR32={32-bit build directory}]
611
660
 
612
 
  On 64-bit Solaris systems, this creates a combined package which contains
 
661
  On 64-bit Solaris systems, this creates a combined package that contains
613
662
  both 32-bit and 64-bit libraries.  You should first configure a 32-bit
614
663
  out-of-tree build of libjpeg-turbo, then configure a 64-bit out-of-tree
615
664
  build, then run 'make csunpkg' from the 64-bit build directory.  The build