The R Project SVN R

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
51522 murdoch 1
## These can be overridden in MkRules.dist or MkRules.local
48071 ripley 2
 
61751 ripley 3
## must be jpeg-7 jpeg-8 jpeg-8a jpeg-8b jpeg-8c jpeg-8d jpeg-9 libjpeg-turbo
4
JPEGDIR = jpeg-9
48071 ripley 5
PNGDIR = libpng
6
TIFFDIR = libtiff
7
 
6430 guido 8
include ../MkRules
9
 
44594 ripley 10
.PHONY: all DLL buildzlib buildpng buildjpeg buildtiff clean
42569 ripley 11
 
27989 ripley 12
all:
44594 ripley 13
	@$(MAKE) --no-print-directory buildzlib buildpng buildjpeg buildtiff rbitmap.o
42569 ripley 14
	@$(MKDIR) -p ../../../library/grDevices/libs
15
	@$(MAKE) --no-print-directory DLL
6430 guido 16
 
51860 ripley 17
DLL: ../../../library/grDevices/libs$(R_ARCH)/Rbitmap.dll
42569 ripley 18
 
17800 ripley 19
buildzlib:
27989 ripley 20
	@$(MAKE) -C ../../extra/zlib -f Makefile.win
6430 guido 21
 
54038 ripley 22
## There is a makefile.mingw in 1.2.x and 1.4.x but not 1.5.x
42581 ripley 23
## Neither the makefile.{mingw,std} build pnggccrd.c but it is needed if
24
## the compiler defines __MMX__ , which the win64 gcc does.
25
## So we need to explicitly disable it.
51085 ripley 26
## prefix=foo shuts up a warning
6430 guido 27
buildpng:
54039 ripley 28
	$(MAKE) CC='$(CC)' AR='$(AR)' AR_RC='$(AR) rcs' \
42581 ripley 29
	  CFLAGS="-O3 -I../../../extra/zlib -DPNG_NO_MMX_CODE" \
37098 ripley 30
	  RANLIB=$(RANLIB) ZLIBLIB=../../../extra/zlib -C $(PNGDIR) \
54038 ripley 31
	  -f scripts/makefile.gcc prefix=foo libpng.a
6430 guido 32
 
33
buildjpeg: $(JPEGDIR)/jconfig.h Makefile.jpeg
49700 ripley 34
	$(MAKE) CC='$(CC)' AR='$(AR) rc' RANLIB=$(RANLIB) JPEGDIR=$(JPEGDIR) -C $(JPEGDIR) \
37098 ripley 35
	  -f ../Makefile.jpeg libjpeg.a
6430 guido 36
 
37
$(JPEGDIR)/jconfig.h: jconfig.h 
38
	$(CP) jconfig.h $(JPEGDIR)/jconfig.h
39
 
50931 ripley 40
## This gives a lot of warnings on Win64, but seems to work
44594 ripley 41
buildtiff: $(JPEGDIR)/jconfig.h Makefile.tiff
50931 ripley 42
	$(MAKE) CC='$(CC)' AR='$(AR)' RANLIB=$(RANLIB) -C $(TIFFDIR) -f ../Makefile.tiff JPEGDIR=$(JPEGDIR)
44594 ripley 43
 
49796 ripley 44
rbitmap-CPPFLAGS=-DHAVE_PNG -DHAVE_JPEG -DHAVE_TIFF -I. -I../../extra/zlib -I./$(PNGDIR) -I$(JPEGDIR) -I./$(TIFFDIR) -I../../include
42569 ripley 45
CFLAGS=-O3 -Wall -pedantic 
6430 guido 46
 
51860 ripley 47
../../../library/grDevices/libs$(R_ARCH)/Rbitmap.dll: rbitmap.o $(TIFFDIR)/libtiff.a $(PNGDIR)/libpng.a $(JPEGDIR)/libjpeg.a
51073 ripley 48
	$(DLL) -shared -s -o $@ $^ -L../../../$(IMPDIR) -lR -lRzlib
6430 guido 49
 
6644 ripley 50
clean:
51
	$(RM) *.o *.a *.dll *.def *~ \#*\#
27989 ripley 52
	-$(MAKE) CC='$(CC)' -C $(PNGDIR) -f scripts/makefile.std clean
9449 ripley 53
	-$(MAKE) CC='$(CC)' -C $(JPEGDIR) -f ../Makefile.jpeg clean
44597 ripley 54
	-$(MAKE) CC='$(CC)' -C $(TIFFDIR) -f ../Makefile.tiff clean
6430 guido 55
 
56
 
57