]> Dogcows Code - chaz/yoink/commitdiff
new win32 resource file; better dependency checks
authorCharles McGarvey <chazmcgarvey@brokenzipper.com>
Thu, 24 Sep 2009 05:51:31 +0000 (23:51 -0600)
committerCharles McGarvey <chazmcgarvey@brokenzipper.com>
Thu, 24 Sep 2009 05:51:31 +0000 (23:51 -0600)
configure.ac
doc/yoink.6.in
extra/yoink.ebuild
src/Makefile.am
src/yoink.ico [new file with mode: 0644]
src/yoink.rc [new file with mode: 0644]

index 11fbb5524c87c2aa7984996c97a359876ba9d1f7..39129322d1de7bf8f522bc144d23877580c5aeeb 100644 (file)
@@ -6,7 +6,7 @@
 
 AC_PREREQ([2.60])
 
 
 AC_PREREQ([2.60])
 
-AC_INIT([Yoink], [0.1], [onefriedrice@brokenzipper.com], [yoink])
+AC_INIT([Yoink], [0.1], [chaz@dogcows.com], [yoink])
 
 AC_CANONICAL_TARGET
 
 
 AC_CANONICAL_TARGET
 
@@ -34,18 +34,27 @@ AM_PROG_CC_C_O
 
 case "${host}" in
        *mingw32*)
 
 case "${host}" in
        *mingw32*)
-       MINGW32=yes
-       WIN32=yes
+               MINGW32=yes
+               WIN32=yes
+               AC_PATH_PROGS([WINDRES], [windres $host_alias-windres $host_os-windres])
+               if test "x$WINDRES" = x
+               then
+                       AC_MSG_ERROR([windres could not be found])
+               fi
+               AC_SUBST(WINDRES)
        ;;
        *cygwin*)
        ;;
        *cygwin*)
-       CYGWIN=yes
-       WIN32=yes
+               CYGWIN=yes
+               WIN32=yes
        ;;
        *-apple-darwin*)
        ;;
        *-apple-darwin*)
-       MACOSX=yes
-       LIBS="$LIBS -Wl,-framework"
+               MACOSX=yes
+               LIBS="$LIBS -Wl,-framework"
+       ;;
 esac
 
 esac
 
+AM_CONDITIONAL([WIN32], test "$WIN32" = "yes")
+
 
 #
 # Checks for configuration arguments.
 
 #
 # Checks for configuration arguments.
@@ -85,14 +94,15 @@ then
 
        if test x$WIN32 != xyes
        then
 
        if test x$WIN32 != xyes
        then
+# i haven't had much success with gprof profiling on win32
                profile=yes
        fi
 fi
 
 if test x$debug = xyes
 then
                profile=yes
        fi
 fi
 
 if test x$debug = xyes
 then
-       CFLAGS="$CFLAGS -Wall -O0 -gstabs -DDEBUG"
-       CXXFLAGS="$CXXFLAGS -Wall -O0 -gstabs -DDEBUG"
+       CFLAGS="$CFLAGS -Wall -O0 -DDEBUG"
+       CXXFLAGS="$CXXFLAGS -Wall -O0 -DDEBUG"
 else
        CFLAGS="$CFLAGS -O2 -DNDEBUG"
        CXXFLAGS="$CXXFLAGS -O2 -DNDEBUG"
 else
        CFLAGS="$CFLAGS -O2 -DNDEBUG"
        CXXFLAGS="$CXXFLAGS -O2 -DNDEBUG"
@@ -114,7 +124,6 @@ AC_DEFINE_UNQUOTED([YOINK_LOGLEVEL], [$log_level],
                                   [Define to detail level of logging.])
 
 
                                   [Define to detail level of logging.])
 
 
-
 if test "x$prefix" = xNONE
 then
        prefix="$ac_default_prefix"
 if test "x$prefix" = xNONE
 then
        prefix="$ac_default_prefix"
