Browse Source

CMake: Set generated prc's `model-cache-dir` properly for Windows/macOS

Sam Edwards 6 years ago
parent
commit
a37eabe089
2 changed files with 12 additions and 1 deletions
  1. 11 0
      panda/src/configfiles/CMakeLists.txt
  2. 1 1
      panda/src/configfiles/panda.prc.in

+ 11 - 0
panda/src/configfiles/CMakeLists.txt

@@ -21,6 +21,17 @@ else()
   set(AUDIO_LIBRARY_NAME none)
   set(AUDIO_LIBRARY_NAME none)
 endif()
 endif()
 
 
+if(WIN32)
+  set(BAM_CACHE_DIR
+    "$USER_APPDATA/Panda3D-${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}")
+elseif(APPLE)
+  set(BAM_CACHE_DIR
+    "$HOME/Library/Caches/Panda3D-${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}")
+else()
+  set(BAM_CACHE_DIR
+    "$XDG_CACHE_HOME/panda3d")
+endif()
+
 configure_file(panda.prc.in "${CMAKE_BINARY_DIR}/etc/20_panda.prc")
 configure_file(panda.prc.in "${CMAKE_BINARY_DIR}/etc/20_panda.prc")
 if(IS_MULTICONFIG)
 if(IS_MULTICONFIG)
   file(GENERATE OUTPUT "${PROJECT_BINARY_DIR}/$<CONFIG>/etc/20_panda.prc"
   file(GENERATE OUTPUT "${PROJECT_BINARY_DIR}/$<CONFIG>/etc/20_panda.prc"

+ 1 - 1
panda/src/configfiles/panda.prc.in

@@ -35,7 +35,7 @@ load-file-type egg pandaegg
 default-model-extension .egg
 default-model-extension .egg
 
 
 # Enable the model-cache, but only for models, not textures.
 # Enable the model-cache, but only for models, not textures.
-model-cache-dir $XDG_CACHE_HOME/panda3d
+model-cache-dir ${BAM_CACHE_DIR}
 model-cache-textures #f
 model-cache-textures #f