KarnakGames

rImGui using cimgui in a C raylib project

Apr 7th, 2024
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Make 1.75 KB | Source Code | 0 0
  1. # source: https://twitter.com/Lucrecious_/status/1776868747220775367
  2. # author: Luca @Lucrecious_
  3. warning_flags = -Wall -Wextra -pedantic
  4. osx_flags = -framework CoreVideo -framework IOKit -framework Cocoa -framework GLUT -framework OpenGL
  5.  
  6. raylib_flags = -lm -lraylib
  7. raylib_headers = raylib/src
  8. raylib_libs = raylib/src
  9.  
  10. cimgui_libs = cimgui
  11. cimgui_headers = cimgui
  12. cimgui_flags = -lcimgui
  13.  
  14. rlimgui_libs = rlImGui
  15. rlimgui_headers = rlImGui
  16. rlimgui_flags = -lrlImGui
  17.  
  18. CCFLAGS = $(warning_flags)
  19.  
  20. ifeq ($(OS),WINDOWS_NT)
  21. else
  22.     UNAME_S := $(shell uname -s)
  23.     ifeq ($(UNAME_S),Darwin)
  24.         CCFLAGS += $(osx_flags)
  25.     endif
  26. endif
  27.  
  28. CCFLAGS += -L$(raylib_libs)
  29. CCFLAGS += -I$(raylib_headers)
  30. CCFLAGS += $(raylib_flags)
  31.  
  32.  
  33. CCFLAGS += -L$(cimgui_libs)
  34. CCFLAGS += -I$(cimgui_headers)
  35. CCFLAGS += $(cimgui_flags)
  36.  
  37. CCFLAGS += -L$(rlimgui_libs)
  38. CCFLAGS += -I$(rlimgui_headers)
  39. CCFLAGS += $(rlimgui_flags)
  40.  
  41. CCFLAGS += -lstdc++
  42.  
  43. SRC = src/game.c
  44.  
  45. # for rebuild purposes
  46. SRC_DEP = src/animator.h src/json_builder.h src/player.h src/base64.h src/lut.h src/uuid.h src/animated_sprite.h
  47.  
  48. EXE = ashfell
  49.  
  50. ashfell: $(SRC) $(SRC_DEP) $(raylib_libs)/libraylib.a $(cimgui_libs)/libcimgui.a $(rlimgui_libs)/librlImGui.a
  51.     cc $(SRC) -o $(EXE) $(CCFLAGS)
  52.  
  53. $(raylib_libs)/libraylib.a:
  54.     cd raylib/src && $(MAKE)
  55.  
  56.  
  57. $(cimgui_libs)/libcimgui.a:
  58.     cd cimgui && $(MAKE) CXXFLAGS='-std=c++11 -DIMGUI_DISABLE_OBSOLETE_KEYIO=1' static
  59. # $(cimgui_libs)/libcimgui.a:
  60. #   cd cimgui && $(MAKE) CXXFLAGS='-std=c++11' static
  61.  
  62. rlImGui_build_o_cmd = g++ -c rlImGui.cpp -o rlImGui.o -I../raylib/src -I../cimgui/imgui -std=c++11
  63. rlImGui_build_static_cmd = ar -rc librlImGui.a rlImGui.o
  64. $(rlimgui_libs)/librlImGui.a:
  65.     cd rlImGui && $(rlImGui_build_o_cmd) && $(rlImGui_build_static_cmd)
  66.  
Add Comment
Please, Sign In to add comment