prboom/data/CMakeLists.txt
2024-09-08 18:03:02 +12:00

370 lines
8.4 KiB
CMake

# PrBoom-Plus WAD creation tool
if(NOT CMAKE_CROSSCOMPILING)
add_executable(rdatawad
rd_main.c
rd_util.c
rd_util.h
rd_output.c
rd_output.h
rd_sound.c
rd_sound.h
rd_palette.c
rd_palette.h
rd_graphic.c
rd_graphic.h
)
target_include_directories(rdatawad PRIVATE ${CMAKE_BINARY_DIR})
set(CROSS_EXPORTS ${CROSS_EXPORTS} rdatawad PARENT_SCOPE)
endif()
# PrBoom-Plus internal WAD
set(PALETTE
palette.rgb
)
set(LUMPS
lumps/switches.lmp
lumps/animated.lmp
lumps/crbrick.lmp
lumps/crtan.lmp
lumps/crgray.lmp
lumps/crgreen.lmp
lumps/crbrown.lmp
lumps/crgold.lmp
lumps/crred.lmp
lumps/crblue.lmp
lumps/crblue2.lmp
lumps/crorange.lmp
lumps/cryellow.lmp
lumps/crblack.lmp
lumps/crpurple.lmp
lumps/crwhite.lmp
)
set(COLORMAPS
lumps/watermap.lmp
)
set(TABLES
lumps/sinetabl.lmp
lumps/tangtabl.lmp
lumps/tantoang.lmp
lumps/gammatbl.lmp
lumps/chexdeh.lmp
lumps/bfgbex.lmp
lumps/nervebex.lmp
lumps/glshadow.lmp
lumps/glfp.lmp
lumps/glvp.lmp
lumps/-prbhud-.lmp
lumps/m_ammo.lmp
lumps/m_armour.lmp
lumps/m_arrow.lmp
lumps/m_health.lmp
lumps/m_key.lmp
lumps/m_normal.lmp
lumps/m_shadow.lmp
lumps/m_power.lmp
lumps/m_weap.lmp
lumps/m_mark.lmp
)
set(SOUNDS
sounds/dsdgsit.wav
sounds/dsdgatk.wav
sounds/dsdgact.wav
sounds/dsdgdth.wav
sounds/dsdgpain.wav
)
set(GRAPHICS
graphics/dig0.ppm
graphics/dig1.ppm
graphics/dig2.ppm
graphics/dig3.ppm
graphics/dig4.ppm
graphics/dig5.ppm
graphics/dig6.ppm
graphics/dig7.ppm
graphics/dig8.ppm
graphics/dig9.ppm
graphics/diga.ppm
graphics/digb.ppm
graphics/digc.ppm
graphics/digd.ppm
graphics/dige.ppm
graphics/digf.ppm
graphics/digg.ppm
graphics/digh.ppm
graphics/digi.ppm
graphics/digj.ppm
graphics/digk.ppm
graphics/digl.ppm
graphics/digm.ppm
graphics/dign.ppm
graphics/digo.ppm
graphics/digp.ppm
graphics/digq.ppm
graphics/digr.ppm
graphics/digs.ppm
graphics/digt.ppm
graphics/digu.ppm
graphics/digv.ppm
graphics/digw.ppm
graphics/digx.ppm
graphics/digy.ppm
graphics/digz.ppm
graphics/dig45.ppm
graphics/dig46.ppm
graphics/dig47.ppm
graphics/dig58.ppm
graphics/dig91.ppm
graphics/dig93.ppm
graphics/stbr123.ppm
graphics/stbr124.ppm
graphics/stbr125.ppm
graphics/stbr126.ppm
graphics/stbr127.ppm
graphics/boxul.ppm
graphics/boxuc.ppm
graphics/boxur.ppm
graphics/boxcl.ppm
graphics/boxcc.ppm
graphics/boxcr.ppm
graphics/boxll.ppm
graphics/boxlc.ppm
graphics/boxlr.ppm
graphics/stkeys6.ppm
graphics/stkeys7.ppm
graphics/stkeys8.ppm
graphics/stcfn096.ppm
graphics/m_butt1.ppm
graphics/m_butt2.ppm
graphics/m_colors.ppm
graphics/m_palno.ppm
graphics/m_palsel.ppm
graphics/m_vbox.ppm
graphics/cross1.ppm
graphics/cross2.ppm
graphics/cross3.ppm
)
set(FLATS
flats/-n0_tex-.ppm
)
set(SPRITES
sprites/tnt1a0.ppm
)
set(SPRITEP "0,0,sprites/tnt1a0.ppm")
set(SPRITES
${SPRITES}
sprites/dogsa1.ppm
sprites/dogsa2.ppm
sprites/dogsa3.ppm
sprites/dogsa4.ppm
sprites/dogsa5.ppm
sprites/dogsa6.ppm
sprites/dogsa7.ppm
sprites/dogsa8.ppm
sprites/dogsb1.ppm
sprites/dogsb2.ppm
sprites/dogsb3.ppm
sprites/dogsb4.ppm
sprites/dogsb5.ppm
sprites/dogsb6.ppm
sprites/dogsb7.ppm
sprites/dogsb8.ppm
sprites/dogsc1.ppm
sprites/dogsc2.ppm
sprites/dogsc3.ppm
sprites/dogsc4.ppm
sprites/dogsc5.ppm
sprites/dogsc6.ppm
sprites/dogsc7.ppm
sprites/dogsc8.ppm
sprites/dogsd1.ppm
sprites/dogsd2.ppm
sprites/dogsd3.ppm
sprites/dogsd4.ppm
sprites/dogsd5.ppm
sprites/dogsd6.ppm
sprites/dogsd7.ppm
sprites/dogsd8.ppm
sprites/dogse1.ppm
sprites/dogse2.ppm
sprites/dogse3.ppm
sprites/dogse4.ppm
sprites/dogse5.ppm
sprites/dogse6.ppm
sprites/dogse7.ppm
sprites/dogse8.ppm
sprites/dogsf1.ppm
sprites/dogsf2.ppm
sprites/dogsf3.ppm
sprites/dogsf4.ppm
sprites/dogsf5.ppm
sprites/dogsf6.ppm
sprites/dogsf7.ppm
sprites/dogsf8.ppm
sprites/dogsg1.ppm
sprites/dogsg2.ppm
sprites/dogsg3.ppm
sprites/dogsg4.ppm
sprites/dogsg5.ppm
sprites/dogsg6.ppm
sprites/dogsg7.ppm
sprites/dogsg8.ppm
sprites/dogsh1.ppm
sprites/dogsh2.ppm
sprites/dogsh3.ppm
sprites/dogsh4.ppm
sprites/dogsh5.ppm
sprites/dogsh6.ppm
sprites/dogsh7.ppm
sprites/dogsh8.ppm
sprites/dogsi0.ppm
sprites/dogsj0.ppm
sprites/dogsk0.ppm
sprites/dogsl0.ppm
sprites/dogsm0.ppm
sprites/dogsn0.ppm
)
set(SPRITEP
${SPRITEP}
"33,66,sprites/dogsa1.ppm"
"33,66,sprites/dogsa2.ppm"
"33,66,sprites/dogsa3.ppm"
"33,66,sprites/dogsa4.ppm"
"33,66,sprites/dogsa5.ppm"
"33,66,sprites/dogsa6.ppm"
"33,66,sprites/dogsa7.ppm"
"33,66,sprites/dogsa8.ppm"
"33,66,sprites/dogsb1.ppm"
"33,66,sprites/dogsb2.ppm"
"33,66,sprites/dogsb3.ppm"
"33,66,sprites/dogsb4.ppm"
"33,66,sprites/dogsb5.ppm"
"33,66,sprites/dogsb6.ppm"
"33,66,sprites/dogsb7.ppm"
"33,66,sprites/dogsb8.ppm"
"33,66,sprites/dogsc1.ppm"
"33,66,sprites/dogsc2.ppm"
"33,66,sprites/dogsc3.ppm"
"33,66,sprites/dogsc4.ppm"
"33,66,sprites/dogsc5.ppm"
"33,66,sprites/dogsc6.ppm"
"33,66,sprites/dogsc7.ppm"
"33,66,sprites/dogsc8.ppm"
"33,66,sprites/dogsd1.ppm"
"33,66,sprites/dogsd2.ppm"
"33,66,sprites/dogsd3.ppm"
"33,66,sprites/dogsd4.ppm"
"33,66,sprites/dogsd5.ppm"
"33,66,sprites/dogsd6.ppm"
"33,66,sprites/dogsd7.ppm"
"33,66,sprites/dogsd8.ppm"
"33,66,sprites/dogse1.ppm"
"33,66,sprites/dogse2.ppm"
"33,66,sprites/dogse3.ppm"
"33,66,sprites/dogse4.ppm"
"33,66,sprites/dogse5.ppm"
"33,66,sprites/dogse6.ppm"
"33,66,sprites/dogse7.ppm"
"33,66,sprites/dogse8.ppm"
"33,66,sprites/dogsf1.ppm"
"33,66,sprites/dogsf2.ppm"
"33,66,sprites/dogsf3.ppm"
"33,66,sprites/dogsf4.ppm"
"33,66,sprites/dogsf5.ppm"
"33,66,sprites/dogsf6.ppm"
"33,66,sprites/dogsf7.ppm"
"33,66,sprites/dogsf8.ppm"
"33,66,sprites/dogsg1.ppm"
"33,66,sprites/dogsg2.ppm"
"33,66,sprites/dogsg3.ppm"
"33,66,sprites/dogsg4.ppm"
"33,66,sprites/dogsg5.ppm"
"33,66,sprites/dogsg6.ppm"
"33,66,sprites/dogsg7.ppm"
"33,66,sprites/dogsg8.ppm"
"33,66,sprites/dogsh1.ppm"
"33,66,sprites/dogsh2.ppm"
"33,66,sprites/dogsh3.ppm"
"33,66,sprites/dogsh4.ppm"
"33,66,sprites/dogsh5.ppm"
"33,66,sprites/dogsh6.ppm"
"33,66,sprites/dogsh7.ppm"
"33,66,sprites/dogsh8.ppm"
"33,67,sprites/dogsi0.ppm"
"33,67,sprites/dogsj0.ppm"
"33,67,sprites/dogsk0.ppm"
"33,67,sprites/dogsl0.ppm"
"33,68,sprites/dogsm0.ppm"
"33,69,sprites/dogsn0.ppm"
)
set(SPRITES
${SPRITES}
sprites/pls1a0.ppm
sprites/pls1b0.ppm
sprites/pls1c0.ppm
sprites/pls1d0.ppm
sprites/pls1e0.ppm
sprites/pls1f0.ppm
sprites/pls1g0.ppm
sprites/pls2a0.ppm
sprites/pls2b0.ppm
sprites/pls2c0.ppm
sprites/pls2d0.ppm
sprites/pls2e0.ppm
)
set(SPRITEP
${SPRITEP}
"9,11,sprites/pls1a0.ppm"
"8,11,sprites/pls1b0.ppm"
"9,11,sprites/pls1c0.ppm"
"8,11,sprites/pls1d0.ppm"
"16,27,sprites/pls1e0.ppm"
"16,27,sprites/pls1f0.ppm"
"18,27,sprites/pls1g0.ppm"
"9,11,sprites/pls2a0.ppm"
"8,13,sprites/pls2b0.ppm"
"11,18,sprites/pls2c0.ppm"
"16,27,sprites/pls2d0.ppm"
"18,27,sprites/pls2e0.ppm"
)
set(WAD_SRC
${PALETTE}
${LUMPS}
${COLORMAPS}
${TABLES}
${SOUNDS}
${GRAPHICS}
${FLATS}
${SPRITES}
)
set(WAD_CMDLINE
-palette ${PALETTE}
-lumps ${LUMPS}
-marker C_START -lumps ${COLORMAPS} -marker C_END
-marker B_START -lumps ${TABLES} -marker B_END
-sounds ${SOUNDS}
-graphics ${GRAPHICS}
-marker FF_START -flats ${FLATS} -marker FF_END
-marker SS_START -sprites ${SPRITEP} -marker SS_END
)
add_custom_command(
OUTPUT "${WAD_DATA_PATH}"
COMMAND rdatawad -I "${CMAKE_CURRENT_SOURCE_DIR}" ${WAD_CMDLINE} -o "${WAD_DATA_PATH}"
DEPENDS rdatawad ${WAD_SRC}
)
add_custom_target(prboomwad DEPENDS ${WAD_DATA_PATH})
install(FILES ${WAD_DATA_PATH} DESTINATION ${PRBOOMDATADIR} COMPONENT "PrBoom-Plus internal WAD")