Included Makefile for Linux compilation of PNG library as it appears the code does not run with newer versions of libpng

This commit is contained in:
DESKTOP-P4IRLQG\mkazh
2018-05-15 20:55:40 -04:00
parent a2d7666b3e
commit b97aaf4653
6 changed files with 210 additions and 32 deletions
+67
View File
@@ -0,0 +1,67 @@
JPG_TARGET=libmyjpg.a
JPG_SOURCE=ckconfig.cpp jccolor.cpp jcmainct.cpp jcparam.cpp jctrans.cpp jdatasrc.cpp jdhuff.cpp jdmaster.cpp jdsample.cpp jfdctfst.cpp jidctint.cpp jquant1.cpp jcapimin.cpp jcdctmgr.cpp jcmarker.cpp jcphuff.cpp jdapimin.cpp jdcoefct.cpp jdinput.cpp jdmerge.cpp jdtrans.cpp jfdctint.cpp jidctred.cpp jquant2.cpp jcapistd.cpp jchuff.cpp jcmaster.cpp jcprepct.cpp jdapistd.cpp jdcolor.cpp jdmainct.cpp jdphuff.cpp jerror.cpp jidctflt.cpp jmemmgr.cpp jutils.cpp jccoefct.cpp jcinit.cpp jcomapi.cpp jcsample.cpp jdatadst.cpp jddctmgr.cpp jdmarker.cpp jdpostct.cpp jfdctflt.cpp jidctfst.cpp jmemnobs.cpp
COMPILER = gcc
#COMPILER = clang
CFLAGS += -Wno-deprecated -Wno-write-strings
CFLAGS_DEBUG = -DDEBUG -g3
LFLAGS_DEBUG =
CFLAGS_RELEASE = -O3 -DRELEASE -funroll-loops -ffast-math -g
LFLAGS_RELEASE = -O3 -g
SRC = ./
BIN = ../Bin/Linux/
INCLUDE = ../
ifeq ($(COMPILER),gcc)
CC=gcc
CXX=g++
else
CC=clang-3.8
CXX=clang++-3.8
# CC=clang-3.5
# CXX=clang++-3.5
endif
MD=mkdir
JPG_OBJECTS=$(addprefix $(BIN), $(addsuffix .o, $(basename $(JPG_SOURCE))))
all: CFLAGS += $(CFLAGS_RELEASE)
all: LFLAGS += $(LFLAGS_RELEASE)
all: make_dir
all: $(BIN)
all: $(BIN)$(JPG_TARGET)
debug: CFLAGS += $(CFLAGS_DEBUG)
debug: LFLAGS += $(LFLAGS_DEBUG)
debug: $(BIN)
debug: $(BIN)$(JPG_TARGET)
jpeg: CFLAGS += $(CFLAGS_RELEASE)
jpeg: LFLAGS += $(LFLAGS_RELEASE)
jpeg: $(BIN)
jpeg: $(BIN)$(JPG_TARGET)
clean:
rm -rf $(BIN)$(JPG_TARGET)
rm -rf $(JPG_OBJECTS)
make_dir:
$(MD) -p $(BIN)
$(BIN):
$(MD) -p $(BIN)
$(BIN)$(JPG_TARGET): $(JPG_OBJECTS)
ar rcs $(BIN)$(JPG_TARGET) $(JPG_OBJECTS)
$(BIN)%.o: $(SRC)%.c
$(CC) -c -o $@ -I$(INCLUDE) $<
$(BIN)%.o: $(SRC)%.cpp
$(CC) -c -o $@ $(CFLAGS) -I$(INCLUDE) $<
+16 -15
View File
@@ -23,7 +23,7 @@ else
CFLAGS += -Wno-deprecated -Wno-write-strings -std=c++11 -Wno-invalid-offsetof
LFLAGS += -lstdc++
endif
LFLAGS += -lz -lpng -ljpeg
#LFLAGS += -lz -lpng -ljpeg
CFLAGS_DEBUG = -DDEBUG -g3
LFLAGS_DEBUG =
@@ -58,7 +58,7 @@ AV_OBJECTS=$(addprefix $(BIN), $(addsuffix .o, $(basename $(AV_SOURCE))))
all: CFLAGS += $(CFLAGS_RELEASE)
all: LFLAGS += $(LFLAGS_RELEASE)
all: $(BIN)
all: make_dir
all: $(BIN)$(PR_TARGET)
all: $(BIN)$(SR_TARGET)
all: $(BIN)$(ST_TARGET)
@@ -68,7 +68,7 @@ all: $(BIN)$(AV_TARGET)
debug: CFLAGS += $(CFLAGS_DEBUG)
debug: LFLAGS += $(LFLAGS_DEBUG)
debug: $(BIN)
debug: make_dir
debug: $(BIN)$(PR_TARGET)
debug: $(BIN)$(SR_TARGET)
debug: $(BIN)$(ST_TARGET)
@@ -78,32 +78,32 @@ debug: $(BIN)$(AV_TARGET)
poissonrecon: CFLAGS += $(CFLAGS_RELEASE)
poissonrecon: LFLAGS += $(LFLAGS_RELEASE)
poissonrecon: $(BIN)
poissonrecon: make_dir
poissonrecon: $(BIN)$(PR_TARGET)
ssdrecon: CFLAGS += $(CFLAGS_RELEASE)
ssdrecon: LFLAGS += $(LFLAGS_RELEASE)
ssdrecon: $(BIN)
ssdrecon: make_dir
ssdrecon: $(BIN)$(SR_TARGET)
surfacetrimmer: CFLAGS += $(CFLAGS_RELEASE)
surfacetrimmer: LFLAGS += $(LFLAGS_RELEASE)
surfacetrimmer: $(BIN)
surfacetrimmer: make_dir
surfacetrimmer: $(BIN)$(ST_TARGET)
edtinheat: CFLAGS += $(CFLAGS_RELEASE)
edtinheat: LFLAGS += $(LFLAGS_RELEASE)
edtinheat: $(BIN)
edtinheat: make_dir
edtinheat: $(BIN)$(EH_TARGET)
imagestitching: CFLAGS += $(CFLAGS_RELEASE)
imagestitching: LFLAGS += $(LFLAGS_RELEASE) -lz -lpng -ljpeg
imagestitching: $(BIN)
imagestitching: LFLAGS += $(LFLAGS_RELEASE)
imagestitching: make_dir
imagestitching: $(BIN)$(IS_TARGET)
octreevisualization: CFLAGS += $(CFLAGS_RELEASE)
octreevisualization: LFLAGS += $(LFLAGS_RELEASE)
octreevisualization: $(BIN)
octreevisualization: make_dir
octreevisualization: $(BIN)$(AV_TARGET)
clean:
@@ -119,8 +119,10 @@ clean:
rm -rf $(EH_OBJECTS)
rm -rf $(IS_OBJECTS)
rm -rf $(AV_OBJECTS)
cd PNG && make clean
$(BIN):
make_dir:
$(MD) -p $(BIN)
$(BIN)$(PR_TARGET): $(PR_OBJECTS)
@@ -136,16 +138,15 @@ $(BIN)$(EH_TARGET): $(EH_OBJECTS)
$(CXX) -o $@ $(EH_OBJECTS) $(LFLAGS)
$(BIN)$(IS_TARGET): $(IS_OBJECTS)
$(CXX) -o $@ $(IS_OBJECTS) $(LFLAGS)
cd PNG && make
$(CXX) -o $@ $(IS_OBJECTS) -L$(BIN) $(LFLAGS) -ljpeg -lmypng -lz
$(BIN)$(AV_TARGET): $(AV_OBJECTS)
$(CXX) -o $@ $(AV_OBJECTS) $(LFLAGS)
$(BIN)%.o: $(SRC)%.c
mkdir -p $(BIN)
$(CC) -c -o $@ $(CFLAGS) -I$(INCLUDE) $<
$(CC) -c -o $@ -I$(INCLUDE) $<
$(BIN)%.o: $(SRC)%.cpp
mkdir -p $(BIN)
$(CXX) -c -o $@ $(CFLAGS) -I$(INCLUDE) $<
+64
View File
@@ -0,0 +1,64 @@
PNG_TARGET=libmypng.a
PNG_SOURCE=png.c pngerror.c pnggccrd.c pngget.c pngmem.c pngpread.c pngread.c pngrio.c pngrtran.c pngrutil.c pngset.c pngtest.c pngtrans.c pngvcrd.c pngwio.c pngwrite.c pngwtran.c pngwutil.c
COMPILER = gcc
#COMPILER = clang
CFLAGS += -Wno-deprecated -Wno-write-strings
CFLAGS_DEBUG = -DDEBUG -g3
LFLAGS_DEBUG =
CFLAGS_RELEASE = -O3 -DRELEASE -funroll-loops -ffast-math -g
LFLAGS_RELEASE = -O3 -g
SRC = ./
BIN = ../Bin/Linux/
INCLUDE = ../
ifeq ($(COMPILER),gcc)
CC=gcc
CXX=g++
else
CC=clang-3.8
CXX=clang++-3.8
# CC=clang-3.5
# CXX=clang++-3.5
endif
MD=mkdir
PNG_OBJECTS=$(addprefix $(BIN), $(addsuffix .o, $(basename $(PNG_SOURCE))))
all: CFLAGS += $(CFLAGS_RELEASE)
all: LFLAGS += $(LFLAGS_RELEASE)
all: make_dir
all: $(BIN)$(PNG_TARGET)
debug: CFLAGS += $(CFLAGS_DEBUG)
debug: LFLAGS += $(LFLAGS_DEBUG)
debug: make_dir
debug: $(BIN)$(PNG_TARGET)
png: CFLAGS += $(CFLAGS_RELEASE)
png: LFLAGS += $(LFLAGS_RELEASE)
png: make_dir
png: $(BIN)$(PNG_TARGET)
clean:
rm -rf $(BIN)$(PNG_TARGET)
rm -rf $(PNG_OBJECTS)
make_dir:
$(MD) -p $(BIN)
$(BIN)$(PNG_TARGET): $(PNG_OBJECTS)
ar rcs $(BIN)$(PNG_TARGET) $(PNG_OBJECTS)
$(BIN)%.o: $(SRC)%.c
$(CC) -c -o $@ -I$(INCLUDE) $<
$(BIN)%.o: $(SRC)%.cpp
$(CXX) -c -o $@ $(CFLAGS) -I$(INCLUDE) $<
-13
View File
@@ -1,18 +1,5 @@
#include <stdio.h>
#include <stdlib.h>
#include <setjmp.h>
#ifdef _WIN32
#include <windows.h>
#include "JPEG/jpeglib.h"
#include "JPEG/jerror.h"
#include "JPEG/jmorecfg.h"
#else // !_WIN32
#include <jpeglib.h>
#include <jerror.h>
#include <jmorecfg.h>
#endif // _WIN32
inline METHODDEF( void )
-4
View File
@@ -1,11 +1,7 @@
#ifndef PNG_INCLUDED
#define PNG_INCLUDED
#ifdef _WIN32
#include "PNG/png.h"
#else // !_WIN32
#include <png.h>
#endif // _WIN32
struct PNGReader : public ImageReader
{
+63
View File
@@ -0,0 +1,63 @@
ZLIB_TARGET=libmyz.a
ZLIB_SOURCE=adler32.c compress.c crc32.c deflate.c gzio.c infblock.c infcodes.c inffast.c inflate.c inftrees.c infutil.c trees.c uncompr.c zutil.c
COMPILER = gcc
#COMPILER = clang
CFLAGS += -Wno-deprecated -Wno-write-strings
CFLAGS_DEBUG = -DDEBUG -g3
LFLAGS_DEBUG =
CFLAGS_RELEASE = -O3 -DRELEASE -funroll-loops -ffast-math -g
LFLAGS_RELEASE = -O3 -g
SRC = ./
BIN = ../Bin/Linux/
INCLUDE = ../
ifeq ($(COMPILER),gcc)
CC=gcc
CXX=g++
else
CC=clang-3.8
CXX=clang++-3.8
# CC=clang-3.5
# CXX=clang++-3.5
endif
MD=mkdir
ZLIB_OBJECTS=$(addprefix $(BIN), $(addsuffix .o, $(basename $(ZLIB_SOURCE))))
all: CFLAGS += $(CFLAGS_RELEASE)
all: LFLAGS += $(LFLAGS_RELEASE)
all: make_dir
all: $(BIN)$(ZLIB_TARGET)
debug: CFLAGS += $(CFLAGS_DEBUG)
debug: LFLAGS += $(LFLAGS_DEBUG)
debug: make_dir
debug: $(BIN)$(ZLIB_TARGET)
zlib: CFLAGS += $(CFLAGS_RELEASE)
zlib: LFLAGS += $(LFLAGS_RELEASE)
zlib: make_dir
zlib: $(BIN)$(ZLIB_TARGET)
clean:
rm -rf $(BIN)$(ZLIB_TARGET)
rm -rf $(ZLIB_OBJECTS)
make_dir:
$(MD) -p $(BIN)
$(BIN)$(ZLIB_TARGET): $(ZLIB_OBJECTS)
ar rcs $(BIN)$(ZLIB_TARGET) $(ZLIB_OBJECTS)
$(BIN)%.o: $(SRC)%.c
$(CC) -c -o $@ -I$(INCLUDE) $<
$(BIN)%.o: $(SRC)%.cpp
$(CXX) -c -o $@ $(CFLAGS) -I$(INCLUDE) $<