@@ -143,7 +152,27 @@ AC_DEFINE_UNQUOTED([YOINK_CONFIGFILES], ["$CONFIGFILES"],
 
 
 #
 
 
 #
-# Checks for typedefs, structures, and compiler characteristics.
+# Split the version number into components.
+#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+VERSION_MAJOR=$(echo $VERSION | cut -d. -f1)
+VERSION_MINOR=$(echo $VERSION | cut -d. -f2)
+VERSION_REVISION=$(echo $VERSION | cut -d. -f3)
+
+AC_DEFINE_UNQUOTED([VERSION_MAJOR], [${VERSION_MAJOR:-0}],
+                                  [Define to major version number component.])
+
+AC_DEFINE_UNQUOTED([VERSION_MINOR], [${VERSION_MINOR:-0}],
+                                  [Define to minor version number component.])
+
+AC_DEFINE_UNQUOTED([VERSION_REVISION], [${VERSION_REVISION:-0}],
+                                  [Define to revision version number component.])
+
+# these are used in src/yoink.rc
+
+
+#
+# Checks for system functions/headers and compiler characteristics.
 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 AC_C_STRINGIZE
 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 AC_C_STRINGIZE
@@ -155,98 +184,91 @@ AC_TYPE_UINT32_T
 AC_TYPE_SIZE_T
 AC_TYPE_SSIZE_T
 
 AC_TYPE_SIZE_T
 AC_TYPE_SSIZE_T
 
-
-#
-# Checks for system functions.
-#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
 AC_FUNC_ERROR_AT_LINE
 AC_FUNC_STRTOD
 AC_CHECK_FUNCS([nanosleep strchr strcspn strrchr strstr])
 
 AC_FUNC_ERROR_AT_LINE
 AC_FUNC_STRTOD
 AC_CHECK_FUNCS([nanosleep strchr strcspn strrchr strstr])
 
-
-#
-# Checks for header files.
-#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
 AC_HEADER_STDBOOL
 AC_HEADER_STDC
 AC_CHECK_HEADERS([stddef.h stdint.h stdlib.h string.h unistd.h])
 
 AC_HEADER_STDBOOL
 AC_HEADER_STDC
 AC_CHECK_HEADERS([stddef.h stdint.h stdlib.h string.h unistd.h])
 
+
+#
+# Checks for build dependencies.
+#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+##### boost #####
+website="http://www.boost.org/"
 BOOST_SMART_PTR
 BOOST_STRING_ALGO
 BOOST_BIND
 BOOST_FUNCTION
 
 BOOST_SMART_PTR
 BOOST_STRING_ALGO
 BOOST_BIND
 BOOST_FUNCTION
 
+##### SDL #####
+website="http://www.libsdl.org/"
 AM_PATH_SDL([1.2.10],
                        [CFLAGS="$CFLAGS $SDL_CFLAGS"
                         CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
                         LIBS="$LIBS $SDL_LIBS"])
 
 AM_PATH_SDL([1.2.10],
                        [CFLAGS="$CFLAGS $SDL_CFLAGS"
                         CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
                         LIBS="$LIBS $SDL_LIBS"])
 
+##### opengl, glu #####
+website="http://www.mesa3d.org/"
 AC_CHECK_HEADERS([GL/gl.h GL/glu.h],,
 AC_CHECK_HEADERS([GL/gl.h GL/glu.h],,
-                                [missing="$missing OpenGL"])
-
-AC_CHECK_HEADERS([AL/al.h AL/alut.h],,
-                                [missing="$missing OpenAL"])
-
-AC_CHECK_HEADERS([SDL/SDL_image.h],,
-                                [missing="$missing SDL_image"])
-
-AC_CHECK_HEADERS([vorbis/codec.h vorbis/vorbisfile.h],,
-                                [missing="$missing libvorbis"])
-
-if test "x$missing" != x
-then
-       echo "** Required header files from these libraries are missing:"
-       for header in $missing
-       do
-               echo "**   $header"
-       done
-       AC_MSG_ERROR([please install missing dependencies])
-fi
-
-
-#
-# Checks for libraries.
-#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
+                                [missing=yes
+                                 echo "***** Missing GL headers ($website) *****"])
 if test x$WIN32 == xyes
 then
 # autoconf library search macro doesn't find opengl32 on windows because it uses
 # different name hashing, but it links fine; assume it's there
        LIBS="$LIBS -lglu32 -lopengl32"
 else
 if test x$WIN32 == xyes
 then
 # autoconf library search macro doesn't find opengl32 on windows because it uses
 # different name hashing, but it links fine; assume it's there
        LIBS="$LIBS -lglu32 -lopengl32"
 else
-       AC_SEARCH_LIBS([gluDisk], [GLU MesaGLU],,
-                                  [missing="$missing GLU"])
-
        AC_SEARCH_LIBS([glEnable], [GL MesaGL],,
        AC_SEARCH_LIBS([glEnable], [GL MesaGL],,
-                                  [missing="$missing OpenGL"])
+                                  [missing=yes
+                                       echo "***** Missing libGL ($website) *****"])
+       AC_SEARCH_LIBS([gluDisk], [GLU MesaGLU],,
+                                  [missing=yes
+                                       echo "***** Missing libGLU ($website) *****"])
 fi
 
 fi
 
+##### openal, alut #####
+website="http://connect.creativelabs.com/openal/"
+AC_CHECK_HEADERS([AL/al.h AL/alut.h],,
+                                [missing=yes
+                                 echo "***** Missing OpenAL headers ($website) *****"])
 AC_SEARCH_LIBS([alEnable], [openal openal32],,
 AC_SEARCH_LIBS([alEnable], [openal openal32],,
-                          [missing="$missing OpenAL"])
-
+                          [missing=yes
+                               echo "***** Missing libopenal ($website) *****"])
 AC_SEARCH_LIBS([alutInit], [alut],,
 AC_SEARCH_LIBS([alutInit], [alut],,
-                          [missing="$missing ALUT"])
+                          [missing=yes
+                               echo "***** Missing libalut ($website) *****"])
 
 
+##### SDL_image #####
+website="http://www.libsdl.org/projects/SDL_image/"
+AC_CHECK_HEADERS([SDL/SDL_image.h],,
+                                [missing=yes
+                                 echo "***** Missing SDL_image header ($website) *****"])
 AC_SEARCH_LIBS([IMG_Load], [SDL_image],,
 AC_SEARCH_LIBS([IMG_Load], [SDL_image],,
-                          [missing="$missing SDL_image"])
+                          [missing=yes
+                               echo "***** Missing libSDL_image ($website) *****"])
 
 
+##### libvorbis #####
+website="http://www.xiph.org/downloads/"
+AC_CHECK_HEADERS([vorbis/codec.h vorbis/vorbisfile.h],,
+                                [missing=yes
+                                 echo "***** Missing vorbis headers ($website) *****"])
 AC_SEARCH_LIBS([ov_open], [vorbisfile],,
 AC_SEARCH_LIBS([ov_open], [vorbisfile],,
-                          [missing="$missing libvorbis"])
+                          [missing=yes
+                               echo "***** Missing libvorbisfile ($website) *****"])
 
 
+##### librt (optional) #####
 AC_SEARCH_LIBS([clock_gettime], [rt],
                           [AC_DEFINE([HAVE_CLOCK_GETTIME], 1,
                                                  [Define to 1 if you have the 'clock_gettime' function.])])
 
 AC_SEARCH_LIBS([clock_gettime], [rt],
                           [AC_DEFINE([HAVE_CLOCK_GETTIME], 1,
                                                  [Define to 1 if you have the 'clock_gettime' function.])])
 
-if test "x$missing" != x
+
+if test x$missing == xyes
 then
 then
-       echo "** One or more required libraries are missing:"
-       for library in $missing
-       do
-               echo "**   $library"
-       done
-       AC_MSG_ERROR([please install missing dependencies])
+       AC_MSG_ERROR([please install missing dependencies (see messages above)])
 fi
 
 
 fi
 
 
@@ -274,7 +296,6 @@ AC_CONFIG_FILES([Makefile
                                 extra/Makefile
                                 extra/yoink.spec
                  src/Makefile])
                                 extra/Makefile
                                 extra/yoink.spec
                  src/Makefile])
