From: DRC Date: Mon, 22 Feb 2010 04:51:09 +0000 (+0000) Subject: Use the C library DLL only with jpeg62.dll where it is needed. Build turbojpeg.dll... X-Git-Tag: 0.0.90~19 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=748fda383429a21236311d286184e48bc2a0632f;p=libjpeg-turbo Use the C library DLL only with jpeg62.dll where it is needed. Build turbojpeg.dll with the static C library to maintain backward compatibility with TurboJPEG/IPP git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@135 632fc199-4ca6-4c93-a231-07263d6284db --- diff --git a/win/Makefile b/win/Makefile index 86483ca..41aa5f5 100755 --- a/win/Makefile +++ b/win/Makefile @@ -67,8 +67,7 @@ LOBJS = $(ODIR)/jcapimin.obj \ ifeq ($(WITH_SIMD), yes) ifeq ($(WIN64), yes) - SIMD_OBJS = $(ODIR)/jsimd_x86_64.obj \ - $(ODIR)/jfsseflt-64.obj \ + SIMD_OBJS = $(ODIR)/jfsseflt-64.obj \ $(ODIR)/jccolss2-64.obj \ $(ODIR)/jdcolss2-64.obj \ $(ODIR)/jcsamss2-64.obj \ @@ -82,9 +81,9 @@ ifeq ($(WITH_SIMD), yes) $(ODIR)/jiss2fst-64.obj \ $(ODIR)/jcqnts2f-64.obj \ $(ODIR)/jiss2flt-64.obj + LOBJS := $(LOBJS) $(ODIR)/jsimd_x86_64.obj else - SIMD_OBJS = $(ODIR)/jsimd_i386.obj \ - $(ODIR)/jsimdcpu.obj \ + SIMD_OBJS = $(ODIR)/jsimdcpu.obj \ $(ODIR)/jccolmmx.obj \ $(ODIR)/jdcolmmx.obj \ $(ODIR)/jcsammmx.obj \ @@ -115,17 +114,20 @@ ifeq ($(WITH_SIMD), yes) $(ODIR)/jiss2fst.obj \ $(ODIR)/jcqnts2f.obj \ $(ODIR)/jiss2flt.obj + LOBJS := $(LOBJS) $(ODIR)/jsimd_i386.obj endif - LOBJS := $(LOBJS) $(SIMD_OBJS) - else LOBJS := $(LOBJS) $(ODIR)/jsimd_none.obj endif -OBJS := $(LOBJS) \ +LOBJSSTATIC := $(subst .obj,-static.obj,$(LOBJS)) +LOBJS := $(LOBJS) $(SIMD_OBJS) +LOBJSSTATIC := $(LOBJSSTATIC) $(SIMD_OBJS) + +OBJS := $(LOBJS) $(LOBJSSTATIC) \ $(ODIR)/cdjpeg.obj \ $(ODIR)/cjpeg.obj \ $(ODIR)/djpeg.obj \ @@ -144,15 +146,15 @@ OBJS := $(LOBJS) \ $(ODIR)/wrppm.obj \ $(ODIR)/wrtarga.obj \ $(ODIR)/wrjpgcom.obj \ - $(ODIR)/turbojpegl.obj \ + $(ODIR)/turbojpegl-static.obj \ $(ODIR)/turbojpegl-dll.obj \ $(ODIR)/jpgtest.obj \ $(ODIR)/jpegut.obj \ - $(ODIR)/bmp.obj + $(ODIR)/bmp-static.obj all: $(TARGETS) -clean: +clean: testclean -$(RM) $(TARGETS) $(OBJS) HDRS := $(wildcard *.h) @@ -177,7 +179,7 @@ endif endif -$(ODIR)/jpeg-static.lib: $(LOBJS) +$(ODIR)/jpeg-static.lib: $(LOBJSSTATIC) $(AR) -out:$@ $^ $(ODIR)/jpeg62.dll $(ODIR)/jpeg.lib: $(LOBJS) win/jpeg.def @@ -207,18 +209,20 @@ $(ODIR)/wrjpgcom.exe: $(ODIR)/wrjpgcom.obj $(ODIR)/jpeg.lib $(LINK) $(LDFLAGS) -out:$@ $^ -$(ODIR)/turbojpeg-static.lib: $(ODIR)/turbojpegl.obj $(LOBJS) +$(ODIR)/turbojpeg-static.lib: $(ODIR)/turbojpegl-static.obj $(LOBJSSTATIC) $(AR) -out:$@ $^ $(ODIR)/turbojpegl-dll.obj: turbojpegl.c - $(CC) $(CFLAGS) -DDLLDEFINE -c $< -Fo$@ + $(CC) $(CFLAGS) $(LIBCSTATIC) -DDLLDEFINE -c $< -Fo$@ -$(ODIR)/turbojpeg.dll $(ODIR)/turbojpeg.lib: $(ODIR)/turbojpegl-dll.obj $(LOBJS) +$(ODIR)/turbojpeg.dll $(ODIR)/turbojpeg.lib: $(ODIR)/turbojpegl-dll.obj \ + $(LOBJSSTATIC) $(LINK) $(LDFLAGS) -dll -out:$(ODIR)/turbojpeg.dll \ -implib:$(ODIR)/turbojpeg.lib $^ -$(ODIR)/jpgtest.exe: $(ODIR)/jpgtest.obj $(ODIR)/bmp.obj $(ODIR)/turbojpeg.lib +$(ODIR)/jpgtest.exe: $(ODIR)/jpgtest.obj $(ODIR)/bmp-static.obj \ + $(ODIR)/turbojpeg.lib $(LINK) $(LDFLAGS) -out:$@ $^ $(ODIR)/jpegut.exe: $(ODIR)/jpegut.obj $(ODIR)/turbojpeg.lib diff --git a/win/Makerules b/win/Makerules index 786f912..6a6fdf1 100755 --- a/win/Makerules +++ b/win/Makerules @@ -19,9 +19,9 @@ VERSION = 0.0.90 CC = "cl" -nologo CXX = "cl" -EHsc -nologo AR = "link" -lib -nologo -LINK = "link" -nologo -nodefaultlib:libcmt +LINK = "link" -nologo ifeq ($(DEBUG), yes) - LINK = "link" -nologo -debug -nodefaultlib:libcmt + LINK = "link" -nologo -debug endif ifeq ($(NASM),) NASM = nasm @@ -35,10 +35,14 @@ else NAFLAGS = -fwin32 -DWIN32 -DMSVC -Iwin/ endif ifeq ($(DEBUG), yes) - CFLAGS := $(CFLAGS) -Od -MDd -Zi + CFLAGS := $(CFLAGS) -Od -Zi NAFLAGS := $(NAFLAGS) -g + LIBCDLL = -MDd + LIBCSTATIC = -MTd else - CFLAGS := $(CFLAGS) -O2 -MD + CFLAGS := $(CFLAGS) -O2 + LIBCDLL = -MD + LIBCSTATIC = -MT endif WITH_SIMD = yes @@ -49,10 +53,13 @@ endif $(ODIR)/%.obj: %.c - $(CC) $(CFLAGS) -c $< -Fo$@ + $(CC) $(CFLAGS) $(LIBCDLL) -c $< -Fo$@ + +$(ODIR)/%-static.obj: %.c + $(CC) $(CFLAGS) $(LIBCSTATIC) -c $< -Fo$@ $(ODIR)/%.obj: %.cxx - $(CXX) $(CXXFLAGS) -c $< -Fo$@ + $(CXX) $(CXXFLAGS) $(LIBCSTATIC) -c $< -Fo$@ $(ODIR)/%.obj: %.asm $(NASM) $(NAFLAGS) -Isimd/ -o $@ $<