Compare commits

...

49 Commits

Author SHA1 Message Date
DRC
0dedd1ae9a 64-bit support doesn't just exist in 10.6.
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@216 632fc199-4ca6-4c93-a231-07263d6284db
2010-07-02 09:20:12 +00:00
DRC
df3337ce8a Log only changes to this source tree, not the external build scripts
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@215 632fc199-4ca6-4c93-a231-07263d6284db
2010-07-02 09:13:58 +00:00
DRC
38ccf8532d git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@214 632fc199-4ca6-4c93-a231-07263d6284db 2010-06-10 19:49:49 +00:00
DRC
7b99172528 Not all platforms define RM
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@213 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-10 19:44:56 +00:00
DRC
13b0944e9b Include non-SIMD test images in distribution
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@212 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-10 18:56:27 +00:00
DRC
83f2144655 Don't require --without-simd to be specified on non-x86 architectures, and fix 'make test' on such architectures
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@211 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-10 18:52:41 +00:00
DRC
bdf7986e7c 1.0.0
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@210 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-10 04:12:48 +00:00
DRC
eadc3c0f91 Cygwin distribution package
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@209 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-09 20:17:09 +00:00
DRC
ae79fdbc2d Cygwin package build
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@208 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-09 20:16:04 +00:00
DRC
c773d10b65 Added bug tracker ID's
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@207 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-05 06:58:22 +00:00
DRC
2093c6380d Oops
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@206 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-05 03:09:17 +00:00
DRC
3d1dd07d54 Ensure that libdir is set properly during build and install so that the run-time library bindings for the binary programs will be correct
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@205 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-05 03:00:36 +00:00
DRC
995c831c5e Remove bin and man directories when uninstalling package
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@204 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-05 01:20:35 +00:00
DRC
cbda81a01d Distribute man pages in source tarball
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@203 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-05 01:12:35 +00:00
DRC
4bf3b585ef git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@202 632fc199-4ca6-4c93-a231-07263d6284db 2010-06-05 01:03:23 +00:00
DRC
e238603c37 Install libjpeg run-time programs and man pages and include in Unix/Linux packages; Create a 32-bit compatibility package for amd64 Debian which has only the 32-bit libraries
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@201 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-05 01:02:38 +00:00
DRC
45d48291f9 Create sym. link from /opt/libjpeg-turbo/lib/64 to /opt/libjpeg-turbo/lib/amd64
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@200 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-05 00:35:18 +00:00
DRC
ff95aa6d36 git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@199 632fc199-4ca6-4c93-a231-07263d6284db 2010-06-05 00:22:32 +00:00
DRC
d90c9a2564 Allow arbitrary package name to be specified
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@198 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-05 00:02:23 +00:00
DRC
8e2bba9e02 Install libjpeg run-time programs and man pages and include in Unix/Linux packages
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@197 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-04 23:54:10 +00:00
DRC
8c2b9fa744 Some Linux platforms require -m32 in the LDFLAGS as well
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@196 632fc199-4ca6-4c93-a231-07263d6284db
2010-06-04 23:09:00 +00:00
DRC
64586cd185 Don't need to use sudo when building Solaris PKG or RPM's
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@195 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-18 22:21:46 +00:00
DRC
e16eaed09c Oops
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@194 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-18 19:18:42 +00:00
DRC
f12c7db429 Create sym links so that headers and static libs can always be found in the same place on Solaris, Linux, and Mac
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@193 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-18 19:04:47 +00:00
DRC
bf5a12db42 Go ahead and set the version to 1.0.0 so all interim builds will be release candidates
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@192 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-18 17:31:32 +00:00
DRC
12fc3eaf63 0.0.94
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@191 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-18 05:32:01 +00:00
DRC
49597877a4 64-bit FreeBSD sets host_cpu to "amd64", not "x86_64". Handle that case so that configure will work without explicitly specifying --host.
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@190 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-17 20:47:57 +00:00
DRC
991c2fcae7 Some systems (FreeBSD, in particular) don't define the RM macro in automake
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@189 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-17 20:42:51 +00:00
DRC
4ea16c0603 Define TJ_411 so that VirtualGL <= 2.1.x and TurboVNC <= 0.6 can be built with the libjpeg-turbo SDK
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@188 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-17 16:42:14 +00:00
DRC
377add7ae9 Updated Windows build information
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@187 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-17 16:41:12 +00:00
DRC
a51ada6706 Use new e-mail alias
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@185 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-11 00:39:45 +00:00
DRC
ef663e333e Only disable filesystem redirection in the 64-bit installers
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@184 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-10 23:39:22 +00:00
DRC
be09b20a40 Handle cases in which MinGW inexplicably builds the DLL as libjpeg-0.dll instead of libjpeg-62.dll
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@183 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-10 22:20:14 +00:00
DRC
9ca2364694 Use "make nsi" instead of "make dist" to be consistent with MinGW build
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@182 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-10 22:19:24 +00:00
DRC
3dc1bc2ded Create separate packages for Win64 binaries
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@181 632fc199-4ca6-4c93-a231-07263d6284db
2010-05-10 22:18:10 +00:00
DRC
1a2219ec26 git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@180 632fc199-4ca6-4c93-a231-07263d6284db 2010-05-10 20:03:36 +00:00
DRC
b6f097f729 xmm6-xmm15 must also be preserved by the callee; Win64 should fully work now
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@179 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-23 15:41:34 +00:00
DRC
d3e320fee7 Win64 should fully work now
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@178 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-21 17:20:12 +00:00
DRC
830d5fccf4 Use 64-bit holding buffer on Win64 for increased performance
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@177 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-20 21:13:26 +00:00
DRC
4132b1d552 Updated (C)
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@176 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-20 20:54:03 +00:00
DRC
f9bdeb62e2 Not sure why the cjpeg/djpeg image loaders got disabled, but re-enable them
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@175 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-20 19:16:06 +00:00
DRC
e728ed7a36 Win64 (mostly) works now
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@174 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-20 19:15:09 +00:00
DRC
a644fb05a7 Use correct filenames in headers
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@173 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-20 18:20:13 +00:00
DRC
86d8c0aa26 0.0.93
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@172 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-20 18:12:38 +00:00
DRC
fb096fff78 Only have to use 32-bit mov for r14, since it is populated from the stack
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@171 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-19 18:58:07 +00:00
DRC
14ecb539df Attempt to fix Win64 issues
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@170 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-17 21:57:25 +00:00
DRC
09271951d9 0.0.92
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@169 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-13 07:56:24 +00:00
DRC
7bac07bf12 Added FreeBSD build instructions
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@168 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-10 05:53:35 +00:00
DRC
0f413b2207 Fix x86-64 build on FreeBSD systems
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@167 632fc199-4ca6-4c93-a231-07263d6284db
2010-04-06 20:05:39 +00:00
47 changed files with 518 additions and 201 deletions

