diff --git a/configure b/configure index bdf430d3d..c571fe945 100755 --- a/configure +++ b/configure @@ -808,6 +808,7 @@ YACC="$SRC/yacc" CHEAT="$SRC/cheat" LIBPNG="$SRC/libpng" LIBJPG="$SRC/nanojpeg" +LIBJPGEXIF="$SRC/tinyexif" ZLIB="$SRC/zlib" SQLITE_REPO="$SRC/common/repository/sqlite" SQLITE_LIB="$SRC/sqlite" @@ -895,7 +896,8 @@ fi if test "$_build_png" = yes ; then DEFINES="$DEFINES -DIMAGE_SUPPORT" - INCLUDES="$INCLUDES -I$LIBJPG" + INCLUDES="$INCLUDES -I$LIBJPG -I$LIBJPGEXIF" + MODULES="$MODULES $LIBJPGEXIF" if test "$_libpng" = yes ; then LIBS="$LIBS `pkg-config --libs libpng`" else diff --git a/src/tinyexif/module.mk b/src/tinyexif/module.mk new file mode 100644 index 000000000..882915a66 --- /dev/null +++ b/src/tinyexif/module.mk @@ -0,0 +1,10 @@ +MODULE := src/tinyexif + +MODULE_OBJS := \ + src/tinyexif/tinyexif.o + +MODULE_DIRS += \ + src/tinyexif + +# Include common rules +include $(srcdir)/common.rules diff --git a/src/tinyexif/README.md b/src/tinyexif/source/README.md similarity index 100% rename from src/tinyexif/README.md rename to src/tinyexif/source/README.md diff --git a/src/tinyexif/TinyEXIF.cpp b/src/tinyexif/source/TinyEXIF.cpp similarity index 100% rename from src/tinyexif/TinyEXIF.cpp rename to src/tinyexif/source/TinyEXIF.cpp diff --git a/src/tinyexif/TinyEXIF.h b/src/tinyexif/source/TinyEXIF.h similarity index 100% rename from src/tinyexif/TinyEXIF.h rename to src/tinyexif/source/TinyEXIF.h diff --git a/src/tinyexif/tinyexif.cxx b/src/tinyexif/tinyexif.cxx new file mode 100644 index 000000000..d0315d13e --- /dev/null +++ b/src/tinyexif/tinyexif.cxx @@ -0,0 +1,42 @@ +//============================================================================ +// +// SSSS tt lll lll +// SS SS tt ll ll +// SS tttttt eeee ll ll aaaa +// SSSS tt ee ee ll ll aa +// SS tt eeeeee ll ll aaaaa -- "An Atari 2600 VCS Emulator" +// SS SS tt ee ll ll aa aa +// SSSS ttt eeeee llll llll aaaaa +// +// Copyright (c) 1995-2022 by Bradford W. Mott, Stephen Anthony +// and the Stella Team +// +// See the file "License.txt" for information on usage and redistribution of +// this file, and for a DISCLAIMER OF ALL WARRANTIES. +//============================================================================ + +/* + * We can't control the quality of code from outside projects, so for now + * just disable warnings for it. + */ +#if defined(__clang__) + #pragma clang diagnostic push + #pragma clang diagnostic ignored "-Weverything" + #include "source/TinyEXIF.cpp" + #pragma clang diagnostic pop +#elif defined(__GNUC__) || defined(__GNUG__) + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wall" + #pragma GCC diagnostic ignored "-Wcast-function-type" + #pragma GCC diagnostic ignored "-Wshift-negative-value" + #pragma GCC diagnostic ignored "-Wregister" + #include "source/TinyEXIF.cpp" + #pragma GCC diagnostic pop +#elif defined(BSPF_WINDOWS) + #pragma warning(push, 0) + #pragma warning(disable : 4505) + #include "source/TinyEXIF.cpp" + #pragma warning(pop) +#else + #include "source/TinyEXIF.cpp" +#endif diff --git a/src/tinyexif/TinyEXIF_lib.hxx b/src/tinyexif/tinyexif_lib.hxx similarity index 92% rename from src/tinyexif/TinyEXIF_lib.hxx rename to src/tinyexif/tinyexif_lib.hxx index f7afe0d0b..79dc60ede 100644 --- a/src/tinyexif/TinyEXIF_lib.hxx +++ b/src/tinyexif/tinyexif_lib.hxx @@ -25,7 +25,7 @@ #if defined(__clang__) #pragma clang diagnostic push #pragma clang diagnostic ignored "-Weverything" - #include "tinyexif.h" + #include "source/TinyEXIF.h" #pragma clang diagnostic pop #elif defined(__GNUC__) || defined(__GNUG__) #pragma GCC diagnostic push @@ -33,15 +33,15 @@ #pragma GCC diagnostic ignored "-Wcast-function-type" #pragma GCC diagnostic ignored "-Wshift-negative-value" #pragma GCC diagnostic ignored "-Wregister" - #include "tinyexif.h" + #include "source/TinyEXIF.h" #pragma GCC diagnostic pop #elif defined(BSPF_WINDOWS) #pragma warning(push, 0) #pragma warning(disable : 4505) - #include "tinyexif.h" + #include "source/TinyEXIF.h" #pragma warning(pop) #else - #include "tinyexif.h" + #include "source/TinyEXIF.h" #endif #endif // TINYEXIF_LIB_HXX