Compare commits
49 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0dedd1ae9a | ||
|
|
df3337ce8a | ||
|
|
38ccf8532d | ||
|
|
7b99172528 | ||
|
|
13b0944e9b | ||
|
|
83f2144655 | ||
|
|
bdf7986e7c | ||
|
|
eadc3c0f91 | ||
|
|
ae79fdbc2d | ||
|
|
c773d10b65 | ||
|
|
2093c6380d | ||
|
|
3d1dd07d54 | ||
|
|
995c831c5e | ||
|
|
cbda81a01d | ||
|
|
4bf3b585ef | ||
|
|
e238603c37 | ||
|
|
45d48291f9 | ||
|
|
ff95aa6d36 | ||
|
|
d90c9a2564 | ||
|
|
8e2bba9e02 | ||
|
|
8c2b9fa744 | ||
|
|
64586cd185 | ||
|
|
e16eaed09c | ||
|
|
f12c7db429 | ||
|
|
bf5a12db42 | ||
|
|
12fc3eaf63 | ||
|
|
49597877a4 | ||
|
|
991c2fcae7 | ||
|
|
4ea16c0603 | ||
|
|
377add7ae9 | ||
|
|
a51ada6706 | ||
|
|
ef663e333e | ||
|
|
be09b20a40 | ||
|
|
9ca2364694 | ||
|
|
3dc1bc2ded | ||
|
|
1a2219ec26 | ||
|
|
b6f097f729 | ||
|
|
d3e320fee7 | ||
|
|
830d5fccf4 | ||
|
|
4132b1d552 | ||
|
|
f9bdeb62e2 | ||
|
|
e728ed7a36 | ||
|
|
a644fb05a7 | ||
|
|
86d8c0aa26 | ||
|
|
fb096fff78 | ||
|
|
14ecb539df | ||
|
|
09271951d9 | ||
|
|
7bac07bf12 | ||
|
|
0f413b2207 |
79
BUILDING.txt
79
BUILDING.txt
@@ -7,20 +7,15 @@ Build Requirements
|
||||
==================
|
||||
|
||||
-- autoconf 2.56 or later
|
||||
* If using MinGW, this can be obtained by installing the MSYS DTK
|
||||
|
||||
-- automake 1.7 or later
|
||||
* If using MinGW, this can be obtained by installing the MSYS DTK
|
||||
|
||||
-- libtool 1.4 or later
|
||||
* If using MinGW, this can be obtained by installing the MSYS DTK
|
||||
* If using MinGW, these can be obtained by installing the MSYS DTK
|
||||
|
||||
-- NASM
|
||||
* 0.98 or later is required for a 32-bit build
|
||||
* NASM 2.05 or later is required for a 64-bit build
|
||||
* NASM 2.07 or later is required for a 64-bit build on OS/X (10.6 "Snow
|
||||
Leopard" or later.) This can be obtained from MacPorts
|
||||
(http://www.macports.org/).
|
||||
* NASM 2.07 or later is required for a 64-bit build on OS/X. This can be
|
||||
obtained from MacPorts (http://www.macports.org/).
|
||||
|
||||
The NASM 2.05 RPMs do not work on older Linux systems, such as Enterprise
|
||||
Linux 4. On such systems, you can easily build and install NASM 2.05
|
||||
@@ -39,9 +34,9 @@ Build Requirements
|
||||
Building libjpeg-turbo
|
||||
======================
|
||||
|
||||
The following procedure will build libjpeg-turbo on Linux, 32-bit OS X, and
|
||||
Solaris/x86 systems (on Solaris, this generates a 32-bit library. See below
|
||||
for 64-bit build instructions.)
|
||||
The following procedure will build libjpeg-turbo on Linux, FreeBSD, 32-bit
|
||||
OS X, and Solaris/x86 systems (on Solaris, this generates a 32-bit library.
|
||||
See below for 64-bit build instructions.)
|
||||
|
||||
cd libjpeg-turbo
|
||||
autoreconf -fiv
|
||||
@@ -116,7 +111,7 @@ Build Recipes
|
||||
|
||||
Add
|
||||
|
||||
--host i686-pc-linux-gnu CFLAGS='-O3 -m32' CXXFLAGS='-O3 -m32'
|
||||
--host i686-pc-linux-gnu CFLAGS='-O3 -m32' CXXFLAGS='-O3 -m32' LDFLAGS=-m32
|
||||
|
||||
to the configure command line.
|
||||
|
||||
@@ -126,9 +121,10 @@ to the configure command line.
|
||||
|
||||
Add
|
||||
|
||||
--host x86_64-apple-darwin10.0.0 NASM=/opt/local/bin/nasm
|
||||
--host x86_64-apple-darwin NASM=/opt/local/bin/nasm
|
||||
|
||||
to the configure command line. NASM 2.07 from MacPorts must be installed.
|
||||
to the configure command line. NASM 2.07 or later from MacPorts must be
|
||||
installed.
|
||||
|
||||
|
||||
32-bit Library Build on 64-bit OS/X
|
||||
@@ -141,9 +137,25 @@ Add
|
||||
to the configure command line.
|
||||
|
||||
|
||||
32-bit Backward-Compatible Library Build on 64-bit OS/X
|
||||
64-bit Backward-Compatible Library Build on 64-bit OS/X
|
||||
-------------------------------------------------------
|
||||
|
||||
Add
|
||||
|
||||
--host x86_64-apple-darwin NASM=/opt/local/bin/nasm \
|
||||
CFLAGS='-isysroot /Developer/SDKs/MacOSX10.4u.sdk \
|
||||
-mmacosx-version-min=10.4 -O3' \
|
||||
CXXFLAGS='-isysroot /Developer/SDKs/MacOSX10.4u.sdk \
|
||||
-mmacosx-version-min=10.4 -O3' \
|
||||
LDFLAGS='-isysroot /Developer/SDKs/MacOSX10.4u.sdk \
|
||||
-mmacosx-version-min=10.4'
|
||||
|
||||
to the configure command line. The OS X 10.4 SDK must be installed.
|
||||
|
||||
|
||||
32-bit Backward-Compatible Library Build on OS/X
|
||||
------------------------------------------------
|
||||
|
||||
Add
|
||||
|
||||
CFLAGS='-isysroot /Developer/SDKs/MacOSX10.4u.sdk \
|
||||
@@ -166,6 +178,18 @@ Add
|
||||
to the configure command line.
|
||||
|
||||
|
||||
32-bit Library Build on 64-bit FreeBSD
|
||||
--------------------------------------
|
||||
|
||||
Add
|
||||
|
||||
--host i386-unknown-freebsd CC='gcc -B /usr/lib32' CXX='g++ -B/usr/lib32' \
|
||||
CFLAGS='-O3 -m32' CXXFLAGS='-O3 -m32' LDFLAGS='-B/usr/lib32'
|
||||
|
||||
to the configure command line. NASM 2.07 or later from FreeBSD ports must be
|
||||
installed.
|
||||
|
||||
|
||||
MinGW Build on Cygwin
|
||||
---------------------
|
||||
|
||||
@@ -233,7 +257,8 @@ Build Requirements
|
||||
to the system or user LIB environment variable prior to building
|
||||
libjpeg-turbo.
|
||||
|
||||
-- NASM (http://www.nasm.us/) 0.98 or later
|
||||
-- NASM (http://www.nasm.us/) 0.98 or later (NASM 2.05 or later is required for
|
||||
a 64-bit build)
|
||||
|
||||
======================
|
||||
Building libjpeg-turbo
|
||||
@@ -251,14 +276,10 @@ This will generate the following files under libjpeg-turbo\windows\:
|
||||
turbojpeg.dll Shared library for TurboJPEG/OSS
|
||||
turbojpeg.lib Development stub for TurboJPEG/OSS shared library
|
||||
|
||||
#If a 64-bit Windows platform is detected, then the build system will attempt
|
||||
#to build a 64-bit version of libjpeg-turbo. You can override this by running
|
||||
#
|
||||
# make -f win/Makefile WIN64=no
|
||||
If a 64-bit Windows platform is detected, then the build system will attempt
|
||||
to build a 64-bit version of libjpeg-turbo. You can override this by running
|
||||
|
||||
NOTE: For unknown reasons, Win64 support doesn't work yet, so at the moment,
|
||||
you have to run 'make -f win/Makefile WIN64=yes' to get a 64-bit build on
|
||||
64-bit Windows. The paragraph above will apply once Win64 support is working.
|
||||
make -f win/Makefile WIN64=no
|
||||
|
||||
|
||||
*******************************************************************************
|
||||
@@ -287,11 +308,11 @@ make dmg
|
||||
|
||||
make udmg
|
||||
|
||||
On 64-bit OS X (10.6 "Snow Leopard" or later), this creates a version of the
|
||||
Macintosh package/disk image which contains universal i386/x86-64 binaries.
|
||||
The 32-bit fork of these binaries is backward compatible with OS X 10.4 and
|
||||
later, whereas the 64-bit fork is compatible with OS X 10.6 and later. OS X
|
||||
10.4 compatibility SDK required.
|
||||
On 64-bit OS X systems, this creates a version of the Macintosh package and
|
||||
disk image which contains universal i386/x86-64 binaries. The 32-bit fork of
|
||||
these binaries is backward compatible with OS X 10.4 and later. The 64-bit
|
||||
fork can be made backward compatible as well by using the instructions in
|
||||
the "Build Recipes" section. OS X 10.4 compatibility SDK required.
|
||||
|
||||
make nsi
|
||||
|
||||
@@ -299,7 +320,7 @@ make nsi
|
||||
libjpeg-turbo SDK. This requires the Nullsoft Install System
|
||||
(http://nsis.sourceforge.net/.) makensis.exe should be in your PATH.
|
||||
|
||||
make -f win/Makefile dist
|
||||
make -f win/Makefile nsi
|
||||
|
||||
This creates a Win32 installer for the Visual C++ version of the
|
||||
libjpeg-turbo SDK. This requires the Nullsoft Install System
|
||||
|
||||
@@ -1,3 +1,36 @@
|
||||
Significant changes since 0.0.93
|
||||
================================
|
||||
|
||||
[1] 2983700: Further FreeBSD build tweaks (no longer necessary to specify
|
||||
--host when configuring on a 64-bit system)
|
||||
|
||||
[2] Created sym. links in the Unix/Linux packages so that the TurboJPEG
|
||||
include file can always be found in /opt/libjpeg-turbo/include, the 32-bit
|
||||
static libraries can always be found in /opt/libjpeg-turbo/lib32, and the
|
||||
64-bit static libraries can always be found in /opt/libjpeg-turbo/lib64.
|
||||
|
||||
[3] The Unix/Linux distribution packages now include the libjpeg run-time
|
||||
programs (cjpeg, etc.) and man pages.
|
||||
|
||||
[4] Created a 32-bit supplementary package for amd64 Debian systems which
|
||||
contains just the 32-bit libjpeg-turbo libraries.
|
||||
|
||||
[5] Moved the libraries from */lib32 to */lib in the i386 Debian package.
|
||||
|
||||
[6] Include distribution package for Cygwin
|
||||
|
||||
[7] No longer necessary to specify --without-simd on non-x86 architectures, and
|
||||
unit tests now work on those architectures.
|
||||
|
||||
|
||||
Significant changes since 0.0.91
|
||||
================================
|
||||
|
||||
[1] 2982659, Fixed x86-64 build on FreeBSD systems
|
||||
|
||||
[2] 2988188: Added support for Windows 64-bit systems
|
||||
|
||||
|
||||
Significant changes since 0.0.90
|
||||
================================
|
||||
|
||||
|
||||
77
Makefile.am
77
Makefile.am
@@ -39,7 +39,8 @@ endif
|
||||
|
||||
TSTHDRS = rrutil.h rrtimer.h
|
||||
|
||||
noinst_PROGRAMS = jpgtest jpegut cjpeg djpeg jpegtran rdjpgcom wrjpgcom
|
||||
bin_PROGRAMS = cjpeg djpeg jpegtran rdjpgcom wrjpgcom
|
||||
noinst_PROGRAMS = jpgtest jpegut
|
||||
|
||||
jpgtest_SOURCES = $(TSTHDRS) jpgtest.cxx bmp.h bmp.c
|
||||
|
||||
@@ -78,7 +79,7 @@ wrjpgcom_SOURCES = wrjpgcom.c
|
||||
wrjpgcom_LDADD = libjpeg.la
|
||||
|
||||
|
||||
DISTMANS= cjpeg.1 djpeg.1 jpegtran.1 rdjpgcom.1 wrjpgcom.1
|
||||
dist_man1_MANS = cjpeg.1 djpeg.1 jpegtran.1 rdjpgcom.1 wrjpgcom.1
|
||||
|
||||
DOCS= README install.doc usage.doc wizard.doc example.c libjpeg.doc \
|
||||
structure.doc coderules.doc filelist.doc jconfig.doc change.log \
|
||||
@@ -86,14 +87,19 @@ DOCS= README install.doc usage.doc wizard.doc example.c libjpeg.doc \
|
||||
ChangeLog.txt
|
||||
|
||||
TESTFILES= testorig.jpg testorig.ppm testimg.bmp testimgflt.jpg \
|
||||
testimgfst.jpg testimgint.jpg testimgp.jpg testimgfst.ppm testimgint.ppm
|
||||
testimgfst.jpg testimgint.jpg testimgp.jpg testimgfst.ppm testimgint.ppm \
|
||||
testimg-nosimd.bmp testimgfst-nosimd.ppm testorig-nosimd.ppm \
|
||||
testimgflt-nosimd.jpg testimgint-nosimd.jpg testimgfst-nosimd.jpg \
|
||||
testimgp-nosimd.jpg
|
||||
|
||||
EXTRA_DIST = win release $(DOCS) $(DISTMANS) $(TESTFILES)
|
||||
EXTRA_DIST = win release $(DOCS) $(TESTFILES)
|
||||
|
||||
dist-hook:
|
||||
rm -rf `find $(distdir) -name .svn`
|
||||
|
||||
|
||||
if WITH_SIMD
|
||||
|
||||
test: testclean cjpeg djpeg jpegtran jpegut
|
||||
./jpegut
|
||||
./cjpeg -dct int -outfile testoutint.jpg $(srcdir)/testorig.ppm
|
||||
@@ -115,20 +121,45 @@ test: testclean cjpeg djpeg jpegtran jpegut
|
||||
./jpegtran -outfile testoutt.jpg testoutp.jpg
|
||||
cmp $(srcdir)/testimgint.jpg testoutt.jpg
|
||||
|
||||
else
|
||||
|
||||
test: testclean cjpeg djpeg jpegtran jpegut
|
||||
./jpegut
|
||||
./cjpeg -dct int -outfile testoutint.jpg $(srcdir)/testorig-nosimd.ppm
|
||||
./cjpeg -dct fast -opt -outfile testoutfst.jpg $(srcdir)/testorig-nosimd.ppm
|
||||
./cjpeg -dct float -outfile testoutflt.jpg $(srcdir)/testorig-nosimd.ppm
|
||||
cmp $(srcdir)/testimgint-nosimd.jpg testoutint.jpg
|
||||
cmp $(srcdir)/testimgfst-nosimd.jpg testoutfst.jpg
|
||||
cmp $(srcdir)/testimgflt-nosimd.jpg testoutflt.jpg
|
||||
./djpeg -dct int -fast -ppm -outfile testoutint.ppm $(srcdir)/testorig.jpg
|
||||
./djpeg -dct fast -ppm -outfile testoutfst.ppm $(srcdir)/testorig.jpg
|
||||
./djpeg -dct float -ppm -outfile testoutflt.ppm $(srcdir)/testorig.jpg
|
||||
cmp $(srcdir)/testimgint.ppm testoutint.ppm
|
||||
cmp $(srcdir)/testimgfst-nosimd.ppm testoutfst.ppm
|
||||
cmp $(srcdir)/testorig-nosimd.ppm testoutflt.ppm
|
||||
./djpeg -dct int -bmp -colors 256 -outfile testout.bmp $(srcdir)/testorig.jpg
|
||||
cmp $(srcdir)/testimg-nosimd.bmp testout.bmp
|
||||
./cjpeg -dct int -progressive -outfile testoutp.jpg $(srcdir)/testorig-nosimd.ppm
|
||||
cmp $(srcdir)/testimgp-nosimd.jpg testoutp.jpg
|
||||
./jpegtran -outfile testoutt.jpg testoutp.jpg
|
||||
cmp $(srcdir)/testimgint-nosimd.jpg testoutt.jpg
|
||||
|
||||
endif
|
||||
|
||||
testclean:
|
||||
$(RM) testout*
|
||||
$(RM) *_GRAYQ[0-9]*.bmp
|
||||
$(RM) *_GRAYQ[0-9]*.ppm
|
||||
$(RM) *_GRAYQ[0-9]*.jpg
|
||||
$(RM) *_420Q[0-9]*.bmp
|
||||
$(RM) *_420Q[0-9]*.ppm
|
||||
$(RM) *_420Q[0-9]*.jpg
|
||||
$(RM) *_422Q[0-9]*.bmp
|
||||
$(RM) *_422Q[0-9]*.ppm
|
||||
$(RM) *_422Q[0-9]*.jpg
|
||||
$(RM) *_444Q[0-9]*.bmp
|
||||
$(RM) *_444Q[0-9]*.ppm
|
||||
$(RM) *_444Q[0-9]*.jpg
|
||||
rm -f testout*
|
||||
rm -f *_GRAYQ[0-9]*.bmp
|
||||
rm -f *_GRAYQ[0-9]*.ppm
|
||||
rm -f *_GRAYQ[0-9]*.jpg
|
||||
rm -f *_420Q[0-9]*.bmp
|
||||
rm -f *_420Q[0-9]*.ppm
|
||||
rm -f *_420Q[0-9]*.jpg
|
||||
rm -f *_422Q[0-9]*.bmp
|
||||
rm -f *_422Q[0-9]*.ppm
|
||||
rm -f *_422Q[0-9]*.jpg
|
||||
rm -f *_444Q[0-9]*.bmp
|
||||
rm -f *_444Q[0-9]*.ppm
|
||||
rm -f *_444Q[0-9]*.jpg
|
||||
|
||||
rpm: all
|
||||
sh $(srcdir)/release/makerpm ${PACKAGE_NAME} ${VERSION} ${BUILD} \
|
||||
@@ -158,15 +189,23 @@ sunpkg: all
|
||||
sh $(srcdir)/release/makesunpkg ${PACKAGE_NAME} ${VERSION} ${BUILD} \
|
||||
${DEBARCH} ${srcdir} $(CC) $(CXX) combined
|
||||
|
||||
nsi: all
|
||||
makensis -nocd -DVERSION=$(VERSION) -DAPPNAME=libjpeg-turbo-gcc64 \
|
||||
-DWLIBDIR=.libs -DWSRCDIR=$(srcdir) -DWBLDDIR=. -DWHDRDIR=. -DWIN64 \
|
||||
-DPLATFORM="GCC 64-bit" -DGCC $(srcdir)/release/libjpeg-turbo.nsi
|
||||
|
||||
else
|
||||
|
||||
sunpkg: all
|
||||
sh $(srcdir)/release/makesunpkg ${PACKAGE_NAME} ${VERSION} ${BUILD} \
|
||||
${DEBARCH} ${srcdir} $(CC) $(CXX)
|
||||
|
||||
endif
|
||||
|
||||
nsi: all
|
||||
makensis -nocd -DVERSION=$(VERSION) -DAPPNAME=libjpeg-turbo-gcc \
|
||||
-DWLIBDIR=.libs -DWSRCDIR=$(srcdir) -DWBLDDIR=. -DWHDRDIR=. \
|
||||
-DPLATFORM="GCC" -DGCC $(srcdir)/release/libjpeg-turbo.nsi
|
||||
|
||||
endif
|
||||
|
||||
cygwinpkg: all
|
||||
sh $(srcdir)/release/makecygwinpkg ${PACKAGE_NAME} ${VERSION} ${srcdir}
|
||||
|
||||
@@ -62,7 +62,7 @@ For instance:
|
||||
user 0m0.029s
|
||||
sys 0m0.010s
|
||||
|
||||
NOTE: {lib} can be lib, lib32, lib64, or lib/amd64, depending on the O/S and
|
||||
NOTE: {lib} can be lib, lib32, lib64, or lib/64, depending on the O/S and
|
||||
architecture.
|
||||
|
||||
System administrators can also replace the libjpeg sym links in /usr/{lib} with
|
||||
@@ -106,20 +106,20 @@ Replacing TurboJPEG/IPP
|
||||
=======================
|
||||
|
||||
libjpeg-turbo is a drop-in replacement for the TurboJPEG/IPP SDK used by
|
||||
VirtualGL 2.1.x (and prior) and TurboVNC. libjpeg-turbo contains a wrapper
|
||||
VirtualGL 2.1.x and TurboVNC 0.6 (and prior.) libjpeg-turbo contains a wrapper
|
||||
library (TurboJPEG/OSS) that emulates the TurboJPEG API using libjpeg-turbo
|
||||
instead of the closed source Intel Performance Primitives. You can replace the
|
||||
TurboJPEG/IPP package on Linux systems with the libjpeg-turbo package in order
|
||||
to make existing releases of VirtualGL 2.1.x and TurboVNC use the new codec at
|
||||
run time. Note that the 64-bit libjpeg-turbo packages contain only 64-bit
|
||||
binaries, whereas the TurboJPEG/IPP 64-bit packages contain both 64-bit and
|
||||
binaries, whereas the TurboJPEG/IPP 64-bit packages contained both 64-bit and
|
||||
32-bit binaries. Thus, to replace a TurboJPEG/IPP 64-bit package, install
|
||||
both the 64-bit and 32-bit versions of libjpeg-turbo.
|
||||
|
||||
You can also build the VirtualGL 2.1.x and TurboVNC source code with
|
||||
You can also build the VirtualGL 2.1.x and TurboVNC 0.6 source code with
|
||||
the libjpeg-turbo SDK instead of TurboJPEG/IPP. It should work identically.
|
||||
libjpeg-turbo also includes static library versions of TurboJPEG/OSS, which
|
||||
are used to build VirtualGL 2.2 and later.
|
||||
are used to build TurboVNC 1.0 and later.
|
||||
|
||||
========================================
|
||||
Using libjpeg-turbo in Your Own Programs
|
||||
@@ -134,19 +134,20 @@ of libjpeg by setting
|
||||
and
|
||||
LIBRARY_PATH=/opt/libjpeg-turbo/{lib}
|
||||
|
||||
({lib} = lib, lib32, lib64, or lib/amd64, as appropriate.)
|
||||
({lib} = lib32 or lib64, depending on whether you are building a 32-bit or a
|
||||
64-bit application.)
|
||||
|
||||
If using Cygwin, then set
|
||||
|
||||
CPATH=/cygdrive/c/libjpeg-turbo-gcc/include
|
||||
CPATH=/cygdrive/c/libjpeg-turbo-gcc[64]/include
|
||||
and
|
||||
LIBRARY_PATH=/cygdrive/c/libjpeg-turbo-gcc/lib
|
||||
LIBRARY_PATH=/cygdrive/c/libjpeg-turbo-gcc[64]/lib
|
||||
|
||||
If using MinGW, then set
|
||||
|
||||
CPATH=/c/libjpeg-turbo-gcc/include
|
||||
CPATH=/c/libjpeg-turbo-gcc[64]/include
|
||||
and
|
||||
LIBRARY_PATH=/c/libjpeg-turbo-gcc/lib
|
||||
LIBRARY_PATH=/c/libjpeg-turbo-gcc[64]/lib
|
||||
|
||||
Building against libjpeg-turbo is useful, for instance, if you want to build an
|
||||
application that leverages the libjpeg-turbo colorspace extensions (see below.)
|
||||
@@ -162,14 +163,14 @@ version of libjpeg-turbo, you can use the following linker options:
|
||||
|
||||
-Wl,-Bstatic -ljpeg -Wl,-Bdynamic
|
||||
|
||||
On OS X, simply add /opt/libjpeg-turbo/{lib}/libjpeg.a to the linker command
|
||||
On OS X, simply add /opt/libjpeg-turbo/lib/libjpeg.a to the linker command
|
||||
line (this also works on Linux and Solaris.)
|
||||
|
||||
To build Visual C++ applications using libjpeg-turbo, add
|
||||
c:\libjpeg-turbo\include to your system or user INCLUDE environment variable
|
||||
and c:\libjpeg-turbo\lib to your system or user LIB environment variable, and
|
||||
then link against either jpeg.lib (to use jpeg62.dll) or jpeg-static.lib (to
|
||||
use the static version of libjpeg-turbo.)
|
||||
c:\libjpeg-turbo[64]\include to your system or user INCLUDE environment
|
||||
variable and c:\libjpeg-turbo[64]\lib to your system or user LIB environment
|
||||
variable, and then link against either jpeg.lib (to use jpeg62.dll) or
|
||||
jpeg-static.lib (to use the static version of libjpeg-turbo.)
|
||||
|
||||
=====================
|
||||
Colorspace Extensions
|
||||
|
||||
@@ -44,7 +44,14 @@ case "$host_os" in
|
||||
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
|
||||
objfmt='BSD-a.out'
|
||||
else
|
||||
objfmt='ELF'
|
||||
case "$host_cpu" in
|
||||
x86_64 | amd64)
|
||||
objfmt='ELF64'
|
||||
;;
|
||||
*)
|
||||
objfmt='ELF'
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
;;
|
||||
solaris* | sunos* | sysv* | sco*)
|
||||
|
||||
10
configure.ac
10
configure.ac
@@ -2,7 +2,7 @@
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_PREREQ([2.56])
|
||||
AC_INIT([libjpeg-turbo], [0.0.91])
|
||||
AC_INIT([libjpeg-turbo], [1.0.0])
|
||||
BUILD=`date +%Y%m%d`
|
||||
|
||||
AM_INIT_AUTOMAKE([-Wall foreign dist-bzip2])
|
||||
@@ -133,7 +133,7 @@ if test "x${with_simd}" != "xno"; then
|
||||
# Check if we're on a supported CPU
|
||||
AC_MSG_CHECKING([if we have SIMD optimisations for cpu type])
|
||||
case "$host_cpu" in
|
||||
x86_64)
|
||||
x86_64 | amd64)
|
||||
AC_MSG_RESULT([yes (x86_64)])
|
||||
AC_PROG_NASM
|
||||
simd_arch=x86_64
|
||||
@@ -145,7 +145,8 @@ if test "x${with_simd}" != "xno"; then
|
||||
;;
|
||||
*)
|
||||
AC_MSG_RESULT([no ("$host_cpu")])
|
||||
AC_MSG_ERROR([CPU is not supported])
|
||||
AC_MSG_WARN([SIMD support not available for this CPU. Performance will suffer.])
|
||||
with_simd=no;
|
||||
;;
|
||||
esac
|
||||
|
||||
@@ -157,7 +158,7 @@ fi
|
||||
AM_CONDITIONAL([WITH_SIMD], [test "x$with_simd" != "xno"])
|
||||
AM_CONDITIONAL([SIMD_I386], [test "x$simd_arch" = "xi386"])
|
||||
AM_CONDITIONAL([SIMD_X86_64], [test "x$simd_arch" = "xx86_64"])
|
||||
AM_CONDITIONAL([X86_64], [test "x$host_cpu" = "xx86_64"])
|
||||
AM_CONDITIONAL([X86_64], [test "x$host_cpu" = "xx86_64" -o "x$host_cpu" = "xamd64"])
|
||||
|
||||
case "$host_cpu" in
|
||||
x86_64)
|
||||
@@ -173,6 +174,7 @@ esac
|
||||
AC_SUBST(RPMARCH)
|
||||
AC_SUBST(DEBARCH)
|
||||
AC_SUBST(BUILD)
|
||||
AC_SUBST(RM)
|
||||
|
||||
# jconfig.h is the file we use, but we have another before that to
|
||||
# fool autoheader. the reason is that we include this header in our
|
||||
|
||||
4
jchuff.c
4
jchuff.c
@@ -384,7 +384,7 @@ dump_buffer (working_state * state)
|
||||
put_buffer = (put_buffer << size) | code; \
|
||||
}
|
||||
|
||||
#if __WORDSIZE==64
|
||||
#if __WORDSIZE==64 || defined(_WIN64)
|
||||
|
||||
#define DUMP_BITS(code, size) { \
|
||||
CHECKBUF47() \
|
||||
@@ -425,7 +425,7 @@ dump_buffer (working_state * state)
|
||||
|
||||
int _max=0;
|
||||
|
||||
#if __WORDSIZE==64
|
||||
#if __WORDSIZE==64 || defined(_WIN64)
|
||||
|
||||
#define DUMP_VALUE(ht, codevalue, t, nbits) { \
|
||||
size = ht->ehufsi[codevalue]; \
|
||||
|
||||
2
jdhuff.c
2
jdhuff.c
@@ -628,7 +628,7 @@ decode_mcu_slow (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
|
||||
|
||||
/***************************************************************/
|
||||
|
||||
#if __WORDSIZE == 64
|
||||
#if __WORDSIZE == 64 || defined(_WIN64)
|
||||
|
||||
#define ENSURE_SHORT \
|
||||
if (bits_left < 16) { \
|
||||
|
||||
2
jdhuff.h
2
jdhuff.h
@@ -73,7 +73,7 @@ EXTERN(void) jpeg_make_d_derived_tbl
|
||||
* necessary.
|
||||
*/
|
||||
|
||||
#if __WORDSIZE == 64
|
||||
#if __WORDSIZE == 64 || defined(_WIN64)
|
||||
|
||||
typedef size_t bit_buf_type; /* type of bit-extraction buffer */
|
||||
#define BIT_BUF_SIZE 64 /* size of buffer in bits */
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
!include x64.nsh
|
||||
Name "libjpeg-turbo SDK for ${PLATFORM}"
|
||||
OutFile ${WBLDDIR}\${APPNAME}.exe
|
||||
InstallDir c:\${APPNAME}
|
||||
@@ -11,6 +12,11 @@ UninstPage uninstConfirm
|
||||
UninstPage instfiles
|
||||
|
||||
Section "libjpeg-turbo SDK for ${PLATFORM} (required)"
|
||||
!ifdef WIN64
|
||||
${If} ${RunningX64}
|
||||
${DisableX64FSRedirection}
|
||||
${Endif}
|
||||
!endif
|
||||
SectionIn RO
|
||||
!ifdef GCC
|
||||
IfFileExists $SYSDIR/libturbojpeg.dll exists 0
|
||||
@@ -35,7 +41,7 @@ Section "libjpeg-turbo SDK for ${PLATFORM} (required)"
|
||||
!endif
|
||||
SetOutPath $INSTDIR\bin
|
||||
!ifdef GCC
|
||||
File "${WLIBDIR}\libjpeg-62.dll"
|
||||
File "/oname=libjpeg-62.dll" "${WLIBDIR}\libjpeg-*.dll"
|
||||
!else
|
||||
File "${WLIBDIR}\jpeg62.dll"
|
||||
!endif
|
||||
@@ -74,6 +80,11 @@ Section "libjpeg-turbo SDK for ${PLATFORM} (required)"
|
||||
SectionEnd
|
||||
|
||||
Section "Uninstall"
|
||||
!ifdef WIN64
|
||||
${If} ${RunningX64}
|
||||
${DisableX64FSRedirection}
|
||||
${Endif}
|
||||
!endif
|
||||
|
||||
SetShellVarContext all
|
||||
|
||||
|
||||
@@ -39,13 +39,13 @@ TurboJPEG/IPP. It is faster in some areas but slower in others.
|
||||
#-->%setup -q
|
||||
|
||||
#-->%build
|
||||
#-->configure prefix=$RPM_BUILD_ROOT/opt/%{name} libdir=$RPM_BUILD_ROOT/opt/%{name}/%{__lib} --with-pic
|
||||
#-->make prefix=$RPM_BUILD_ROOT/opt/%{name} libdir=$RPM_BUILD_ROOT/opt/%{name}/%{__lib}
|
||||
#-->configure libdir=/opt/%{name}/%{__lib} mandir=/opt/%{name}/man --with-pic
|
||||
#-->make DESTDIR=$RPM_BUILD_ROOT libdir=/opt/%{name}/%{__lib} mandir=/opt/%{name}/man
|
||||
|
||||
%install
|
||||
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
make install prefix=$RPM_BUILD_ROOT/opt/%{name} libdir=$RPM_BUILD_ROOT/opt/%{name}/%{__lib}
|
||||
make install DESTDIR=$RPM_BUILD_ROOT libdir=/opt/%{name}/%{__lib} mandir=/opt/%{name}/man
|
||||
rm -f $RPM_BUILD_ROOT/opt/%{name}/%{__lib}/*.la
|
||||
mkdir -p $RPM_BUILD_ROOT/usr/%{__lib}
|
||||
mv $RPM_BUILD_ROOT/opt/%{name}/%{__lib}/libturbojpeg.* $RPM_BUILD_ROOT/usr/%{__lib}
|
||||
@@ -53,6 +53,12 @@ mv $RPM_BUILD_ROOT/opt/%{name}/%{__lib}/libturbojpeg.* $RPM_BUILD_ROOT/usr/%{__l
|
||||
/sbin/ldconfig -n $RPM_BUILD_ROOT/usr/%{__lib}
|
||||
mkdir -p $RPM_BUILD_ROOT/usr/include
|
||||
mv $RPM_BUILD_ROOT/opt/%{name}/include/turbojpeg.h $RPM_BUILD_ROOT/usr/include
|
||||
ln -fs /usr/include/turbojpeg.h $RPM_BUILD_ROOT/opt/%{name}/include/
|
||||
ln -fs /usr/%{__lib}/libturbojpeg.a $RPM_BUILD_ROOT/opt/%{name}/%{__lib}/
|
||||
%ifarch x86_64
|
||||
%else
|
||||
ln -fs %{__lib} $RPM_BUILD_ROOT/opt/%{name}/lib32
|
||||
%endif
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
|
||||
@@ -63,13 +69,24 @@ rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc %{_srcdir}/README-turbo.txt %{_srcdir}/README %{_srcdir}/libjpeg.doc %{_srcdir}/LICENSE.txt %{_srcdir}/LGPL.txt
|
||||
%doc %{_srcdir}/README-turbo.txt %{_srcdir}/README %{_srcdir}/libjpeg.doc %{_srcdir}/usage.doc %{_srcdir}/LICENSE.txt %{_srcdir}/LGPL.txt
|
||||
%dir /opt/%{name}
|
||||
%dir /opt/%{name}/bin
|
||||
/opt/%{name}/bin/cjpeg
|
||||
/opt/%{name}/bin/djpeg
|
||||
/opt/%{name}/bin/jpegtran
|
||||
/opt/%{name}/bin/rdjpgcom
|
||||
/opt/%{name}/bin/wrjpgcom
|
||||
%dir /opt/%{name}/%{__lib}
|
||||
%ifarch x86_64
|
||||
%else
|
||||
/opt/%{name}/lib32
|
||||
%endif
|
||||
/opt/%{name}/%{__lib}/libjpeg.so.62.0.0
|
||||
/opt/%{name}/%{__lib}/libjpeg.so.62
|
||||
/opt/%{name}/%{__lib}/libjpeg.so
|
||||
/opt/%{name}/%{__lib}/libjpeg.a
|
||||
/opt/%{name}/%{__lib}/libturbojpeg.a
|
||||
/usr/%{__lib}/libturbojpeg.so
|
||||
/usr/%{__lib}/libturbojpeg.a
|
||||
/usr/include/turbojpeg.h
|
||||
@@ -78,5 +95,13 @@ rm -rf $RPM_BUILD_ROOT
|
||||
/opt/%{name}/include/jerror.h
|
||||
/opt/%{name}/include/jmorecfg.h
|
||||
/opt/%{name}/include/jpeglib.h
|
||||
/opt/%{name}/include/turbojpeg.h
|
||||
%dir /opt/%{name}/man
|
||||
%dir /opt/%{name}/man/man1
|
||||
/opt/%{name}/man/man1/cjpeg.1*
|
||||
/opt/%{name}/man/man1/djpeg.1*
|
||||
/opt/%{name}/man/man1/jpegtran.1*
|
||||
/opt/%{name}/man/man1/rdjpgcom.1*
|
||||
/opt/%{name}/man/man1/wrjpgcom.1*
|
||||
|
||||
%changelog
|
||||
|
||||
49
release/makecygwinpkg
Executable file
49
release/makecygwinpkg
Executable file
@@ -0,0 +1,49 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -u
|
||||
set -e
|
||||
trap onexit INT
|
||||
trap onexit TERM
|
||||
trap onexit EXIT
|
||||
|
||||
TMPDIR=
|
||||
|
||||
onexit()
|
||||
{
|
||||
if [ ! "$TMPDIR" = "" ]; then
|
||||
rm -rf $TMPDIR
|
||||
fi
|
||||
}
|
||||
|
||||
usage()
|
||||
{
|
||||
echo "$0 <package name> <version> <source dir.>"
|
||||
exit 1
|
||||
}
|
||||
|
||||
if [ $# -lt 3 ]; then usage $0; fi
|
||||
PACKAGE_NAME=$1
|
||||
VERSION=$2
|
||||
SRCDIR=$3
|
||||
|
||||
umask 022
|
||||
rm -f $PACKAGE_NAME-$VERSION-cygwin.tar.bz2
|
||||
TMPDIR=`mktemp -d /tmp/ljtbuild.XXXXXX`
|
||||
__PWD=`pwd`
|
||||
make install DESTDIR=$TMPDIR/pkg mandir=/opt/$PACKAGE_NAME/man
|
||||
rm $TMPDIR/pkg/opt/$PACKAGE_NAME/lib/*.la
|
||||
DOCDIR=$TMPDIR/pkg/usr/share/doc/$PACKAGE_NAME-$VERSION
|
||||
mkdir -p $DOCDIR
|
||||
install -m 644 $SRCDIR/README-turbo.txt $DOCDIR
|
||||
install -m 644 $SRCDIR/README $DOCDIR
|
||||
install -m 644 $SRCDIR/libjpeg.doc $DOCDIR
|
||||
install -m 644 $SRCDIR/usage.doc $DOCDIR
|
||||
install -m 644 $SRCDIR/LICENSE.txt $DOCDIR
|
||||
install -m 644 $SRCDIR/LGPL.txt $DOCDIR
|
||||
ln -fs lib $TMPDIR/pkg/opt/$PACKAGE_NAME/lib32
|
||||
cd $TMPDIR/pkg
|
||||
tar cfj ../$PACKAGE_NAME-$VERSION-cygwin.tar.bz2 *
|
||||
cd $__PWD
|
||||
mv $TMPDIR/*.tar.bz2 .
|
||||
|
||||
exit 0
|
||||
@@ -21,6 +21,66 @@ usage()
|
||||
exit 1
|
||||
}
|
||||
|
||||
makedeb()
|
||||
{
|
||||
SUPPLEMENT=$1
|
||||
DIRNAME=$PACKAGE_NAME
|
||||
|
||||
if [ $SUPPLEMENT = 1 ]; then
|
||||
PACKAGE_NAME=$PACKAGE_NAME\32
|
||||
DEBARCH=amd64
|
||||
__LIB=lib32
|
||||
else
|
||||
__LIB=lib
|
||||
fi
|
||||
|
||||
umask 022
|
||||
rm -f $PACKAGE_NAME\_$DEBARCH.deb
|
||||
TMPDIR=`mktemp -d /tmp/$PACKAGE_NAME-build.XXXXXX`
|
||||
mkdir $TMPDIR/DEBIAN
|
||||
(cat $SRCDIR/release/deb-control.tmpl | sed s/{__PKGNAME}/$PACKAGE_NAME/g \
|
||||
| sed s/{__VERSION}/$VERSION/g | sed s/{__BUILD}/$BUILD/g \
|
||||
| sed s/{__ARCH}/$DEBARCH/g > $TMPDIR/DEBIAN/control)
|
||||
|
||||
make install prefix=$TMPDIR/opt/$DIRNAME libdir=$TMPDIR/opt/$DIRNAME/$__LIB mandir=$TMPDIR/opt/$DIRNAME/man
|
||||
rm -f $TMPDIR/opt/$DIRNAME/$__LIB/*.la
|
||||
|
||||
if [ $SUPPLEMENT = 1 ]; then
|
||||
rm -rf $TMPDIR/opt/$DIRNAME/include
|
||||
rm -rf $TMPDIR/opt/$DIRNAME/man
|
||||
rm -rf $TMPDIR/opt/$DIRNAME/bin
|
||||
fi
|
||||
|
||||
mkdir -p $TMPDIR/usr/$__LIB
|
||||
mv $TMPDIR/opt/$DIRNAME/$__LIB/libturbojpeg.* $TMPDIR/usr/$__LIB
|
||||
ln -fs /usr/$__LIB/libturbojpeg.a $TMPDIR/opt/$DIRNAME/$__LIB/
|
||||
/sbin/ldconfig -n $TMPDIR/opt/$DIRNAME/$__LIB
|
||||
/sbin/ldconfig -n $TMPDIR/usr/$__LIB
|
||||
|
||||
if [ ! $SUPPLEMENT = 1 ]; then
|
||||
if [ "$DEBARCH" = "amd64" ]; then
|
||||
ln -fs lib $TMPDIR/opt/$DIRNAME/lib64
|
||||
else
|
||||
if [ ! "$__LIB" = "lib32" ]; then
|
||||
ln -fs lib $TMPDIR/opt/$DIRNAME/lib32
|
||||
fi
|
||||
fi
|
||||
mkdir -p $TMPDIR/usr/include
|
||||
mv $TMPDIR/opt/$DIRNAME/include/turbojpeg.h $TMPDIR/usr/include
|
||||
ln -fs /usr/include/turbojpeg.h $TMPDIR/opt/$DIRNAME/include/
|
||||
mkdir -p $TMPDIR/usr/share/doc/$DIRNAME-$VERSION
|
||||
install -m 644 $SRCDIR/LICENSE.txt $TMPDIR/usr/share/doc/$DIRNAME-$VERSION
|
||||
install -m 644 $SRCDIR/LGPL.txt $TMPDIR/usr/share/doc/$DIRNAME-$VERSION
|
||||
install -m 644 $SRCDIR/README-turbo.txt $TMPDIR/usr/share/doc/$DIRNAME-$VERSION
|
||||
install -m 644 $SRCDIR/README $TMPDIR/usr/share/doc/$DIRNAME-$VERSION
|
||||
install -m 644 $SRCDIR/libjpeg.doc $TMPDIR/usr/share/doc/$DIRNAME-$VERSION
|
||||
install -m 644 $SRCDIR/usage.doc $TMPDIR/usr/share/doc/$DIRNAME-$VERSION
|
||||
fi
|
||||
|
||||
sudo chown -Rh root:root $TMPDIR/*
|
||||
dpkg -b $TMPDIR $PACKAGE_NAME\_$DEBARCH.deb
|
||||
}
|
||||
|
||||
if [ $# -lt 5 ]; then usage $0; fi
|
||||
PACKAGE_NAME=$1
|
||||
VERSION=$2
|
||||
@@ -28,35 +88,7 @@ BUILD=$3
|
||||
DEBARCH=$4
|
||||
SRCDIR=$5
|
||||
|
||||
umask 022
|
||||
rm -f $PACKAGE_NAME\_$DEBARCH.deb
|
||||
TMPDIR=`mktemp -d /tmp/$PACKAGE_NAME-build.XXXXXX`
|
||||
mkdir $TMPDIR/DEBIAN
|
||||
(cat $SRCDIR/release/deb-control.tmpl | sed s/{__PKGNAME}/$PACKAGE_NAME/g \
|
||||
| sed s/{__VERSION}/$VERSION/g | sed s/{__BUILD}/$BUILD/g \
|
||||
| sed s/{__ARCH}/$DEBARCH/g > $TMPDIR/DEBIAN/control)
|
||||
|
||||
if [ "$DEBARCH" = "amd64" ]; then
|
||||
__LIB=lib
|
||||
else
|
||||
__LIB=lib32
|
||||
fi
|
||||
make install prefix=$TMPDIR/opt/$PACKAGE_NAME libdir=$TMPDIR/opt/$PACKAGE_NAME/$__LIB
|
||||
rm -f $TMPDIR/opt/$PACKAGE_NAME/$__LIB/*.la
|
||||
mkdir -p $TMPDIR/usr/$__LIB
|
||||
mv $TMPDIR/opt/$PACKAGE_NAME/$__LIB/libturbojpeg.* $TMPDIR/usr/$__LIB
|
||||
/sbin/ldconfig -n $TMPDIR/opt/$PACKAGE_NAME/$__LIB
|
||||
/sbin/ldconfig -n $TMPDIR/usr/$__LIB
|
||||
mkdir -p $TMPDIR/usr/include
|
||||
mv $TMPDIR/opt/$PACKAGE_NAME/include/turbojpeg.h $TMPDIR/usr/include
|
||||
mkdir -p $TMPDIR/usr/share/doc/$PACKAGE_NAME-$VERSION
|
||||
install -m 644 $SRCDIR/LICENSE.txt $TMPDIR/usr/share/doc/$PACKAGE_NAME-$VERSION
|
||||
install -m 644 $SRCDIR/LGPL.txt $TMPDIR/usr/share/doc/$PACKAGE_NAME-$VERSION
|
||||
install -m 644 $SRCDIR/README-turbo.txt $TMPDIR/usr/share/doc/$PACKAGE_NAME-$VERSION
|
||||
install -m 644 $SRCDIR/README $TMPDIR/usr/share/doc/$PACKAGE_NAME-$VERSION
|
||||
install -m 644 $SRCDIR/libjpeg.doc $TMPDIR/usr/share/doc/$PACKAGE_NAME-$VERSION
|
||||
|
||||
sudo chown -Rh root:root $TMPDIR/*
|
||||
dpkg -b $TMPDIR $PACKAGE_NAME\_$DEBARCH.deb
|
||||
makedeb 0
|
||||
if [ "$DEBARCH" = "i386" ]; then makedeb 1; fi
|
||||
|
||||
exit
|
||||
|
||||
@@ -42,7 +42,7 @@ TMPDIR=`mktemp -d /tmp/$PACKAGE_NAME-build.XXXXXX`
|
||||
PKGROOT=$TMPDIR/pkg/Package_Root
|
||||
mkdir -p $PKGROOT
|
||||
mkdir -p $PKGROOT/opt/$PACKAGE_NAME/bin
|
||||
make install prefix=$PKGROOT/opt/$PACKAGE_NAME
|
||||
make install DESTDIR=$PKGROOT mandir=/opt/$PACKAGE_NAME/man
|
||||
rm -f $PKGROOT/opt/$PACKAGE_NAME/lib/*.la
|
||||
mkdir -p $PKGROOT/usr/lib
|
||||
mv $PKGROOT/opt/$PACKAGE_NAME/lib/libturbojpeg.* $PKGROOT/usr/lib
|
||||
@@ -59,33 +59,64 @@ if [ $UNIVERSAL = 1 ]; then
|
||||
CFLAGS='-isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4 -O3 -m32' \
|
||||
CXXFLAGS='-isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4 -O3 -m32' \
|
||||
LDFLAGS='-isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4 -m32'
|
||||
make prefix=$TMPDIR/dist.x86 install
|
||||
make install DESTDIR=$TMPDIR/dist.x86
|
||||
popd
|
||||
if [ ! -h $TMPDIR/dist.x86/lib/libjpeg.62.dylib -a \
|
||||
if [ ! -h $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libjpeg.62.dylib -a \
|
||||
! -h $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.62.dylib ]; then
|
||||
lipo -create -arch i386 $TMPDIR/dist.x86/lib/libjpeg.62.dylib -arch x86_64 \
|
||||
$PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.62.dylib \
|
||||
lipo -create \
|
||||
-arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libjpeg.62.dylib \
|
||||
-arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.62.dylib \
|
||||
-output $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.62.dylib
|
||||
elif [ ! -h $TMPDIR/dist.x86/lib/libjpeg.62.0.0.dylib -a \
|
||||
elif [ ! -h $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libjpeg.62.0.0.dylib -a \
|
||||
! -h $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.62.0.0.dylib ]; then
|
||||
lipo -create -arch i386 $TMPDIR/dist.x86/lib/libjpeg.62.0.0.dylib \
|
||||
lipo -create \
|
||||
-arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libjpeg.62.0.0.dylib \
|
||||
-arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.62.0.0.dylib \
|
||||
-output $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.62.0.0.dylib
|
||||
fi
|
||||
lipo -create -arch i386 $TMPDIR/dist.x86/lib/libjpeg.a -arch x86_64 \
|
||||
$PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a \
|
||||
lipo -create \
|
||||
-arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libjpeg.a \
|
||||
-arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a \
|
||||
-output $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a
|
||||
lipo -create -arch i386 $TMPDIR/dist.x86/lib/libturbojpeg.dylib -arch x86_64 \
|
||||
$PKGROOT/usr/lib/libturbojpeg.dylib \
|
||||
lipo -create \
|
||||
-arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libturbojpeg.dylib \
|
||||
-arch x86_64 $PKGROOT/usr/lib/libturbojpeg.dylib \
|
||||
-output $PKGROOT/usr/lib/libturbojpeg.dylib
|
||||
lipo -create -arch i386 $TMPDIR/dist.x86/lib/libturbojpeg.a -arch x86_64 \
|
||||
$PKGROOT/usr/lib/libturbojpeg.a \
|
||||
lipo -create \
|
||||
-arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libturbojpeg.a \
|
||||
-arch x86_64 $PKGROOT/usr/lib/libturbojpeg.a \
|
||||
-output $PKGROOT/usr/lib/libturbojpeg.a
|
||||
lipo -create \
|
||||
-arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/bin/cjpeg \
|
||||
-arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/bin/cjpeg \
|
||||
-output $PKGROOT/opt/$PACKAGE_NAME/bin/cjpeg
|
||||
lipo -create \
|
||||
-arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/bin/djpeg \
|
||||
-arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/bin/djpeg \
|
||||
-output $PKGROOT/opt/$PACKAGE_NAME/bin/djpeg
|
||||
lipo -create \
|
||||
-arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/bin/jpegtran \
|
||||
-arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/bin/jpegtran \
|
||||
-output $PKGROOT/opt/$PACKAGE_NAME/bin/jpegtran
|
||||
lipo -create \
|
||||
-arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/bin/rdjpgcom \
|
||||
-arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/bin/rdjpgcom \
|
||||
-output $PKGROOT/opt/$PACKAGE_NAME/bin/rdjpgcom
|
||||
lipo -create \
|
||||
-arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/bin/wrjpgcom \
|
||||
-arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/bin/wrjpgcom \
|
||||
-output $PKGROOT/opt/$PACKAGE_NAME/bin/wrjpgcom
|
||||
|
||||
fi
|
||||
|
||||
install_name_tool -id /opt/$PACKAGE_NAME/lib/libjpeg.62.dylib $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.62.dylib
|
||||
install_name_tool -id libturbojpeg.dylib $PKGROOT/usr/lib/libturbojpeg.dylib
|
||||
|
||||
ln -fs /usr/include/turbojpeg.h $PKGROOT/opt/$PACKAGE_NAME/include/
|
||||
ln -fs /usr/lib/libturbojpeg.a $PKGROOT/opt/$PACKAGE_NAME/lib/
|
||||
ln -fs lib $PKGROOT/opt/$PACKAGE_NAME/lib32
|
||||
ln -fs lib $PKGROOT/opt/$PACKAGE_NAME/lib64
|
||||
|
||||
mkdir -p $PKGROOT/Library/Documentation/$PACKAGE_NAME
|
||||
chmod 1775 $PKGROOT/Library
|
||||
chmod 775 $PKGROOT/Library/Documentation
|
||||
@@ -106,6 +137,7 @@ install -m 644 $SRCDIR/LGPL.txt $PKGROOT/Library/Documentation/$PACKAGE_NAME/LGP
|
||||
install -m 644 $SRCDIR/README-turbo.txt $PKGROOT/Library/Documentation/$PACKAGE_NAME/README-turbo.txt
|
||||
install -m 644 $SRCDIR/README $PKGROOT/Library/Documentation/$PACKAGE_NAME/README
|
||||
install -m 644 $SRCDIR/libjpeg.doc $PKGROOT/Library/Documentation/$PACKAGE_NAME/libjpeg.doc
|
||||
install -m 644 $SRCDIR/usage.doc $PKGROOT/Library/Documentation/$PACKAGE_NAME/usage.doc
|
||||
|
||||
sudo chown -R root:admin $PKGROOT
|
||||
sudo chown -R root:0 $PKGROOT/usr
|
||||
|
||||
@@ -11,7 +11,7 @@ TMPDIR=
|
||||
onexit()
|
||||
{
|
||||
if [ ! "$TMPDIR" = "" ]; then
|
||||
sudo rm -rf $TMPDIR
|
||||
rm -rf $TMPDIR
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ TMPDIR=
|
||||
onexit()
|
||||
{
|
||||
if [ ! "$TMPDIR" = "" ]; then
|
||||
sudo rm -rf $TMPDIR
|
||||
rm -rf $TMPDIR
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ TMPDIR=
|
||||
onexit()
|
||||
{
|
||||
if [ ! "$TMPDIR" = "" ]; then
|
||||
sudo rm -rf $TMPDIR
|
||||
rm -rf $TMPDIR
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -38,8 +38,6 @@ fi
|
||||
umask 022
|
||||
TMPDIR=`mktemp -d /tmp/$PACKAGE_NAME-build.XXXXXX`
|
||||
rm -f $PACKAGE_NAME.pkg.bz2
|
||||
PKGROOT=$TMPDIR/pkgbuild/$PACKAGE_NAME
|
||||
mkdir -p $PKGROOT
|
||||
cp $SRCDIR/release/copyright $TMPDIR
|
||||
touch $TMPDIR/depend
|
||||
cat $SRCDIR/release/pkginfo.tmpl | sed s/{__VERSION}/$VERSION/g \
|
||||
@@ -53,8 +51,6 @@ else
|
||||
fi
|
||||
|
||||
# This mess is to work around a bug in /usr/ccs/bin/make
|
||||
make install prefix=$PKGROOT libdir=$PKGROOT/$__LIB AM_MAKEFLAGS="prefix=$PKGROOT libdir=$PKGROOT/$__LIB"
|
||||
rm -f $PKGROOT/$__LIB/*.la
|
||||
if [ $COMBINED = 1 ]; then
|
||||
if [ ! -d $SRCDIR/solx86 ]; then
|
||||
mkdir -p $SRCDIR/solx86
|
||||
@@ -62,55 +58,74 @@ if [ $COMBINED = 1 ]; then
|
||||
PWD=`pwd`
|
||||
cd $SRCDIR/solx86
|
||||
sh $SRCDIR/configure --with-pic CC=$CC CXX=$CXX CFLAGS= CXXFLAGS= LDFLAGS= host_alias=
|
||||
make install prefix=$PKGROOT AM_MAKEFLAGS="prefix=$PKGROOT"
|
||||
make install DESTDIR=$TMPDIR mandir=/opt/$PACKAGE_NAME/man AM_MAKEFLAGS="mandir=/opt/$PACKAGE_NAME/man"
|
||||
cd $PWD
|
||||
fi
|
||||
mkdir -p $PKGROOT/doc
|
||||
cp $SRCDIR/LICENSE.txt $SRCDIR/LGPL.txt $SRCDIR/README-turbo.txt $SRCDIR/README $SRCDIR/libjpeg.doc $PKGROOT/doc
|
||||
chmod 644 $PKGROOT/doc/*
|
||||
make install DESTDIR=$TMPDIR libdir=/opt/$PACKAGE_NAME/$__LIB mandir=/opt/$PACKAGE_NAME/man AM_MAKEFLAGS="libdir=/opt/$PACKAGE_NAME/$__LIB mandir=/opt/$PACKAGE_NAME/man"
|
||||
rm -f $TMPDIR/opt/$PACKAGE_NAME/$__LIB/*.la
|
||||
mkdir -p $TMPDIR/opt/$PACKAGE_NAME/doc
|
||||
cp $SRCDIR/LICENSE.txt $SRCDIR/LGPL.txt $SRCDIR/README-turbo.txt $SRCDIR/README $SRCDIR/libjpeg.doc $SRCDIR/usage.doc $TMPDIR/opt/$PACKAGE_NAME/doc
|
||||
chmod 644 $TMPDIR/opt/$PACKAGE_NAME/doc/*
|
||||
|
||||
cat >$TMPDIR/proto <<EOF
|
||||
i copyright
|
||||
i depend
|
||||
i pkginfo
|
||||
d none libjpeg-turbo 0755 root bin
|
||||
d none libjpeg-turbo/lib 0755 root bin
|
||||
d none $PACKAGE_NAME 0755 root bin
|
||||
d none $PACKAGE_NAME/bin 0755 root bin
|
||||
f none $PACKAGE_NAME/bin/cjpeg 0755 root bin
|
||||
f none $PACKAGE_NAME/bin/djpeg 0755 root bin
|
||||
f none $PACKAGE_NAME/bin/jpegtran 0755 root bin
|
||||
f none $PACKAGE_NAME/bin/rdjpgcom 0755 root bin
|
||||
f none $PACKAGE_NAME/bin/wrjpgcom 0755 root bin
|
||||
d none $PACKAGE_NAME/lib 0755 root bin
|
||||
EOF
|
||||
if [ $COMBINED = 1 ]; then
|
||||
cat >>$TMPDIR/proto <<EOF
|
||||
f none libjpeg-turbo/lib/libjpeg.so.62.0.0 0755 root bin
|
||||
s none libjpeg-turbo/lib/libjpeg.so.62=libjpeg.so.62.0.0
|
||||
s none libjpeg-turbo/lib/libjpeg.so=libjpeg.so.62.0.0
|
||||
f none libjpeg-turbo/lib/libjpeg.a 0644 root bin
|
||||
f none libjpeg-turbo/lib/libturbojpeg.so 0755 root bin
|
||||
f none libjpeg-turbo/lib/libturbojpeg.a 0644 root bin
|
||||
f none $PACKAGE_NAME/lib/libjpeg.so.62.0.0 0755 root bin
|
||||
s none $PACKAGE_NAME/lib/libjpeg.so.62=libjpeg.so.62.0.0
|
||||
s none $PACKAGE_NAME/lib/libjpeg.so=libjpeg.so.62.0.0
|
||||
f none $PACKAGE_NAME/lib/libjpeg.a 0644 root bin
|
||||
f none $PACKAGE_NAME/lib/libturbojpeg.so 0755 root bin
|
||||
f none $PACKAGE_NAME/lib/libturbojpeg.a 0644 root bin
|
||||
EOF
|
||||
fi
|
||||
if [ "${__LIB}" != "lib" ]; then
|
||||
echo d none libjpeg-turbo/${__LIB} 0755 root bin >>$TMPDIR/proto
|
||||
echo d none $PACKAGE_NAME/${__LIB} 0755 root bin >>$TMPDIR/proto
|
||||
echo s none $PACKAGE_NAME/lib64=${__LIB} >>$TMPDIR/proto
|
||||
echo s none $PACKAGE_NAME/lib/64=$PKGARCH >>$TMPDIR/proto
|
||||
fi
|
||||
cat >>$TMPDIR/proto <<EOF
|
||||
f none libjpeg-turbo/${__LIB}/libjpeg.so.62.0.0 0755 root bin
|
||||
s none libjpeg-turbo/${__LIB}/libjpeg.so.62=libjpeg.so.62.0.0
|
||||
s none libjpeg-turbo/${__LIB}/libjpeg.so=libjpeg.so.62.0.0
|
||||
f none libjpeg-turbo/${__LIB}/libjpeg.a 0644 root bin
|
||||
f none libjpeg-turbo/${__LIB}/libturbojpeg.so 0755 root bin
|
||||
f none libjpeg-turbo/${__LIB}/libturbojpeg.a 0644 root bin
|
||||
d none libjpeg-turbo/include 0755 root bin
|
||||
f none libjpeg-turbo/include/jconfig.h 0644 root bin
|
||||
f none libjpeg-turbo/include/jerror.h 0644 root bin
|
||||
f none libjpeg-turbo/include/jmorecfg.h 0644 root bin
|
||||
f none libjpeg-turbo/include/jpeglib.h 0644 root bin
|
||||
f none libjpeg-turbo/include/turbojpeg.h 0644 root bin
|
||||
d none libjpeg-turbo/doc 0755 root bin
|
||||
f none libjpeg-turbo/doc/LGPL.txt 0644 root bin
|
||||
f none libjpeg-turbo/doc/libjpeg.doc 0644 root bin
|
||||
f none libjpeg-turbo/doc/LICENSE.txt 0644 root bin
|
||||
f none libjpeg-turbo/doc/README 0644 root bin
|
||||
f none libjpeg-turbo/doc/README-turbo.txt 0644 root bin
|
||||
f none $PACKAGE_NAME/${__LIB}/libjpeg.so.62.0.0 0755 root bin
|
||||
s none $PACKAGE_NAME/${__LIB}/libjpeg.so.62=libjpeg.so.62.0.0
|
||||
s none $PACKAGE_NAME/${__LIB}/libjpeg.so=libjpeg.so.62.0.0
|
||||
f none $PACKAGE_NAME/${__LIB}/libjpeg.a 0644 root bin
|
||||
f none $PACKAGE_NAME/${__LIB}/libturbojpeg.so 0755 root bin
|
||||
f none $PACKAGE_NAME/${__LIB}/libturbojpeg.a 0644 root bin
|
||||
s none $PACKAGE_NAME/lib32=lib
|
||||
d none $PACKAGE_NAME/man 0755 root bin
|
||||
d none $PACKAGE_NAME/man/man1 0755 root bin
|
||||
d none $PACKAGE_NAME/man/man1/cjpeg.1 0644 root bin
|
||||
d none $PACKAGE_NAME/man/man1/djpeg.1 0644 root bin
|
||||
d none $PACKAGE_NAME/man/man1/jpegtran.1 0644 root bin
|
||||
d none $PACKAGE_NAME/man/man1/rdjpgcom.1 0644 root bin
|
||||
d none $PACKAGE_NAME/man/man1/wrjpgcom.1 0644 root bin
|
||||
d none $PACKAGE_NAME/include 0755 root bin
|
||||
f none $PACKAGE_NAME/include/jconfig.h 0644 root bin
|
||||
f none $PACKAGE_NAME/include/jerror.h 0644 root bin
|
||||
f none $PACKAGE_NAME/include/jmorecfg.h 0644 root bin
|
||||
f none $PACKAGE_NAME/include/jpeglib.h 0644 root bin
|
||||
f none $PACKAGE_NAME/include/turbojpeg.h 0644 root bin
|
||||
d none $PACKAGE_NAME/doc 0755 root bin
|
||||
f none $PACKAGE_NAME/doc/LGPL.txt 0644 root bin
|
||||
f none $PACKAGE_NAME/doc/libjpeg.doc 0644 root bin
|
||||
f none $PACKAGE_NAME/doc/LICENSE.txt 0644 root bin
|
||||
f none $PACKAGE_NAME/doc/README 0644 root bin
|
||||
f none $PACKAGE_NAME/doc/README-turbo.txt 0644 root bin
|
||||
f none $PACKAGE_NAME/doc/usage.doc 0644 root bin
|
||||
EOF
|
||||
|
||||
pkgmk -o -r $TMPDIR/pkgbuild -d $TMPDIR -a i386 -f $TMPDIR/proto
|
||||
pkgmk -o -r $TMPDIR/opt -d $TMPDIR -a i386 -f $TMPDIR/proto
|
||||
pkgtrans -s $TMPDIR $TMPDIR/$PACKAGE_NAME.pkg $PACKAGE_NAME
|
||||
bzip2 $TMPDIR/$PACKAGE_NAME.pkg
|
||||
cp $TMPDIR/$PACKAGE_NAME.pkg.bz2 .
|
||||
|
||||
@@ -6,7 +6,7 @@ SUNW_PKGVERS=1.0
|
||||
DESC=A SIMD-accelerated JPEG codec which provides both the libjpeg and TurboJPEG APIs
|
||||
VENDOR=The libjpeg-turbo Project
|
||||
HOTLINE=http://libjpeg-turbo.VirtualGL.org
|
||||
EMAIL=dcommander@users.sourceforge.net
|
||||
EMAIL=information@virtualgl.org
|
||||
MAXINST=1
|
||||
CATEGORY=application
|
||||
BASEDIR=/opt
|
||||
|
||||
@@ -46,12 +46,23 @@ cd $PWD
|
||||
|
||||
echo Removing directories ...
|
||||
rmdir /opt/$PKGNAME/bin 2>&1 || RETCODE=-1
|
||||
if [ -d /opt/$PKGNAME/bin ]; then
|
||||
rmdir /opt/$PKGNAME/bin 2>&1 || RETCODE=-1
|
||||
fi
|
||||
if [ -d /opt/$PKGNAME/lib ]; then
|
||||
rmdir /opt/$PKGNAME/lib 2>&1 || RETCODE=-1
|
||||
fi
|
||||
if [ -d /opt/$PKGNAME/include ]; then
|
||||
rmdir /opt/$PKGNAME/include 2>&1 || RETCODE=-1
|
||||
fi
|
||||
rm /opt/$PKGNAME/lib32 2>&1 || RETCODE=-1
|
||||
rm /opt/$PKGNAME/lib64 2>&1 || RETCODE=-1
|
||||
if [ -d /opt/$PKGNAME/man/man1 ]; then
|
||||
rmdir /opt/$PKGNAME/man/man1 2>&1 || RETCODE=-1
|
||||
fi
|
||||
if [ -d /opt/$PKGNAME/man ]; then
|
||||
rmdir /opt/$PKGNAME/man 2>&1 || RETCODE=-1
|
||||
fi
|
||||
rmdir /opt/$PKGNAME 2>&1 || RETCODE=-1
|
||||
rmdir /Library/Documentation/$PKGNAME 2>&1 || RETCODE=-1
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jcclrss2.asm - colorspace conversion (64-bit SSE2)
|
||||
; jcclrss2-64.asm - colorspace conversion (64-bit SSE2)
|
||||
;
|
||||
; x86 SIMD extension for IJG JPEG library
|
||||
; Copyright (C) 1999-2006, MIYASAKA Masaru.
|
||||
@@ -70,7 +70,7 @@ EXTN(jsimd_rgb_ycc_convert_sse2):
|
||||
pop rcx
|
||||
|
||||
mov rsi, r11
|
||||
mov rax, r14
|
||||
mov eax, r14d
|
||||
test rax,rax
|
||||
jle near .return
|
||||
.rowloop:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jccolss2.asm - colorspace conversion (64-bit SSE2)
|
||||
; jccolss2-64.asm - colorspace conversion (64-bit SSE2)
|
||||
;
|
||||
; x86 SIMD extension for IJG JPEG library
|
||||
; Copyright (C) 1999-2006, MIYASAKA Masaru.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jcqnts2f.asm - sample data conversion and quantization (64-bit SSE & SSE2)
|
||||
; jcqnts2f-64.asm - sample data conversion and quantization (64-bit SSE & SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jcqnts2i.asm - sample data conversion and quantization (64-bit SSE2)
|
||||
; jcqnts2i-64.asm - sample data conversion and quantization (64-bit SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jcsamss2.asm - downsampling (64-bit SSE2)
|
||||
; jcsamss2-64.asm - downsampling (64-bit SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jdclrss2.asm - colorspace conversion (64-bit SSE2)
|
||||
; jdclrss2-64.asm - colorspace conversion (64-bit SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
@@ -72,7 +72,7 @@ EXTN(jsimd_ycc_rgb_convert_sse2):
|
||||
pop rcx
|
||||
|
||||
mov rdi, r13
|
||||
mov rax, r14
|
||||
mov eax, r14d
|
||||
test rax,rax
|
||||
jle near .return
|
||||
.rowloop:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jdcolss2.asm - colorspace conversion (64-bit SSE2)
|
||||
; jdcolss2-64.asm - colorspace conversion (64-bit SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jdmerss2.asm - merged upsampling/color conversion (64-bit SSE2)
|
||||
; jdmerss2-64.asm - merged upsampling/color conversion (64-bit SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jdmrgss2.asm - merged upsampling/color conversion (64-bit SSE2)
|
||||
; jdmrgss2-64.asm - merged upsampling/color conversion (64-bit SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
@@ -521,10 +521,10 @@ EXTN(jsimd_h2v2_merged_upsample_sse2):
|
||||
push rax
|
||||
|
||||
%ifdef WIN64
|
||||
; rcx already parameter 1
|
||||
mov rdx, rdi
|
||||
mov r8, rax
|
||||
mov r9, rbx
|
||||
mov r8, rcx
|
||||
mov r9, rdi
|
||||
mov rcx, rax
|
||||
mov rdx, rbx
|
||||
%else
|
||||
mov rdx, rcx
|
||||
mov rcx, rdi
|
||||
@@ -554,10 +554,10 @@ EXTN(jsimd_h2v2_merged_upsample_sse2):
|
||||
push rax
|
||||
|
||||
%ifdef WIN64
|
||||
; rcx already parameter 1
|
||||
mov rdx, rdi
|
||||
mov r8, rax
|
||||
mov r9, rbx
|
||||
mov r8, rcx
|
||||
mov r9, rdi
|
||||
mov rcx, rax
|
||||
mov rdx, rbx
|
||||
%else
|
||||
mov rdx, rcx
|
||||
mov rcx, rdi
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jdsamss2.asm - upsampling (64-bit SSE2)
|
||||
; jdsamss2-64.asm - upsampling (64-bit SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jfss2fst.asm - fast integer FDCT (64-bit SSE2)
|
||||
; jfss2fst-64.asm - fast integer FDCT (64-bit SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jfss2int.asm - accurate integer FDCT (64-bit SSE2)
|
||||
; jfss2int-64.asm - accurate integer FDCT (64-bit SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jfsseflt.asm - floating-point FDCT (64-bit SSE)
|
||||
; jfsseflt-64.asm - floating-point FDCT (64-bit SSE)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jiss2flt.asm - floating-point IDCT (64-bit SSE & SSE2)
|
||||
; jiss2flt-64.asm - floating-point IDCT (64-bit SSE & SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jiss2fst.asm - fast integer IDCT (64-bit SSE2)
|
||||
; jiss2fst-64.asm - fast integer IDCT (64-bit SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jiss2int.asm - accurate integer IDCT (64-bit SSE2)
|
||||
; jiss2int-64.asm - accurate integer IDCT (64-bit SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;
|
||||
; jiss2red.asm - reduced-size IDCT (64-bit SSE2)
|
||||
; jiss2red-64.asm - reduced-size IDCT (64-bit SSE2)
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2009 D. R. Commander
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
; jsimdext.inc - common declarations
|
||||
;
|
||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||
; Copyright 2010 D. R. Commander
|
||||
;
|
||||
; Based on
|
||||
; x86 SIMD extension for IJG JPEG library - version 1.02
|
||||
@@ -310,6 +311,27 @@ const_base:
|
||||
mov r13, r9
|
||||
mov r14, [rax+48]
|
||||
mov r15, [rax+56]
|
||||
push rsi
|
||||
push rdi
|
||||
sub rsp, SIZEOF_XMMWORD
|
||||
movlpd XMMWORD [rsp], xmm6
|
||||
sub rsp, SIZEOF_XMMWORD
|
||||
movlpd XMMWORD [rsp], xmm7
|
||||
%endmacro
|
||||
|
||||
%imacro uncollect_args 0
|
||||
movlpd xmm7, XMMWORD [rsp]
|
||||
add rsp, SIZEOF_XMMWORD
|
||||
movlpd xmm6, XMMWORD [rsp]
|
||||
add rsp, SIZEOF_XMMWORD
|
||||
pop rdi
|
||||
pop rsi
|
||||
pop r15
|
||||
pop r14
|
||||
pop r13
|
||||
pop r12
|
||||
pop r11
|
||||
pop r10
|
||||
%endmacro
|
||||
|
||||
%else
|
||||
@@ -329,8 +351,6 @@ const_base:
|
||||
mov r15, r9
|
||||
%endmacro
|
||||
|
||||
%endif
|
||||
|
||||
%imacro uncollect_args 0
|
||||
pop r15
|
||||
pop r14
|
||||
@@ -342,6 +362,8 @@ const_base:
|
||||
|
||||
%endif
|
||||
|
||||
%endif
|
||||
|
||||
; --------------------------------------------------------------------------
|
||||
; Defines picked up from the C headers
|
||||
;
|
||||
|
||||
BIN
testimg-nosimd.bmp
Normal file
BIN
testimg-nosimd.bmp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 34 KiB |
BIN
testimgflt-nosimd.jpg
Normal file
BIN
testimgflt-nosimd.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.6 KiB |
BIN
testimgfst-nosimd.jpg
Normal file
BIN
testimgfst-nosimd.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.3 KiB |
4
testimgfst-nosimd.ppm
Normal file
4
testimgfst-nosimd.ppm
Normal file
File diff suppressed because one or more lines are too long
BIN
testimgint-nosimd.jpg
Normal file
BIN
testimgint-nosimd.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.6 KiB |
BIN
testimgp-nosimd.jpg
Normal file
BIN
testimgp-nosimd.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.5 KiB |
4
testorig-nosimd.ppm
Normal file
4
testorig-nosimd.ppm
Normal file
File diff suppressed because one or more lines are too long
@@ -25,6 +25,8 @@
|
||||
#define NUMSUBOPT 4
|
||||
|
||||
enum {TJ_444=0, TJ_422, TJ_420, TJ_GRAYSCALE};
|
||||
#define TJ_411 TJ_420 /* for backward compatibility with VirtualGL <= 2.1.x,
|
||||
TurboVNC <= 0.6, and TurboJPEG/IPP */
|
||||
|
||||
/* Flags */
|
||||
#define TJ_BGR 1
|
||||
|
||||
10
win/Makefile
10
win/Makefile
@@ -229,11 +229,19 @@ $(ODIR)/jpegut.exe: $(ODIR)/jpegut.obj $(ODIR)/turbojpeg.lib
|
||||
$(LINK) $(LDFLAGS) -out:$@ $^
|
||||
|
||||
|
||||
dist: all
|
||||
ifeq ($(WIN64), yes)
|
||||
nsi: all
|
||||
$(RM) $(ODIR)/libjpeg-turbo64.exe
|
||||
makensis -nocd -DVERSION=$(VERSION) -DAPPNAME=libjpeg-turbo64 \
|
||||
-DWLIBDIR=windows64 -DWSRCDIR=. -DWBLDDIR=windows64 -DWHDRDIR=win \
|
||||
-DPLATFORM="Visual C++ 64-bit" -DWIN64 release/libjpeg-turbo.nsi
|
||||
else
|
||||
nsi: all
|
||||
$(RM) $(ODIR)/libjpeg-turbo.exe
|
||||
makensis -nocd -DVERSION=$(VERSION) -DAPPNAME=libjpeg-turbo \
|
||||
-DWLIBDIR=windows -DWSRCDIR=. -DWBLDDIR=windows -DWHDRDIR=win \
|
||||
-DPLATFORM="Visual C++" release/libjpeg-turbo.nsi
|
||||
endif
|
||||
|
||||
|
||||
test: testclean $(ODIR)/cjpeg.exe $(ODIR)/djpeg.exe $(ODIR)/jpegtran.exe \
|
||||
|
||||
@@ -1,20 +1,19 @@
|
||||
ODIR = windows
|
||||
WIN64 = no
|
||||
# Win64 doesn't work yet, for unknown reasons
|
||||
#ifeq ($(PROCESSOR_ARCHITECTURE), AMD64)
|
||||
# WIN64 = yes
|
||||
#else
|
||||
# ifeq ($(PROCESSOR_ARCHITEW6432), AMD64)
|
||||
# WIN64 = yes
|
||||
# endif
|
||||
#endif
|
||||
ifeq ($(PROCESSOR_ARCHITECTURE), AMD64)
|
||||
WIN64 = yes
|
||||
else
|
||||
ifeq ($(PROCESSOR_ARCHITEW6432), AMD64)
|
||||
WIN64 = yes
|
||||
endif
|
||||
endif
|
||||
ifeq ($(WIN64), yes)
|
||||
ODIR = windows64
|
||||
endif
|
||||
|
||||
_DUMMY := $(shell mkdir -p $(ODIR))
|
||||
|
||||
VERSION = 0.0.90
|
||||
VERSION = 1.0.0
|
||||
|
||||
CC = "cl" -nologo
|
||||
CXX = "cl" -EHsc -nologo
|
||||
@@ -27,8 +26,8 @@ ifeq ($(NASM),)
|
||||
NASM = nasm
|
||||
endif
|
||||
|
||||
CFLAGS = -W3 -wd4996 -Iwin -I.
|
||||
CDEFINES = -DWIN32 -D_CRT_SECURE_NO_DEPRECATE
|
||||
CFLAGS = -W3 -wd4996 -Iwin -I. -DBMP_SUPPORTED -DGIF_SUPPORTED \
|
||||
-DPPM_SUPPORTED -DTARGA_SUPPORTED
|
||||
ifeq ($(WIN64), yes)
|
||||
NAFLAGS = -fwin64 -DWIN64 -DMSVC -D__x86_64__ -Iwin/
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user