View File

@@ -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

View File

@@ -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
================================

View File

@@ -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}

View File

@@ -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

View File

@@ -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*)

View File

@@ -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

View File

@@ -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]; \

View File

@@ -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) { \

View File

@@ -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 */

View File

@@ -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

View File

@@ -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
View 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

View File

@@ -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

View File

@@ -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

View File

@@ -11,7 +11,7 @@ TMPDIR=
onexit()
{
if [ ! "$TMPDIR" = "" ]; then
sudo rm -rf $TMPDIR
rm -rf $TMPDIR
fi
}

View File

@@ -11,7 +11,7 @@ TMPDIR=
onexit()
{
if [ ! "$TMPDIR" = "" ]; then
sudo rm -rf $TMPDIR
rm -rf $TMPDIR
fi
}

View File

@@ -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 .

View File

@@ -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

View File

@@ -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

View File

@@ -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:

View File

@@ -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.

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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:

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

BIN
testimgflt-nosimd.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

BIN
testimgfst-nosimd.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

4
testimgfst-nosimd.ppm Normal file

File diff suppressed because one or more lines are too long

BIN
testimgint-nosimd.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

BIN
testimgp-nosimd.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

4
testorig-nosimd.ppm Normal file

File diff suppressed because one or more lines are too long

View File

@@ -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

View File

@@ -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 \

View File

@@ -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