From b5e7ed47d48592f3af25d5d16ab7ea12eb275dbf Mon Sep 17 00:00:00 2001 From: Henrique Alves Date: Sat, 30 Mar 2024 01:19:33 +0200 Subject: First commit --- .gitignore | 3 + CMakeCache.txt | 699 ++++++++++++++++++++++++++++++++++++++++++++++++ CMakeLists.txt | 13 +- CPackConfig.cmake | 75 ++++++ CPackSourceConfig.cmake | 83 ++++++ Makefile | 310 +++++++++++++++++++++ cmake_install.cmake | 55 ++++ scripts/main.scm | 11 + sources/main.c | 59 ++-- 9 files changed, 1283 insertions(+), 25 deletions(-) create mode 100644 CMakeCache.txt create mode 100644 CPackConfig.cmake create mode 100644 CPackSourceConfig.cmake create mode 100644 Makefile create mode 100644 cmake_install.cmake create mode 100644 scripts/main.scm diff --git a/.gitignore b/.gitignore index 7493ec2..5bc0fd0 100644 --- a/.gitignore +++ b/.gitignore @@ -5,4 +5,7 @@ cmake-build-debug/ bin/ build/ out/ +slgj +_deps/ +CMakeFiles/ CMakeSettings.json \ No newline at end of file diff --git a/CMakeCache.txt b/CMakeCache.txt new file mode 100644 index 0000000..363ea27 --- /dev/null +++ b/CMakeCache.txt @@ -0,0 +1,699 @@ +# This is the CMakeCache file. +# For build in directory: /Users/macpc/Projects/slgj-2024 +# It was generated by CMake: /usr/local/Cellar/cmake/3.29.0/bin/cmake +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//Build the examples. +BUILD_EXAMPLES:BOOL=OFF + +BUILD_GAMES:BOOL=OFF + +//Build shared libraries +BUILD_SHARED_LIBS:BOOL=OFF + +//Path to a program. +CMAKE_ADDR2LINE:FILEPATH=CMAKE_ADDR2LINE-NOTFOUND + +//Path to a program. +CMAKE_AR:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar + +//Choose the type of build. +CMAKE_BUILD_TYPE:STRING= + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//CXX compiler +CMAKE_CXX_COMPILER:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ + +//Flags used by the CXX compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the CXX compiler during DEBUG builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the CXX compiler during MINSIZEREL builds. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the CXX compiler during RELEASE builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the CXX compiler during RELWITHDEBINFO builds. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//C compiler +CMAKE_C_COMPILER:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc + +//Flags used by the C compiler during all build types. +CMAKE_C_FLAGS:STRING= + +//Flags used by the C compiler during DEBUG builds. +CMAKE_C_FLAGS_DEBUG:STRING=-g + +//Flags used by the C compiler during MINSIZEREL builds. +CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the C compiler during RELEASE builds. +CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the C compiler during RELWITHDEBINFO builds. +CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Path to a program. +CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= + +//Value Computed by CMake. +CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=/Users/macpc/Projects/slgj-2024/CMakeFiles/pkgRedirects + +//User executables (bin) +CMAKE_INSTALL_BINDIR:PATH=bin + +//Read-only architecture-independent data (DATAROOTDIR) +CMAKE_INSTALL_DATADIR:PATH= + +//Read-only architecture-independent data root (share) +CMAKE_INSTALL_DATAROOTDIR:PATH=share + +//Documentation root (DATAROOTDIR/doc/PROJECT_NAME) +CMAKE_INSTALL_DOCDIR:PATH= + +//C header files (include) +CMAKE_INSTALL_INCLUDEDIR:PATH=include + +//Info documentation (DATAROOTDIR/info) +CMAKE_INSTALL_INFODIR:PATH= + +//Object code libraries (lib) +CMAKE_INSTALL_LIBDIR:PATH=lib + +//Program executables (libexec) +CMAKE_INSTALL_LIBEXECDIR:PATH=libexec + +//Locale-dependent data (DATAROOTDIR/locale) +CMAKE_INSTALL_LOCALEDIR:PATH= + +//Modifiable single-machine data (var) +CMAKE_INSTALL_LOCALSTATEDIR:PATH=var + +//Man documentation (DATAROOTDIR/man) +CMAKE_INSTALL_MANDIR:PATH= + +//Path to a program. +CMAKE_INSTALL_NAME_TOOL:FILEPATH=/usr/bin/install_name_tool + +//C header files for non-gcc (/usr/include) +CMAKE_INSTALL_OLDINCLUDEDIR:PATH=/usr/include + +//Install path prefix, prepended onto install directories. +CMAKE_INSTALL_PREFIX:PATH=/usr/local + +//Run-time variable data (LOCALSTATEDIR/run) +CMAKE_INSTALL_RUNSTATEDIR:PATH= + +//System admin executables (sbin) +CMAKE_INSTALL_SBINDIR:PATH=sbin + +//Modifiable architecture-independent data (com) +CMAKE_INSTALL_SHAREDSTATEDIR:PATH=com + +//Read-only single-machine data (etc) +CMAKE_INSTALL_SYSCONFDIR:PATH=etc + +//Path to a program. +CMAKE_LINKER:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld + +//Path to a program. +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_NM:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm + +//Path to a program. +CMAKE_OBJCOPY:FILEPATH=CMAKE_OBJCOPY-NOTFOUND + +//Path to a program. +CMAKE_OBJDUMP:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump + +//Build architectures for OSX +CMAKE_OSX_ARCHITECTURES:STRING= + +//Minimum OS X version to target for deployment (at runtime); newer +// APIs weak linked. Set to empty string for default value. +CMAKE_OSX_DEPLOYMENT_TARGET:STRING=14.1 + +//The product will be built against the headers and libraries located +// inside the indicated SDK. +CMAKE_OSX_SYSROOT:PATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=slgj + +//Value Computed by CMake +CMAKE_PROJECT_VERSION:STATIC=3.4.0 + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_MAJOR:STATIC=3 + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_MINOR:STATIC=4 + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_PATCH:STATIC=0 + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_TWEAK:STATIC= + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib + +//Path to a program. +CMAKE_READELF:FILEPATH=CMAKE_READELF-NOTFOUND + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_STRIP:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip + +//Path to a program. +CMAKE_TAPI:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/tapi + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +//Enable to build RPM source packages +CPACK_SOURCE_RPM:BOOL=OFF + +//Enable to build TBZ2 source packages +CPACK_SOURCE_TBZ2:BOOL=ON + +//Enable to build TGZ source packages +CPACK_SOURCE_TGZ:BOOL=ON + +//Enable to build TXZ source packages +CPACK_SOURCE_TXZ:BOOL=ON + +//Enable to build TZ source packages +CPACK_SOURCE_TZ:BOOL=ON + +//Enable to build ZIP source packages +CPACK_SOURCE_ZIP:BOOL=OFF + +//Show options for customizing your Raylib library build. +CUSTOMIZE_BUILD:BOOL=OFF + +//Enable AddressSanitizer (ASAN) for debugging (degrades performance) +ENABLE_ASAN:BOOL=OFF + +//Enable MemorySanitizer (MSan) for debugging (not recommended +// to run with ASAN) +ENABLE_MSAN:BOOL=OFF + +//Enable UndefinedBehaviorSanitizer (UBSan) for debugging +ENABLE_UBSAN:BOOL=OFF + +//Directory under which to collect all populated content +FETCHCONTENT_BASE_DIR:PATH=/Users/macpc/Projects/slgj-2024/_deps + +//Disables all attempts to download or update content and assumes +// source dirs already exist +FETCHCONTENT_FULLY_DISCONNECTED:BOOL=OFF + +//Enables QUIET option for all content population +FETCHCONTENT_QUIET:BOOL=ON + +//When not empty, overrides where to find pre-populated content +// for raylib +FETCHCONTENT_SOURCE_DIR_RAYLIB:PATH= + +//Enables UPDATE_DISCONNECTED behavior for all content population +FETCHCONTENT_UPDATES_DISCONNECTED:BOOL=OFF + +//Enables UPDATE_DISCONNECTED behavior just for population of raylib +FETCHCONTENT_UPDATES_DISCONNECTED_RAYLIB:BOOL=OFF + +//Git command line client +GIT_EXECUTABLE:FILEPATH=/usr/bin/git + +//Value Computed by CMake +GLFW_BINARY_DIR:STATIC=/Users/macpc/Projects/slgj-2024/_deps/raylib-build/raylib/external/glfw + +//Build support for Cocoa +GLFW_BUILD_COCOA:BOOL=ON + +//Build the GLFW documentation +GLFW_BUILD_DOCS:BOOL=OFF + +//Build the GLFW example programs +GLFW_BUILD_EXAMPLES:BOOL=OFF + +//Build the GLFW test programs +GLFW_BUILD_TESTS:BOOL=OFF + +//Generate installation target +GLFW_INSTALL:BOOL=OFF + +//Value Computed by CMake +GLFW_IS_TOP_LEVEL:STATIC=OFF + +GLFW_LIBRARY_TYPE:STRING=OBJECT + +//Value Computed by CMake +GLFW_SOURCE_DIR:STATIC=/Users/macpc/Projects/slgj-2024/_deps/raylib-src/src/external/glfw + +//Include everything disabled by default (for CI usage +INCLUDE_EVERYTHING:BOOL=OFF + +//Build fat library for both i386 and x86_64 on macOS +MACOS_FATLIB:BOOL=OFF + +//Path to a library. +OPENGL_LIBRARY:FILEPATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk/System/Library/Frameworks/OpenGL.framework + +//Force a specific OpenGL Version? +OPENGL_VERSION:STRING=OFF + +//Arguments to supply to pkg-config +PKG_CONFIG_ARGN:STRING= + +//pkg-config executable +PKG_CONFIG_EXECUTABLE:FILEPATH=/usr/local/bin/pkg-config + +//Platform to build for. +PLATFORM:STRING=Desktop + +//Link raylib against system GLFW instead of embedded one +USE_EXTERNAL_GLFW:STRING=OFF + +//Compile static library as position-independent code +WITH_PIC:BOOL=OFF + +//Value Computed by CMake +my_raylib_game_BINARY_DIR:STATIC=/Users/macpc/Projects/slgj-2024 + +//Value Computed by CMake +my_raylib_game_IS_TOP_LEVEL:STATIC=ON + +//Value Computed by CMake +my_raylib_game_SOURCE_DIR:STATIC=/Users/macpc/Projects/slgj-2024 + +//Path to a library. +pkgcfg_lib_GUILE_PKG_gc:FILEPATH=/usr/local/opt/bdw-gc/lib/libgc.dylib + +//Path to a library. +pkgcfg_lib_GUILE_PKG_guile-3.0:FILEPATH=/usr/local/Cellar/guile/3.0.9_1/lib/libguile-3.0.dylib + +//Path to a library. +pkgcfg_lib_GUILE_PKG_pthread:FILEPATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk/usr/lib/libpthread.tbd + +//Value Computed by CMake +raylib_BINARY_DIR:STATIC=/Users/macpc/Projects/slgj-2024/_deps/raylib-build/raylib + +//Value Computed by CMake +raylib_IS_TOP_LEVEL:STATIC=OFF + +//Dependencies for the target +raylib_LIB_DEPENDS:STATIC=general;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk/System/Library/Frameworks/OpenGL.framework;general;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk/System/Library/Frameworks/OpenGL.framework;glfw; + +//Value Computed by CMake +raylib_SOURCE_DIR:STATIC=/Users/macpc/Projects/slgj-2024/_deps/raylib-src/src + +//Value Computed by CMake +slgj_BINARY_DIR:STATIC=/Users/macpc/Projects/slgj-2024 + +//Value Computed by CMake +slgj_IS_TOP_LEVEL:STATIC=ON + +//Value Computed by CMake +slgj_SOURCE_DIR:STATIC=/Users/macpc/Projects/slgj-2024 + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_ADDR2LINE +CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//STRINGS property for variable: CMAKE_BUILD_TYPE +CMAKE_BUILD_TYPE-STRINGS:INTERNAL=Debug;Release;MinSizeRel;RelWithDebInfo +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/Users/macpc/Projects/slgj-2024 +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=29 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=0 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/usr/local/Cellar/cmake/3.29.0/bin/cmake +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=/usr/local/Cellar/cmake/3.29.0/bin/cpack +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=/usr/local/Cellar/cmake/3.29.0/bin/ctest +//ADVANCED property for variable: CMAKE_CXX_COMPILER +CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER +CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS +CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG +CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL +CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE +CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO +CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_DLLTOOL +CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 +//Path to cache edit program executable. +CMAKE_EDIT_COMMAND:INTERNAL=/usr/local/Cellar/cmake/3.29.0/bin/ccmake +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=MACHO +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Test CMAKE_HAVE_LIBC_PTHREAD +CMAKE_HAVE_LIBC_PTHREAD:INTERNAL=1 +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/Users/macpc/Projects/slgj-2024 +//ADVANCED property for variable: CMAKE_INSTALL_BINDIR +CMAKE_INSTALL_BINDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_DATADIR +CMAKE_INSTALL_DATADIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_DATAROOTDIR +CMAKE_INSTALL_DATAROOTDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_DOCDIR +CMAKE_INSTALL_DOCDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_INCLUDEDIR +CMAKE_INSTALL_INCLUDEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_INFODIR +CMAKE_INSTALL_INFODIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_LIBDIR +CMAKE_INSTALL_LIBDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_LIBEXECDIR +CMAKE_INSTALL_LIBEXECDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_LOCALEDIR +CMAKE_INSTALL_LOCALEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_LOCALSTATEDIR +CMAKE_INSTALL_LOCALSTATEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_MANDIR +CMAKE_INSTALL_MANDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_NAME_TOOL +CMAKE_INSTALL_NAME_TOOL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_OLDINCLUDEDIR +CMAKE_INSTALL_OLDINCLUDEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_RUNSTATEDIR +CMAKE_INSTALL_RUNSTATEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_SBINDIR +CMAKE_INSTALL_SBINDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_SHAREDSTATEDIR +CMAKE_INSTALL_SHAREDSTATEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_SYSCONFDIR +CMAKE_INSTALL_SYSCONFDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MAKE_PROGRAM +CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_NM +CMAKE_NM-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=5 +//ADVANCED property for variable: CMAKE_OBJCOPY +CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJDUMP +CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RANLIB +CMAKE_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_READELF +CMAKE_READELF-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/usr/local/Cellar/cmake/3.29.0/share/cmake +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_TAPI +CMAKE_TAPI-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/usr/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +//Test COMPILER_HAS_THOSE_TOGGLES +COMPILER_HAS_THOSE_TOGGLES:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_RPM +CPACK_SOURCE_RPM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_TBZ2 +CPACK_SOURCE_TBZ2-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_TGZ +CPACK_SOURCE_TGZ-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_TXZ +CPACK_SOURCE_TXZ-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_TZ +CPACK_SOURCE_TZ-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_ZIP +CPACK_SOURCE_ZIP-ADVANCED:INTERNAL=1 +//Details about finding PkgConfig +FIND_PACKAGE_MESSAGE_DETAILS_PkgConfig:INTERNAL=[/usr/local/bin/pkg-config][v0.29.2()] +//Details about finding Threads +FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()] +//ADVANCED property for variable: GIT_EXECUTABLE +GIT_EXECUTABLE-ADVANCED:INTERNAL=1 +//Build support for Wayland +GLFW_BUILD_WAYLAND:INTERNAL=ON +//Build support for X11 +GLFW_BUILD_X11:INTERNAL=ON +//GLFW pkg-config Libs.private +GLFW_PKG_CONFIG_LIBS_PRIVATE:INTERNAL= -framework Cocoa -framework IOKit -framework CoreFoundation +//GLFW pkg-config Requires.private +GLFW_PKG_CONFIG_REQUIRES_PRIVATE:INTERNAL= +GUILE_PKG_CFLAGS:INTERNAL=-D_THREAD_SAFE;-I/usr/local/Cellar/guile/3.0.9_1/include/guile/3.0;-I/usr/local/opt/gmp;-I/usr/local/opt/gmp/include;-I/usr/local/opt/readline/include;-I/usr/local/opt/bdw-gc/include +GUILE_PKG_CFLAGS_I:INTERNAL= +GUILE_PKG_CFLAGS_OTHER:INTERNAL=-D_THREAD_SAFE +GUILE_PKG_FOUND:INTERNAL=1 +GUILE_PKG_INCLUDEDIR:INTERNAL=/usr/local/Cellar/guile/3.0.9_1/include +GUILE_PKG_INCLUDE_DIRS:INTERNAL=/usr/local/Cellar/guile/3.0.9_1/include/guile/3.0;/usr/local/opt/gmp;/usr/local/opt/gmp/include;/usr/local/opt/readline/include;/usr/local/opt/bdw-gc/include +GUILE_PKG_LDFLAGS:INTERNAL=-L/usr/local/Cellar/guile/3.0.9_1/lib;-L/usr/local/opt/bdw-gc/lib;-lguile-3.0;-lgc;-lpthread +GUILE_PKG_LDFLAGS_OTHER:INTERNAL= +GUILE_PKG_LIBDIR:INTERNAL=/usr/local/Cellar/guile/3.0.9_1/lib +GUILE_PKG_LIBRARIES:INTERNAL=guile-3.0;gc;pthread +GUILE_PKG_LIBRARY_DIRS:INTERNAL=/usr/local/Cellar/guile/3.0.9_1/lib;/usr/local/opt/bdw-gc/lib +GUILE_PKG_LIBS:INTERNAL= +GUILE_PKG_LIBS_L:INTERNAL= +GUILE_PKG_LIBS_OTHER:INTERNAL= +GUILE_PKG_LIBS_PATHS:INTERNAL= +GUILE_PKG_MODULE_NAME:INTERNAL=guile-3.0 +GUILE_PKG_PREFIX:INTERNAL=/usr/local/Cellar/guile/3.0.9_1 +GUILE_PKG_STATIC_CFLAGS:INTERNAL=-D_THREAD_SAFE;-I/usr/local/Cellar/guile/3.0.9_1/include/guile/3.0;-I/usr/local/opt/gmp;-I/usr/local/opt/gmp/include;-I/usr/local/opt/readline/include;-I/usr/local/opt/bdw-gc/include +GUILE_PKG_STATIC_CFLAGS_I:INTERNAL= +GUILE_PKG_STATIC_CFLAGS_OTHER:INTERNAL=-D_THREAD_SAFE +GUILE_PKG_STATIC_INCLUDE_DIRS:INTERNAL=/usr/local/Cellar/guile/3.0.9_1/include/guile/3.0;/usr/local/opt/gmp;/usr/local/opt/gmp/include;/usr/local/opt/readline/include;/usr/local/opt/bdw-gc/include +GUILE_PKG_STATIC_LDFLAGS:INTERNAL=-L/usr/local/Cellar/guile/3.0.9_1/lib;-L/usr/local/opt/bdw-gc/lib;-L/usr/local/opt/gmp/lib;-lguile-3.0;-lgc;-lpthread;-lgmp;-lffi;-lunistring;-liconv +GUILE_PKG_STATIC_LDFLAGS_OTHER:INTERNAL= +GUILE_PKG_STATIC_LIBDIR:INTERNAL= +GUILE_PKG_STATIC_LIBRARIES:INTERNAL=guile-3.0;gc;pthread;gmp;ffi;unistring;iconv +GUILE_PKG_STATIC_LIBRARY_DIRS:INTERNAL=/usr/local/Cellar/guile/3.0.9_1/lib;/usr/local/opt/bdw-gc/lib;/usr/local/opt/gmp/lib +GUILE_PKG_STATIC_LIBS:INTERNAL= +GUILE_PKG_STATIC_LIBS_L:INTERNAL= +GUILE_PKG_STATIC_LIBS_OTHER:INTERNAL= +GUILE_PKG_STATIC_LIBS_PATHS:INTERNAL= +GUILE_PKG_VERSION:INTERNAL=3.0.9 +GUILE_PKG_guile-3.0_INCLUDEDIR:INTERNAL= +GUILE_PKG_guile-3.0_LIBDIR:INTERNAL= +GUILE_PKG_guile-3.0_PREFIX:INTERNAL= +GUILE_PKG_guile-3.0_VERSION:INTERNAL= +//Replace any OFF by default with ${OFF} to have it covered by +// this option +OFF:INTERNAL=OFF +//STRINGS property for variable: OPENGL_VERSION +OPENGL_VERSION-STRINGS:INTERNAL=OFF;4.3;3.3;2.1;1.1;ES 2.0;ES 3.0 +//ADVANCED property for variable: PKG_CONFIG_ARGN +PKG_CONFIG_ARGN-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: PKG_CONFIG_EXECUTABLE +PKG_CONFIG_EXECUTABLE-ADVANCED:INTERNAL=1 +//STRINGS property for variable: PLATFORM +PLATFORM-STRINGS:INTERNAL=Desktop;Web;Android;Raspberry Pi;DRM;SDL +//STRINGS property for variable: USE_EXTERNAL_GLFW +USE_EXTERNAL_GLFW-STRINGS:INTERNAL=OFF;IF_POSSIBLE;ON +//CMAKE_INSTALL_PREFIX during last run +_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX:INTERNAL=/usr/local +__pkg_config_arguments_GUILE_PKG:INTERNAL=REQUIRED;IMPORTED_TARGET;guile-3.0 +__pkg_config_checked_GUILE_PKG:INTERNAL=1 +//ADVANCED property for variable: pkgcfg_lib_GUILE_PKG_gc +pkgcfg_lib_GUILE_PKG_gc-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: pkgcfg_lib_GUILE_PKG_guile-3.0 +pkgcfg_lib_GUILE_PKG_guile-3.0-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: pkgcfg_lib_GUILE_PKG_pthread +pkgcfg_lib_GUILE_PKG_pthread-ADVANCED:INTERNAL=1 +prefix_result:INTERNAL=/usr/local/Cellar/guile/3.0.9_1/lib + diff --git a/CMakeLists.txt b/CMakeLists.txt index 6ac4767..38f12c9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,10 @@ cmake_minimum_required(VERSION 3.0) -project(my_raylib_game C) +project(slgj C) set(CMAKE_C_STANDARD 99) +# the `pkg_check_modules` function is created with this call +find_package(PkgConfig REQUIRED) + # Adding Raylib include(FetchContent) set(FETCHCONTENT_QUIET FALSE) @@ -21,12 +24,14 @@ FetchContent_MakeAvailable(raylib) file(GLOB_RECURSE PROJECT_SOURCES CONFIGURE_DEPENDS "${CMAKE_CURRENT_LIST_DIR}/sources/*.c") # Define PROJECT_SOURCES as a list of all source files set(PROJECT_INCLUDE "${CMAKE_CURRENT_LIST_DIR}/sources/") # Define PROJECT_INCLUDE to be the path to the include directory of the project +pkg_check_modules(GUILE_PKG REQUIRED IMPORTED_TARGET guile-3.0) + # Declaring our executable add_executable(${PROJECT_NAME}) target_sources(${PROJECT_NAME} PRIVATE ${PROJECT_SOURCES}) target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_INCLUDE}) -target_link_libraries(${PROJECT_NAME} PRIVATE raylib) +target_link_libraries(${PROJECT_NAME} PRIVATE raylib PkgConfig::GUILE_PKG) # Setting ASSETS_PATH -target_compile_definitions(${PROJECT_NAME} PUBLIC ASSETS_PATH="${CMAKE_CURRENT_SOURCE_DIR}/assets/") # Set the asset path macro to the absolute path on the dev machine -#target_compile_definitions(${PROJECT_NAME} PUBLIC ASSETS_PATH="./assets") # Set the asset path macro in release mode to a relative path that assumes the assets folder is in the same directory as the game executable \ No newline at end of file +target_compile_definitions(${PROJECT_NAME} PUBLIC ASSETS_PATH="./assets/") +target_compile_definitions(${PROJECT_NAME} PUBLIC SCRIPTS_PATH="./scripts/") diff --git a/CPackConfig.cmake b/CPackConfig.cmake new file mode 100644 index 0000000..feb3c2f --- /dev/null +++ b/CPackConfig.cmake @@ -0,0 +1,75 @@ +# This file will be configured to contain variables for CPack. These variables +# should be set in the CMake list file of the project before CPack module is +# included. The list of available CPACK_xxx variables and their associated +# documentation may be obtained using +# cpack --help-variable-list +# +# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME) +# and some are specific to a generator +# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables +# usually begin with CPACK__xxxx. + + +set(CPACK_BUILD_SOURCE_DIRS "/Users/macpc/Projects/slgj-2024;/Users/macpc/Projects/slgj-2024") +set(CPACK_CMAKE_GENERATOR "Unix Makefiles") +set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE") +set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE") +set(CPACK_DEBIAN_PACKAGE_DEPENDS "libatomic1, libc6, libglfw3, libglu1-mesa | libglu1, libglx0, libopengl0") +set(CPACK_DEBIAN_PACKAGE_NAME "libraylib-dev") +set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS "OFF") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "/usr/local/Cellar/cmake/3.29.0/share/cmake/Templates/CPack.GenericDescription.txt") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "slgj built using CMake") +set(CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE "ON") +set(CPACK_GENERATOR "ZIP;TGZ;DEB;RPM") +set(CPACK_INNOSETUP_ARCHITECTURE "x64") +set(CPACK_INSTALL_CMAKE_PROJECTS "/Users/macpc/Projects/slgj-2024;slgj;ALL;/") +set(CPACK_INSTALL_PREFIX "/usr/local") +set(CPACK_MODULE_PATH "/Users/macpc/Projects/slgj-2024/_deps/raylib-src/cmake") +set(CPACK_NSIS_DISPLAY_NAME "raylib 5.0.0") +set(CPACK_NSIS_INSTALLER_ICON_CODE "") +set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") +set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES") +set(CPACK_NSIS_PACKAGE_NAME "raylib 5.0.0") +set(CPACK_NSIS_UNINSTALL_NAME "Uninstall") +set(CPACK_OBJDUMP_EXECUTABLE "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump") +set(CPACK_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk") +set(CPACK_OUTPUT_CONFIG_FILE "/Users/macpc/Projects/slgj-2024/CPackConfig.cmake") +set(CPACK_PACKAGE_CONTACT "raysan5") +set(CPACK_PACKAGE_DEFAULT_LOCATION "/") +set(CPACK_PACKAGE_DESCRIPTION_FILE "/Users/macpc/Projects/slgj-2024/_deps/raylib-src/src/../README.md") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Simple and easy-to-use library to enjoy videogames programming") +set(CPACK_PACKAGE_FILE_NAME "raylib-5.0.0") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "raylib 5.0.0") +set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "raylib 5.0.0") +set(CPACK_PACKAGE_NAME "raylib") +set(CPACK_PACKAGE_RELOCATABLE "true") +set(CPACK_PACKAGE_VENDOR "Humanity") +set(CPACK_PACKAGE_VERSION "5.0.0") +set(CPACK_PACKAGE_VERSION_MAJOR "") +set(CPACK_PACKAGE_VERSION_MINOR "") +set(CPACK_PACKAGE_VERSION_PATCH "") +set(CPACK_RESOURCE_FILE_LICENSE "/Users/macpc/Projects/slgj-2024/_deps/raylib-src/src/../LICENSE") +set(CPACK_RESOURCE_FILE_README "/usr/local/Cellar/cmake/3.29.0/share/cmake/Templates/CPack.GenericDescription.txt") +set(CPACK_RESOURCE_FILE_WELCOME "/Users/macpc/Projects/slgj-2024/_deps/raylib-src/src/../README.md") +set(CPACK_RPM_PACKAGE_NAME "libraylib-devel") +set(CPACK_SET_DESTDIR "OFF") +set(CPACK_SOURCE_GENERATOR "TBZ2;TGZ;TXZ;TZ") +set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/Users/macpc/Projects/slgj-2024/CPackSourceConfig.cmake") +set(CPACK_SOURCE_RPM "OFF") +set(CPACK_SOURCE_TBZ2 "ON") +set(CPACK_SOURCE_TGZ "ON") +set(CPACK_SOURCE_TXZ "ON") +set(CPACK_SOURCE_TZ "ON") +set(CPACK_SOURCE_ZIP "OFF") +set(CPACK_SYSTEM_NAME "Darwin") +set(CPACK_THREADS "1") +set(CPACK_TOPLEVEL_TAG "Darwin") +set(CPACK_WIX_SIZEOF_VOID_P "8") + +if(NOT CPACK_PROPERTIES_FILE) + set(CPACK_PROPERTIES_FILE "/Users/macpc/Projects/slgj-2024/CPackProperties.cmake") +endif() + +if(EXISTS ${CPACK_PROPERTIES_FILE}) + include(${CPACK_PROPERTIES_FILE}) +endif() diff --git a/CPackSourceConfig.cmake b/CPackSourceConfig.cmake new file mode 100644 index 0000000..fa7534a --- /dev/null +++ b/CPackSourceConfig.cmake @@ -0,0 +1,83 @@ +# This file will be configured to contain variables for CPack. These variables +# should be set in the CMake list file of the project before CPack module is +# included. The list of available CPACK_xxx variables and their associated +# documentation may be obtained using +# cpack --help-variable-list +# +# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME) +# and some are specific to a generator +# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables +# usually begin with CPACK__xxxx. + + +set(CPACK_BUILD_SOURCE_DIRS "/Users/macpc/Projects/slgj-2024;/Users/macpc/Projects/slgj-2024") +set(CPACK_CMAKE_GENERATOR "Unix Makefiles") +set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE") +set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE") +set(CPACK_DEBIAN_PACKAGE_DEPENDS "libatomic1, libc6, libglfw3, libglu1-mesa | libglu1, libglx0, libopengl0") +set(CPACK_DEBIAN_PACKAGE_NAME "libraylib-dev") +set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS "OFF") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "/usr/local/Cellar/cmake/3.29.0/share/cmake/Templates/CPack.GenericDescription.txt") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "slgj built using CMake") +set(CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE "ON") +set(CPACK_GENERATOR "TBZ2;TGZ;TXZ;TZ") +set(CPACK_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#") +set(CPACK_INNOSETUP_ARCHITECTURE "x64") +set(CPACK_INSTALLED_DIRECTORIES "/Users/macpc/Projects/slgj-2024;/") +set(CPACK_INSTALL_CMAKE_PROJECTS "") +set(CPACK_INSTALL_PREFIX "/usr/local") +set(CPACK_MODULE_PATH "/Users/macpc/Projects/slgj-2024/_deps/raylib-src/cmake") +set(CPACK_NSIS_DISPLAY_NAME "raylib 5.0.0") +set(CPACK_NSIS_INSTALLER_ICON_CODE "") +set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") +set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES") +set(CPACK_NSIS_PACKAGE_NAME "raylib 5.0.0") +set(CPACK_NSIS_UNINSTALL_NAME "Uninstall") +set(CPACK_OBJDUMP_EXECUTABLE "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump") +set(CPACK_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk") +set(CPACK_OUTPUT_CONFIG_FILE "/Users/macpc/Projects/slgj-2024/CPackConfig.cmake") +set(CPACK_PACKAGE_CONTACT "raysan5") +set(CPACK_PACKAGE_DEFAULT_LOCATION "/") +set(CPACK_PACKAGE_DESCRIPTION_FILE "/Users/macpc/Projects/slgj-2024/_deps/raylib-src/src/../README.md") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Simple and easy-to-use library to enjoy videogames programming") +set(CPACK_PACKAGE_FILE_NAME "raylib-5.0.0-Source") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "raylib 5.0.0") +set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "raylib 5.0.0") +set(CPACK_PACKAGE_NAME "raylib") +set(CPACK_PACKAGE_RELOCATABLE "true") +set(CPACK_PACKAGE_VENDOR "Humanity") +set(CPACK_PACKAGE_VERSION "5.0.0") +set(CPACK_PACKAGE_VERSION_MAJOR "") +set(CPACK_PACKAGE_VERSION_MINOR "") +set(CPACK_PACKAGE_VERSION_PATCH "") +set(CPACK_RESOURCE_FILE_LICENSE "/Users/macpc/Projects/slgj-2024/_deps/raylib-src/src/../LICENSE") +set(CPACK_RESOURCE_FILE_README "/usr/local/Cellar/cmake/3.29.0/share/cmake/Templates/CPack.GenericDescription.txt") +set(CPACK_RESOURCE_FILE_WELCOME "/Users/macpc/Projects/slgj-2024/_deps/raylib-src/src/../README.md") +set(CPACK_RPM_PACKAGE_NAME "libraylib-devel") +set(CPACK_RPM_PACKAGE_SOURCES "ON") +set(CPACK_SET_DESTDIR "OFF") +set(CPACK_SOURCE_GENERATOR "TBZ2;TGZ;TXZ;TZ") +set(CPACK_SOURCE_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#") +set(CPACK_SOURCE_INSTALLED_DIRECTORIES "/Users/macpc/Projects/slgj-2024;/") +set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/Users/macpc/Projects/slgj-2024/CPackSourceConfig.cmake") +set(CPACK_SOURCE_PACKAGE_FILE_NAME "raylib-5.0.0-Source") +set(CPACK_SOURCE_RPM "OFF") +set(CPACK_SOURCE_TBZ2 "ON") +set(CPACK_SOURCE_TGZ "ON") +set(CPACK_SOURCE_TOPLEVEL_TAG "Darwin-Source") +set(CPACK_SOURCE_TXZ "ON") +set(CPACK_SOURCE_TZ "ON") +set(CPACK_SOURCE_ZIP "OFF") +set(CPACK_STRIP_FILES "") +set(CPACK_SYSTEM_NAME "Darwin") +set(CPACK_THREADS "1") +set(CPACK_TOPLEVEL_TAG "Darwin-Source") +set(CPACK_WIX_SIZEOF_VOID_P "8") + +if(NOT CPACK_PROPERTIES_FILE) + set(CPACK_PROPERTIES_FILE "/Users/macpc/Projects/slgj-2024/CPackProperties.cmake") +endif() + +if(EXISTS ${CPACK_PROPERTIES_FILE}) + include(${CPACK_PROPERTIES_FILE}) +endif() diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..94ac117 --- /dev/null +++ b/Makefile @@ -0,0 +1,310 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.29 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/local/Cellar/cmake/3.29.0/bin/cmake + +# The command to remove a file. +RM = /usr/local/Cellar/cmake/3.29.0/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/macpc/Projects/slgj-2024 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/macpc/Projects/slgj-2024 + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool..." + /usr/local/Cellar/cmake/3.29.0/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool for source..." + /usr/local/Cellar/cmake/3.29.0/bin/cpack --config ./CPackSourceConfig.cmake /Users/macpc/Projects/slgj-2024/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake cache editor..." + /usr/local/Cellar/cmake/3.29.0/bin/ccmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake to regenerate build system..." + /usr/local/Cellar/cmake/3.29.0/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..." + /usr/local/Cellar/cmake/3.29.0/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..." + /usr/local/Cellar/cmake/3.29.0/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..." + /usr/local/Cellar/cmake/3.29.0/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..." + /usr/local/Cellar/cmake/3.29.0/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..." + /usr/local/Cellar/cmake/3.29.0/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..." + /usr/local/Cellar/cmake/3.29.0/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/macpc/Projects/slgj-2024/CMakeFiles /Users/macpc/Projects/slgj-2024//CMakeFiles/progress.marks + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/macpc/Projects/slgj-2024/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -P /Users/macpc/Projects/slgj-2024/CMakeFiles/VerifyGlobs.cmake + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named slgj + +# Build rule for target. +slgj: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 slgj +.PHONY : slgj + +# fast build rule for target. +slgj/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/slgj.dir/build.make CMakeFiles/slgj.dir/build +.PHONY : slgj/fast + +#============================================================================= +# Target rules for targets named uninstall + +# Build rule for target. +uninstall: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 uninstall +.PHONY : uninstall + +# fast build rule for target. +uninstall/fast: + $(MAKE) $(MAKESILENT) -f _deps/raylib-build/CMakeFiles/uninstall.dir/build.make _deps/raylib-build/CMakeFiles/uninstall.dir/build +.PHONY : uninstall/fast + +#============================================================================= +# Target rules for targets named raylib + +# Build rule for target. +raylib: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 raylib +.PHONY : raylib + +# fast build rule for target. +raylib/fast: + $(MAKE) $(MAKESILENT) -f _deps/raylib-build/raylib/CMakeFiles/raylib.dir/build.make _deps/raylib-build/raylib/CMakeFiles/raylib.dir/build +.PHONY : raylib/fast + +#============================================================================= +# Target rules for targets named glfw + +# Build rule for target. +glfw: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 glfw +.PHONY : glfw + +# fast build rule for target. +glfw/fast: + $(MAKE) $(MAKESILENT) -f _deps/raylib-build/raylib/external/glfw/src/CMakeFiles/glfw.dir/build.make _deps/raylib-build/raylib/external/glfw/src/CMakeFiles/glfw.dir/build +.PHONY : glfw/fast + +#============================================================================= +# Target rules for targets named update_mappings + +# Build rule for target. +update_mappings: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 update_mappings +.PHONY : update_mappings + +# fast build rule for target. +update_mappings/fast: + $(MAKE) $(MAKESILENT) -f _deps/raylib-build/raylib/external/glfw/src/CMakeFiles/update_mappings.dir/build.make _deps/raylib-build/raylib/external/glfw/src/CMakeFiles/update_mappings.dir/build +.PHONY : update_mappings/fast + +sources/main.o: sources/main.c.o +.PHONY : sources/main.o + +# target to build an object file +sources/main.c.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/slgj.dir/build.make CMakeFiles/slgj.dir/sources/main.c.o +.PHONY : sources/main.c.o + +sources/main.i: sources/main.c.i +.PHONY : sources/main.i + +# target to preprocess a source file +sources/main.c.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/slgj.dir/build.make CMakeFiles/slgj.dir/sources/main.c.i +.PHONY : sources/main.c.i + +sources/main.s: sources/main.c.s +.PHONY : sources/main.s + +# target to generate assembly for a file +sources/main.c.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/slgj.dir/build.make CMakeFiles/slgj.dir/sources/main.c.s +.PHONY : sources/main.c.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" + @echo "... uninstall" + @echo "... update_mappings" + @echo "... glfw" + @echo "... raylib" + @echo "... slgj" + @echo "... sources/main.o" + @echo "... sources/main.i" + @echo "... sources/main.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -P /Users/macpc/Projects/slgj-2024/CMakeFiles/VerifyGlobs.cmake + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/cmake_install.cmake b/cmake_install.cmake new file mode 100644 index 0000000..8e94269 --- /dev/null +++ b/cmake_install.cmake @@ -0,0 +1,55 @@ +# Install script for directory: /Users/macpc/Projects/slgj-2024 + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/usr/local") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for each subdirectory. + include("/Users/macpc/Projects/slgj-2024/_deps/raylib-build/cmake_install.cmake") + +endif() + +if(CMAKE_INSTALL_COMPONENT) + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +file(WRITE "/Users/macpc/Projects/slgj-2024/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/scripts/main.scm b/scripts/main.scm new file mode 100644 index 0000000..779a351 --- /dev/null +++ b/scripts/main.scm @@ -0,0 +1,11 @@ +(define a 0) + +(define update + (lambda () + (set! a (+ a 1)) + )) + +(define draw + (lambda () + (rl-draw-text (string-append (number->string a) " oi ")) + )) diff --git a/sources/main.c b/sources/main.c index 2bed9bc..9dcaad1 100644 --- a/sources/main.c +++ b/sources/main.c @@ -1,35 +1,52 @@ #include "raylib.h" +#include +#include +#include +#include +#include -#define SCREEN_WIDTH (800) -#define SCREEN_HEIGHT (450) -#define WINDOW_TITLE "Window title" - -int main(void) +static SCM rl_draw_text(SCM text) { - InitWindow(SCREEN_WIDTH, SCREEN_HEIGHT, WINDOW_TITLE); - SetTargetFPS(60); + scm_t_string_failed_conversion_handler handler; + char* str = scm_to_stringn(text, NULL, NULL, handler); + DrawText(str, 200, 80, 20, RED); +} - Texture2D texture = LoadTexture(ASSETS_PATH"test.png"); // Check README.md for how this works +static void* game (void* data) +{ + scm_c_define_gsubr ("rl-draw-text", 1, 0, 0, &rl_draw_text); + + const int screen_width = 800; + const int screen_height = 600; - while (!WindowShouldClose()) - { - BeginDrawing(); + InitWindow(screen_width, screen_height, "SLGJ - 2024"); + SetTargetFPS(60); - ClearBackground(RAYWHITE); + char filename[] = SCRIPTS_PATH"main.scm"; - const int texture_x = SCREEN_WIDTH / 2 - texture.width / 2; - const int texture_y = SCREEN_HEIGHT / 2 - texture.height / 2; - DrawTexture(texture, texture_x, texture_y, WHITE); + scm_c_primitive_load(filename); - const char* text = "OMG! IT WORKS!"; - const Vector2 text_size = MeasureTextEx(GetFontDefault(), text, 20, 1); - DrawText(text, SCREEN_WIDTH / 2 - text_size.x / 2, texture_y + texture.height + text_size.y + 10, 20, BLACK); + SCM guile_update = scm_variable_ref(scm_c_lookup("update")); + SCM guile_draw = scm_variable_ref(scm_c_lookup("draw")); - EndDrawing(); + while (!WindowShouldClose()) + { + scm_call_0(guile_update); + + BeginDrawing(); + ClearBackground(RAYWHITE); + scm_call_0(guile_draw); + EndDrawing(); } + + CloseWindow(); + + return NULL; +} - CloseWindow(); - return 0; +int main(int argc, char* argv[]) { + scm_with_guile (&game, NULL); + return 0; } -- cgit v1.2.3