@@ -1267,12 +1267,6 @@ function(NBL_REGISTER_BUILD_MOUNT_POINT)
1267
1267
1268
1268
get_filename_component (BUILTIN_ARCHIVE_INPUT_ABS_ENTRY "${IMPL_INPUT_DIRECTORY} " ABSOLUTE )
1269
1269
set (BUILTIN_KEY_ENTRY_ABS "${BUILTIN_ARCHIVE_INPUT_ABS_ENTRY} /${_BUNDLE_ARCHIVE_ABSOLUTE_PATH_} " )
1270
-
1271
- # REMOVE IT AND ADD "DEPENDS" to INPUTS
1272
- # file(GLOB_RECURSE _DEPENDS_ON_ CONFIGURE_DEPENDS "${BUILTIN_KEY_ENTRY_ABS}/*.hlsl")
1273
- # list(FILTER _DEPENDS_ON_ EXCLUDE REGEX /preprocessed.hlsl)
1274
- # and maybe extra DEPENDS shared for all inputs
1275
- ####################
1276
1270
1277
1271
set (SPIRV_OUTPUT_ARCHIVE_KEY_ABS_ENTRY_DIR "${_BUNDLE_SEARCH_DIRECTORY_} /${_BUNDLE_ARCHIVE_ABSOLUTE_PATH_} " )
1278
1272
@@ -1357,6 +1351,7 @@ glue device permutation caps config with input
1357
1351
math (EXPR i "${i} + 1" )
1358
1352
list (GET IMPL_SHADERS ${i} FILEPATH )
1359
1353
set (COMPILE_OPTIONS "" )
1354
+ set (DEPENDS_ON "" )
1360
1355
math (EXPR i "${i} + 1" )
1361
1356
1362
1357
list (GET IMPL_SHADERS ${i} NEXT )
@@ -1367,31 +1362,46 @@ glue device permutation caps config with input
1367
1362
1368
1363
while (i LESS LEN )
1369
1364
list (GET IMPL_SHADERS ${i} ARG )
1370
- if (ARG STREQUAL "KEY" )
1365
+ if (ARG STREQUAL "KEY" OR ARG STREQUAL "DEPENDS" )
1371
1366
break ()
1372
1367
endif ()
1373
1368
list (APPEND COMPILE_OPTIONS "${ARG} " )
1374
1369
math (EXPR i "${i} + 1" )
1375
1370
endwhile ()
1376
1371
1372
+ if (i LESS LEN )
1373
+ list (GET IMPL_SHADERS ${i} NEXT_TOKEN )
1374
+ if (NEXT_TOKEN STREQUAL "DEPENDS" )
1375
+ math (EXPR i "${i} + 1" )
1376
+ while (i LESS LEN )
1377
+ list (GET IMPL_SHADERS ${i} ARG )
1378
+ if (ARG STREQUAL "KEY" )
1379
+ break ()
1380
+ endif ()
1381
+ list (APPEND DEPENDS_ON "${ARG} " )
1382
+ math (EXPR i "${i} + 1" )
1383
+ endwhile ()
1384
+ endif ()
1385
+ endif ()
1386
+
1377
1387
set (IMPL_KEY ${FILEPATH} )
1378
1388
set (TARGET_KEY "${IMPL_KEY}${POSTFIX_ACCESS_KEY}${KEY_EXTENSION} " )
1379
1389
1380
1390
if (IMPL_DISCARD AND "${POSTFIX_ACCESS_KEY} " MATCHES "${IMPL_DISCARD} " )
1381
1391
if (NBL_LOG_VERBOSE )
1382
- message (STATUS "[Nabla Builtin SPIRV ]: Discarded \" ${TARGET_KEY} \" key for ${IMPL_TARGET} " )
1392
+ message (STATUS "[Nabla Builtin]: Discarded \" ${TARGET_KEY} \" key for ${IMPL_TARGET} target " )
1383
1393
endif ()
1384
1394
continue ()
1385
1395
endif ()
1386
1396
1387
1397
if (NBL_LOG_VERBOSE )
1388
- message (STATUS "[Nabla Builtin SPIRV ]: Registered \" ${TARGET_KEY} \" key ${IMPL_TARGET} " )
1398
+ message (STATUS "[Nabla Builtin]: Registered \" ${TARGET_KEY} \" key for ${IMPL_TARGET} target " )
1389
1399
endif ()
1390
1400
1391
1401
set (TARGET_INPUT "${BUILTIN_KEY_ENTRY_ABS} /${IMPL_KEY} " )
1392
1402
list (APPEND REQUESTED_INPUTS "${TARGET_INPUT} " )
1393
- set (TAGET_OUTPUT "${SPIRV_OUTPUT_ARCHIVE_KEY_ABS_ENTRY_DIR} /${TARGET_KEY} " )
1394
- list (APPEND SPIRV_OUTPUTS "${TAGET_OUTPUT } " )
1403
+ set (TARGET_OUTPUT "${SPIRV_OUTPUT_ARCHIVE_KEY_ABS_ENTRY_DIR} /${TARGET_KEY} " )
1404
+ list (APPEND SPIRV_OUTPUTS "${TARGET_OUTPUT } " )
1395
1405
1396
1406
# doing as workaround for (**), dynamic define include could be better because then I don't have to generate intermediate files with glue at configure time
1397
1407
set (INT_INPUT "${SPIRV_OUTPUT_ARCHIVE_KEY_ABS_ENTRY_DIR} /.int/${TARGET_KEY} " )
@@ -1437,16 +1447,16 @@ glue device permutation caps config with input
1437
1447
1438
1448
set (NBL_NSC_COMPILE_COMMAND
1439
1449
"$<TARGET_FILE:nsc>"
1440
- -Fc "${TAGET_OUTPUT } "
1450
+ -Fc "${TARGET_OUTPUT } "
1441
1451
${COMPILE_OPTIONS} ${REQUIRED_OPTIONS}
1442
1452
# "-DNBL_DYMANIC_INCLUDE=<${TARGET_INPUT}>" # (**)!
1443
1453
"${INT_INPUT} "
1444
1454
)
1445
1455
1446
- add_custom_command (OUTPUT "${TAGET_OUTPUT } "
1456
+ add_custom_command (OUTPUT "${TARGET_OUTPUT } "
1447
1457
COMMAND ${NBL_NSC_COMPILE_COMMAND}
1448
- DEPENDS ${_DEPENDS_ON_ } ${INT_INPUT}
1449
- COMMENT "Creating ${TAGET_OUTPUT } "
1458
+ DEPENDS ${DEPENDS_ON } ${INT_INPUT}
1459
+ COMMENT "Creating ${TARGET_OUTPUT } "
1450
1460
VERBATIM
1451
1461
COMMAND_EXPAND_LISTS
1452
1462
)
@@ -1463,6 +1473,10 @@ glue device permutation caps config with input
1463
1473
if (NBL_EMBED_BUILTIN_RESOURCES )
1464
1474
if (IMPL_BUILTINS )
1465
1475
foreach (IT ${IMPL_BUILTINS} )
1476
+ if (NBL_LOG_VERBOSE )
1477
+ message (STATUS "[Nabla Builtin]: Registered \" ${IT} \" key for ${IMPL_TARGET} target" )
1478
+ endif ()
1479
+
1466
1480
LIST_BUILTIN_RESOURCE (NBL_RESOURCES_TO_EMBED ${IT} )
1467
1481
endforeach ()
1468
1482
endif ()
0 commit comments