@@ -148,10 +148,10 @@ if [ "$MODE" = "local" ] || [ "$MODE" = "fast" ]; then
148148 echo " Built: ./$OUTPUT_NAME "
149149 exit 0
150150elif [ " $MODE " = " web" ]; then
151- mkdir -p " build_web /$ENV "
151+ mkdir -p " build/web /$ENV "
152152 echo " Compiling $ENV for web..."
153153 emcc \
154- -o " build_web /$ENV /game.html" \
154+ -o " build/web /$ENV /game.html" \
155155 " $SRC_DIR /$ENV .c" $EXTRA_SRC \
156156 -O3 -Wall \
157157 " ${LINK_ARCHIVES[@]} " \
@@ -164,7 +164,7 @@ elif [ "$MODE" = "web" ]; then
164164 -DNDEBUG -DPLATFORM_WEB -DGRAPHICS_API_OPENGL_ES3 \
165165 --preload-file resources/$ENV @resources/$ENV \
166166 --preload-file resources/shared@resources/shared
167- echo " Built: build_web /$ENV /game.html"
167+ echo " Built: build/web /$ENV /game.html"
168168 exit 0
169169fi
170170
@@ -191,6 +191,9 @@ if [ -z "$CUDNN_LFLAG" ]; then
191191 CUDNN_LFLAG=$( python -c " import nvidia.cudnn, os; print('-L' + os.path.join(nvidia.cudnn.__path__[0], 'lib'))" 2> /dev/null || echo " " )
192192fi
193193
194+ export CCACHE_DIR=" ${CCACHE_DIR:- $HOME / .ccache} "
195+ export CCACHE_BASEDIR=" $( pwd) "
196+ export CCACHE_COMPILERCHECK=content
194197NVCC=" ccache $CUDA_HOME /bin/nvcc"
195198CC=" ${CC:- $(command -v ccache >/ dev/ null && echo ' ccache clang' || echo ' clang' )} "
196199if [ -n " $NVCC_ARCH " ]; then
@@ -210,8 +213,9 @@ EXT_SUFFIX=$(python -c "import sysconfig; print(sysconfig.get_config_var('EXT_SU
210213OUTPUT=" pufferlib/_C${EXT_SUFFIX} "
211214
212215BINDING_SRC=" $SRC_DIR /binding.c"
213- STATIC_OBJ=" src/libstatic_${ENV} .o"
214- STATIC_LIB=" src/libstatic_${ENV} .a"
216+ mkdir -p build
217+ STATIC_OBJ=" build/libstatic_${ENV} .o"
218+ STATIC_LIB=" build/libstatic_${ENV} .a"
215219
216220if [ ! -f " $BINDING_SRC " ]; then
217221 echo " Error: $BINDING_SRC not found"
@@ -249,11 +253,11 @@ if [ -z "$MODE" ]; then
249253 -DOBS_TENSOR_T=$OBS_TENSOR_T \
250254 -DENV_NAME=$ENV \
251255 $PRECISION $NVCC_OPT \
252- src/bindings.cu -o src /bindings.o
256+ src/bindings.cu -o build /bindings.o
253257
254258 LINK_CMD=(
255259 ${CXX:- g++} -shared -fPIC -fopenmp
256- src /bindings.o " $STATIC_LIB " " $RAYLIB_A "
260+ build /bindings.o " $STATIC_LIB " " $RAYLIB_A "
257261 -L$CUDA_HOME /lib64 $CUDNN_LFLAG
258262 -lcudart -lnccl -lnvidia-ml -lcublas -lcusolver -lcurand -lcudnn
259263 $OMP_LIB $LINK_OPT
@@ -274,10 +278,10 @@ elif [ "$MODE" = "cpu" ]; then
274278 -DOBS_TENSOR_T=$OBS_TENSOR_T \
275279 -DENV_NAME=$ENV \
276280 $PRECISION $LINK_OPT \
277- src/bindings_cpu.cpp -o src /bindings_cpu.o
281+ src/bindings_cpu.cpp -o build /bindings_cpu.o
278282 LINK_CMD=(
279283 ${CXX:- g++} -shared -fPIC -fopenmp
280- src /bindings_cpu.o " $STATIC_LIB " " $RAYLIB_A "
284+ build /bindings_cpu.o " $STATIC_LIB " " $RAYLIB_A "
281285 -lm -lpthread $OMP_LIB $LINK_OPT
282286 " ${SHARED_LDFLAGS[@]} "
283287 -o " $OUTPUT "
0 commit comments