-                                #src/Moof/yajl/Makefile])
 
 AC_CONFIG_HEADERS([src/config.h])
 
 
 AC_CONFIG_HEADERS([src/config.h])
 
index 99c48fad90b93224c8df4139aae0fe8a15f6ae6f..d9e90bfdd20133ca43bdbe20c311a4c46752dd6d 100644 (file)
@@ -284,7 +284,7 @@ artifacts which are more obvious on certain OpenGL implementations.
 .PP
 Send bug reports, patches, and love notes to:
 .br
 .PP
 Send bug reports, patches, and love notes to:
 .br
-Charles McGarvey <onefriedrice@brokenzipper.com>
+Charles McGarvey <@PACKAGE_BUGREPORT@>
 .SH AUTHOR
 .PP
 Neil Carter was the original creator of Yoink, his winning entry in the
 .SH AUTHOR
 .PP
 Neil Carter was the original creator of Yoink, his winning entry in the
index f4730c18b1a4fc6b73dd7cb43b8c3f5fbbf1e9da..ca287ba65a32db632ebaee55d82ede8370d33ee5 100644 (file)
@@ -27,10 +27,6 @@ DEPEND="${RDEPEND}
        dev-util/pkgconfig"
 
 src_prepare() {
        dev-util/pkgconfig"
 
 src_prepare() {
-       sed -i \
-               -e "s/-Werror//g" \
-               configure.ac \
-               || die "sed failed"
        sed -i \
                -e "/apps/d" \
                -e "/pixmap/d" \
        sed -i \
                -e "/apps/d" \
                -e "/pixmap/d" \
index 30f2bae88f3cbeb2ed24f4f21770e056e11f4475..384fa0a55c1fb9801902834431829d02d074cae0 100644 (file)
@@ -119,6 +119,12 @@ yoink_SOURCES = \
                                YoinkApp.hh \
                                $(ENDLIST)
 
                                YoinkApp.hh \
                                $(ENDLIST)
 
+if WIN32
+yoink_SOURCES += yoink.rc yoink.ico
+.rc.o:
+       @WINDRES@ -o $@ -i $<
+endif
+
 yoink_CPPFLAGS = -I$(top_srcdir)/src/Moof
 yoink_LDADD = libmoof.a
 
 yoink_CPPFLAGS = -I$(top_srcdir)/src/Moof
 yoink_LDADD = libmoof.a
 
diff --git a/src/yoink.ico b/src/yoink.ico
new file mode 100644 (file)
index 0000000..71b63c0
Binary files /dev/null and b/src/yoink.ico differ
diff --git a/src/yoink.rc b/src/yoink.rc
new file mode 100644 (file)
index 0000000..6bc5b36
--- /dev/null
@@ -0,0 +1,41 @@
+
+//
+// Yoink
+// Compile this file with windres and link the object with the executable.
+//
+
+#include <winver.h>
+#include "config.h"
+
+1 VERSIONINFO
+
+FILEVERSION            VERSION_MAJOR,VERSION_MINOR,VERSION_REVISION,0
+PRODUCTVERSION VERSION_MAJOR,VERSION_MINOR,VERSION_REVISION,0
+#if !defined(NDEBUG)
+       FILEFLAGS       VS_FF_DEBUG
+#endif
+FILEOS                 VOS_NT_WINDOWS32
+FILETYPE               VFT_APP
+{
+       BLOCK "StringFileInfo"
+       {
+               BLOCK "000004b0"
+               {
+                       VALUE "CompanyName", "\000"
+                       VALUE "FileDescription", "Alien-smashing action game"
+                       VALUE "FileVersion", PACKAGE_VERSION
+                       VALUE "InternalName", "Yoink"
+                       VALUE "LegalCopyright", "Copyright (C) 2009 Charles McGarvey et al."
+                       VALUE "OriginalFilename", "Yoink.exe"
+                       VALUE "ProductName", "Yoink"
+                       VALUE "ProductVersion", PACKAGE_VERSION
+               }
+       }
+       BLOCK "VarFileInfo"
+       {
+               VALUE "Translation", 0x0409, 1200
+       }
+}
+
+1000 ICON "yoink.ico"
+
This page took 0.030831 seconds and 4 git commands to generate.