1
all: library all_samples
6
#CFLAGS=-O4 -I. -w -fopenmp
9
#LCMS_DEF=-DUSE_LCMS -I/usr/local/include
10
#LCMS_LIB=-L/usr/local/lib -llcms
13
DCRAW_LIB_OBJECTS=object/dcraw_common.o object/libraw_cxx.o object/libraw_c_api.o object/dcraw_fileio.o
14
DCRAW_LIB_MT_OBJECTS=object/dcraw_common_mt.o object/libraw_cxx_mt.o object/libraw_c_api_mt.o object/dcraw_fileio_mt.o
16
library: lib/libraw.a lib/libraw_r.a
18
all_samples: bin/raw-identify bin/simple_dcraw bin/dcraw_emu bin/dcraw_half bin/half_mt bin/mem_image bin/unprocessed_raw bin/4channels
21
@if [ -d /usr/local/include ] ; then cp -R libraw /usr/local/include/ ; else echo 'no /usr/local/include' ; fi
22
@if [ -d /usr/local/lib ] ; then cp lib/libraw.a lib/libraw_r.a /usr/local/lib/ ; else echo 'no /usr/local/lib' ; fi
24
install-binaries: all_samples
25
@if [ -d /usr/local/bin ] ; then cp bin/[a-z]* /usr/local/bin/ ; else echo 'no /usr/local/bin' ; fi
30
bin/raw-identify: lib/libraw.a samples/raw-identify.cpp
31
g++ -DLIBRAW_NOTHREADS ${LCMS_DEF} ${CFLAGS} -o bin/raw-identify samples/raw-identify.cpp -L./lib -lraw -lm ${LCMS_LIB}
33
bin/unprocessed_raw: lib/libraw.a samples/unprocessed_raw.cpp
34
g++ -DLIBRAW_NOTHREADS ${LCMS_DEF} ${CFLAGS} -o bin/unprocessed_raw samples/unprocessed_raw.cpp -L./lib -lraw -lm ${LCMS_LIB}
36
bin/4channels: lib/libraw.a samples/4channels.cpp
37
g++ -DLIBRAW_NOTHREADS ${LCMS_DEF} ${CFLAGS} -o bin/4channels samples/4channels.cpp -L./lib -lraw -lm ${LCMS_LIB}
39
bin/simple_dcraw: lib/libraw.a samples/simple_dcraw.cpp
40
g++ -DLIBRAW_NOTHREADS ${LCMS_DEF} ${CFLAGS} -o bin/simple_dcraw samples/simple_dcraw.cpp -L./lib -lraw -lm ${LCMS_LIB}
42
bin/mem_image: lib/libraw.a samples/mem_image.cpp
43
g++ -DLIBRAW_NOTHREADS ${LCMS_DEF} ${CFLAGS} -o bin/mem_image samples/mem_image.cpp -L./lib -lraw -lm ${LCMS_LIB}
45
bin/dcraw_half: lib/libraw.a object/dcraw_half.o
46
gcc -DLIBRAW_NOTHREADS ${LCMS_DEF} ${CFLAGS} -o bin/dcraw_half object/dcraw_half.o -L./lib -lraw -lm -lstdc++ ${LCMS_LIB}
48
bin/half_mt: lib/libraw_r.a object/half_mt.o
49
gcc ${LCMS_DEF} -pthread ${CFLAGS} -o bin/half_mt object/half_mt.o -L./lib -lraw_r -lm -lstdc++ ${LCMS_LIB}
51
bin/dcraw_emu: lib/libraw.a samples/dcraw_emu.cpp
52
g++ -DLIBRAW_NOTHREADS ${LCMS_DEF} ${CFLAGS} -o bin/dcraw_emu samples/dcraw_emu.cpp -L./lib -lraw -lm ${LCMS_LIB}
56
object/dcraw_common.o: internal/dcraw_common.cpp
57
g++ -c -DLIBRAW_NOTHREADS ${LCMS_DEF} ${CFLAGS} -o object/dcraw_common.o internal/dcraw_common.cpp
59
object/dcraw_fileio.o: internal/dcraw_fileio.cpp
60
g++ -c -DLIBRAW_NOTHREADS ${CFLAGS} ${LCMS_DEF} -o object/dcraw_fileio.o internal/dcraw_fileio.cpp
62
object/libraw_cxx.o: src/libraw_cxx.cpp
63
g++ -c -DLIBRAW_NOTHREADS ${LCMS_DEF} ${CFLAGS} -o object/libraw_cxx.o src/libraw_cxx.cpp
65
object/libraw_c_api.o: src/libraw_c_api.cpp
66
g++ -c -DLIBRAW_NOTHREADS ${LCMS_DEF} ${CFLAGS} -o object/libraw_c_api.o src/libraw_c_api.cpp
68
object/dcraw_half.o: samples/dcraw_half.c
69
gcc -c -DLIBRAW_NOTHREADS ${LCMS_DEF} ${CFLAGS} -o object/dcraw_half.o samples/dcraw_half.c
71
object/half_mt.o: samples/half_mt.c
72
gcc -c -pthread ${LCMS_DEF} ${CFLAGS} -o object/half_mt.o samples/half_mt.c
75
lib/libraw.a: ${DCRAW_LIB_OBJECTS}
77
ar crv lib/libraw.a ${DCRAW_LIB_OBJECTS}
80
lib/libraw_r.a: ${DCRAW_LIB_MT_OBJECTS}
82
ar crv lib/libraw_r.a ${DCRAW_LIB_MT_OBJECTS}
85
object/dcraw_common_mt.o: internal/dcraw_common.cpp
86
g++ -c -pthread ${LCMS_DEF} ${CFLAGS} -o object/dcraw_common_mt.o internal/dcraw_common.cpp
88
object/dcraw_fileio_mt.o: internal/dcraw_fileio.cpp
89
g++ -c -pthread ${LCMS_DEF} ${CFLAGS} -o object/dcraw_fileio_mt.o internal/dcraw_fileio.cpp
91
object/libraw_cxx_mt.o: src/libraw_cxx.cpp
92
g++ -c ${LCMS_DEF} -pthread ${CFLAGS} -o object/libraw_cxx_mt.o src/libraw_cxx.cpp
94
object/libraw_c_api_mt.o: src/libraw_c_api.cpp
95
g++ -c ${LCMS_DEF} -pthread ${CFLAGS} -o object/libraw_c_api_mt.o src/libraw_c_api.cpp
99
rm -f *.o *~ src/*~ samples/*~ internal/*~ libraw/*~ lib/lib*.a bin/[4a-z]* object/*o dcraw/*~ doc/*~ bin/*~