mirror of https://github.com/snes9xgit/snes9x.git
Introduce --with-system-zip configure flag to use system zip (minizip)
if available.
This commit is contained in:
parent
b7cdf60b06
commit
def3936a53
|
@ -197,7 +197,11 @@
|
|||
#include <string>
|
||||
|
||||
#ifdef UNZIP_SUPPORT
|
||||
#include "unzip/unzip.h"
|
||||
# ifdef SYSTEM_ZIP
|
||||
# include <minizip/unzip.h>
|
||||
# else
|
||||
# include "unzip/unzip.h"
|
||||
# endif
|
||||
#endif
|
||||
#include "snes9x.h"
|
||||
|
||||
|
|
|
@ -196,12 +196,16 @@ snes9x_gtk_SOURCES += \
|
|||
../server.cpp
|
||||
endif
|
||||
|
||||
|
||||
# Zip support is nonconfigurable.
|
||||
snes9x_gtk_SOURCES += \
|
||||
../loadzip.cpp \
|
||||
../loadzip.cpp
|
||||
if ! SYSTEM_ZIP
|
||||
snes9x_gtk_SOURCES += \
|
||||
../unzip/unzip.c \
|
||||
../unzip/ioapi.c \
|
||||
../unzip/zip.c
|
||||
endif
|
||||
UNZIPDEFINES=-DUNZIP_SUPPORT
|
||||
|
||||
if JMA
|
||||
|
|
|
@ -138,6 +138,12 @@ AC_ARG_WITH(zlib,
|
|||
[],
|
||||
[with_zlib=yes])
|
||||
|
||||
AC_ARG_WITH(system-zip,
|
||||
[AS_HELP_STRING([--with(out)-system-zip],
|
||||
[Use system zip])],
|
||||
[],
|
||||
[system_zip=check])
|
||||
|
||||
AC_ARG_WITH(screenshot,
|
||||
[AS_HELP_STRING([--with(out)-screenshot],
|
||||
[Screenshot support through libpng if available (default: with)])],
|
||||
|
@ -313,6 +319,25 @@ if test yes = "$with_screenshot"; then
|
|||
])
|
||||
fi
|
||||
|
||||
SYSTEM_ZIP=0
|
||||
SYSTEM_ZIP_CFLAGS=""
|
||||
SYSTEM_ZIP_LIBS=""
|
||||
ZIP_CFLAGS="-I../unzip"
|
||||
if test no != "$with_system_zip" && test yes = "$with_zlib" ; then
|
||||
PKG_CHECK_MODULES([SYSTEM_ZIP],[minizip],[
|
||||
ZIP_CFLAGS=""
|
||||
SYSTEM_ZIP=yes
|
||||
CFLAGS="$CFLAGS $SYSTEM_ZIP_CFLAGS -DSYSTEM_ZIP"
|
||||
LIBS="$LIBS $SYSTEM_ZIP_LIBS"
|
||||
],[
|
||||
if test check = "$with_system_zip"; then
|
||||
AC_MSG_WARN(Cannot find SYSTEM_ZIP)
|
||||
else
|
||||
AC_MSG_ERROR(--with-system-zip given but cannot find proper zlib)
|
||||
fi
|
||||
])
|
||||
fi
|
||||
|
||||
if test yes = "$with_hq2x" ; then
|
||||
HQ2X=yes
|
||||
CFLAGS="$CFLAGS -DUSE_HQ2X"
|
||||
|
@ -440,7 +465,7 @@ if test $ac_cv_my_sar_int8 = yes && \
|
|||
CFLAGS="$CFLAGS -DRIGHTSHIFT_IS_SAR"
|
||||
fi
|
||||
|
||||
CFLAGS="$CFLAGS -DUNZIP_SUPPORT -DSPC700_C -I. -I.. -I../unzip"
|
||||
CFLAGS="$CFLAGS -DUNZIP_SUPPORT -DSPC700_C -I. -I.. $ZIP_CFLAGS"
|
||||
|
||||
CXXFLAGS="$CFLAGS"
|
||||
|
||||
|
@ -462,6 +487,7 @@ AM_CONDITIONAL(ALSA, [test yes = "$ALSA"])
|
|||
AM_CONDITIONAL(PULSEAUDIO, [test yes = "$PULSEAUDIO"])
|
||||
AM_CONDITIONAL(HQ2X, [test yes = "$HQ2X"])
|
||||
AM_CONDITIONAL(XBRZ, [test yes = "$XBRZ"])
|
||||
AM_CONDITIONAL(SYSTEM_ZIP, [test yes = "$SYSTEM_ZIP"])
|
||||
|
||||
AC_SUBST(NASM)
|
||||
AC_SUBST(NASM_FLAGS)
|
||||
|
|
|
@ -192,7 +192,11 @@
|
|||
|
||||
#include <assert.h>
|
||||
#include <ctype.h>
|
||||
#ifdef SYSTEM_ZIP
|
||||
#include <minizip/unzip.h>
|
||||
#else
|
||||
#include "unzip/unzip.h"
|
||||
#endif
|
||||
#include "snes9x.h"
|
||||
#include "memmap.h"
|
||||
|
||||
|
|
|
@ -193,7 +193,11 @@
|
|||
#include <assert.h>
|
||||
|
||||
#ifdef UNZIP_SUPPORT
|
||||
#include "unzip/unzip.h"
|
||||
# ifdef SYSTEM_ZIP
|
||||
# include <minizip/unzip.h>
|
||||
# else
|
||||
# include "unzip/unzip.h"
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef JMA_SUPPORT
|
||||
|
|
|
@ -192,7 +192,11 @@
|
|||
|
||||
#include <string>
|
||||
#ifdef UNZIP_SUPPORT
|
||||
#include "unzip.h"
|
||||
# ifdef SYSTEM_ZIP
|
||||
# include <minizip/unzip.h>
|
||||
# else
|
||||
# include "unzip.h"
|
||||
# endif
|
||||
#endif
|
||||
#include "snes9x.h"
|
||||
#include "stream.h"
|
||||
|
|
7
stream.h
7
stream.h
|
@ -229,8 +229,11 @@ class fStream : public Stream
|
|||
};
|
||||
|
||||
#ifdef UNZIP_SUPPORT
|
||||
|
||||
#include "unzip.h"
|
||||
# ifdef SYSTEM_ZIP
|
||||
# include <minizip/unzip.h>
|
||||
# else
|
||||
# include "unzip.h"
|
||||
# endif
|
||||
|
||||
#define unz_BUFFSIZ 1024
|
||||
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
@S9XNETPLAY@
|
||||
@S9XZIP@
|
||||
@S9XJMA@
|
||||
@S9X_SYSTEM_ZIP@
|
||||
|
||||
# Fairly good and special-char-safe descriptor of the os being built on.
|
||||
OS = `uname -s -r -m|sed \"s/ /-/g\"|tr \"[A-Z]\" \"[a-z]\"|tr \"/()\" \"___\"`
|
||||
|
@ -19,7 +20,11 @@ OBJECTS += ../netplay.o ../server.o
|
|||
endif
|
||||
|
||||
ifdef S9XZIP
|
||||
OBJECTS += ../loadzip.o ../unzip/ioapi.o ../unzip/unzip.o
|
||||
OBJECTS += ../loadzip.o
|
||||
ifndef SYSTEM_ZIP
|
||||
OBJECTS += ../unzip/ioapi.o ../unzip/unzip.o
|
||||
INCLUDES = -I../unzip/
|
||||
endif
|
||||
endif
|
||||
|
||||
ifdef S9XJMA
|
||||
|
@ -29,7 +34,7 @@ endif
|
|||
CCC = @CXX@
|
||||
CC = @CC@
|
||||
GASM = @CXX@
|
||||
INCLUDES = -I. -I.. -I../apu/ -I../apu/bapu -I../unzip/ -I../jma/ -I../filter/
|
||||
INCLUDES += -I. -I.. -I../apu/ -I../apu/bapu -I../jma/ -I../filter/
|
||||
|
||||
CCFLAGS = @S9XFLGS@ @S9XDEFS@ $(DEFS)
|
||||
CFLAGS = $(CCFLAGS)
|
||||
|
|
|
@ -201,16 +201,43 @@ AC_ARG_ENABLE([zip],
|
|||
[enable ZIP support through zlib (default: yes)])],
|
||||
[], [enable_zip="yes"])
|
||||
|
||||
S9X_SYSTEM_ZIP="#SYSTEM_ZIP=1"
|
||||
|
||||
AC_ARG_WITH([system-zip],
|
||||
[AS_HELP_STRING([--with-system-zip],
|
||||
[Use system zip (default: check)])],
|
||||
[], [with_system_zip="check"])
|
||||
|
||||
if test "x$enable_zip" = "xyes"; then
|
||||
if test "x$snes9x_cv_zlib" = "xyes"; then
|
||||
S9XZIP="S9XZIP=1"
|
||||
S9XDEFS="$S9XDEFS -DUNZIP_SUPPORT"
|
||||
if test "x$enable_gzip" = "xno"; then
|
||||
S9XLIBS="$S9XLIBS -lz"
|
||||
fi
|
||||
if test "x$with_system_zip" != "xno"; then
|
||||
PKG_CHECK_MODULES(
|
||||
SYSTEM_ZIP,
|
||||
minizip,
|
||||
S9XZIP="S9XZIP=1"
|
||||
S9XDEFS="$S9XDEFS -DUNZIP_SUPPORT"
|
||||
S9X_SYSTEM_ZIP="SYSTEM_ZIP=1"
|
||||
S9XLIBS="$S9XLIBS $SYSTEM_ZIP_LIBS"
|
||||
if test "x$enable_gzip" = "xno"; then
|
||||
S9XLIBS="$S9XLIBS -lz"
|
||||
fi
|
||||
S9XDEFS="$S9XDEFS -DSYSTEM_ZIP",
|
||||
if test "x${with_system_zip}" != "xcheck"; then
|
||||
AC_MSG_ERROR([--with-system-zip requested but no proper zlib found.])
|
||||
else
|
||||
AC_MSG_WARN([zlib not found. Build without SYSTEM_ZIP support.])
|
||||
fi
|
||||
)
|
||||
else
|
||||
AC_MSG_WARN([zlib not found. Build without ZIP support.])
|
||||
enable_zip="no"
|
||||
if test "x$snes9x_cv_zlib" = "xyes"; then
|
||||
S9XZIP="S9XZIP=1"
|
||||
S9XDEFS="$S9XDEFS -DUNZIP_SUPPORT"
|
||||
if test "x$enable_gzip" = "xno"; then
|
||||
S9XLIBS="$S9XLIBS -lz"
|
||||
fi
|
||||
else
|
||||
AC_MSG_WARN([zlib not found. Build without ZIP support.])
|
||||
enable_zip="no"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -427,9 +454,11 @@ S9XLIBS="$LIBS $S9XLIBS"
|
|||
S9XFLGS="`echo \"$S9XFLGS\" | sed -e 's/ */ /g'`"
|
||||
S9XDEFS="`echo \"$S9XDEFS\" | sed -e 's/ */ /g'`"
|
||||
S9XLIBS="`echo \"$S9XLIBS\" | sed -e 's/ */ /g'`"
|
||||
S9X_SYSTEM_ZIP="`echo \"$S9X_SYSTEM_ZIP\" | sed -e 's/ */ /g'`"
|
||||
S9XFLGS="`echo \"$S9XFLGS\" | sed -e 's/^ *//'`"
|
||||
S9XDEFS="`echo \"$S9XDEFS\" | sed -e 's/^ *//'`"
|
||||
S9XLIBS="`echo \"$S9XLIBS\" | sed -e 's/^ *//'`"
|
||||
S9X_SYSTEM_ZIP="`echo \"$S9X_SYSTEM_ZIP\" | sed -e 's/^ *//'`"
|
||||
|
||||
AC_SUBST(S9XFLGS)
|
||||
AC_SUBST(S9XDEFS)
|
||||
|
@ -439,6 +468,7 @@ AC_SUBST(S9XDEBUGGER)
|
|||
AC_SUBST(S9XNETPLAY)
|
||||
AC_SUBST(S9XZIP)
|
||||
AC_SUBST(S9XJMA)
|
||||
AC_SUBST(S9X_SYSTEM_ZIP)
|
||||
|
||||
rm config.info 2>/dev/null
|
||||
|
||||
|
@ -459,6 +489,7 @@ netplay support...... $enable_netplay
|
|||
gamepad support...... $enable_gamepad
|
||||
GZIP support......... $enable_gzip
|
||||
ZIP support.......... $enable_zip
|
||||
SYSTEM_ZIP........... $with_system_zip
|
||||
JMA support.......... $enable_jma
|
||||
debugger............. $enable_debugger
|
||||
|
||||
|
|
Loading…
Reference in New Issue