ladybird/Userland/Libraries/LibGfx/CMakeLists.txt
Andrew Kaster dd6f47e696 Meta: Don't search for both Python and Python3 in CMake
CMake will cache the result here, so there's no need to look for both.
2024-02-16 23:14:49 -07:00

106 lines
3.0 KiB
CMake

set(SOURCES
AffineTransform.cpp
AntiAliasingPainter.cpp
Bitmap.cpp
BitmapMixer.cpp
CMYKBitmap.cpp
ClassicStylePainter.cpp
ClassicWindowTheme.cpp
Color.cpp
CursorParams.cpp
DeltaE.cpp
EdgeFlagPathRasterizer.cpp
Filters/ColorBlindnessFilter.cpp
Filters/FastBoxBlurFilter.cpp
Filters/LumaFilter.cpp
Filters/StackBlurFilter.cpp
FontCascadeList.cpp
Font/BitmapFont.cpp
Font/Emoji.cpp
Font/Font.cpp
Font/FontDatabase.cpp
Font/OpenType/Cmap.cpp
Font/OpenType/Font.cpp
Font/OpenType/Glyf.cpp
Font/OpenType/Hinting/Opcodes.cpp
Font/OpenType/Tables.cpp
Font/ScaledFont.cpp
Font/Typeface.cpp
Font/VectorFont.cpp
Font/WOFF/Font.cpp
Font/WOFF2/Font.cpp
GradientPainting.cpp
ICC/BinaryWriter.cpp
ICC/Enums.cpp
ICC/Profile.cpp
ICC/Tags.cpp
ICC/TagTypes.cpp
ICC/WellKnownProfiles.cpp
ImageFormats/BMPLoader.cpp
ImageFormats/BMPWriter.cpp
ImageFormats/BooleanDecoder.cpp
ImageFormats/CCITTDecoder.cpp
ImageFormats/DDSLoader.cpp
ImageFormats/GIFLoader.cpp
ImageFormats/ICOLoader.cpp
ImageFormats/ILBMLoader.cpp
ImageFormats/ImageDecoder.cpp
ImageFormats/ISOBMFF/Boxes.cpp
ImageFormats/ISOBMFF/Reader.cpp
ImageFormats/JPEGLoader.cpp
ImageFormats/JPEGXLLoader.cpp
ImageFormats/JPEGWriter.cpp
ImageFormats/PBMLoader.cpp
ImageFormats/PGMLoader.cpp
ImageFormats/PNGLoader.cpp
ImageFormats/PNGWriter.cpp
ImageFormats/PortableFormatWriter.cpp
ImageFormats/PAMLoader.cpp
ImageFormats/PPMLoader.cpp
ImageFormats/QOILoader.cpp
ImageFormats/QOIWriter.cpp
ImageFormats/TGALoader.cpp
ImageFormats/TIFFLoader.cpp
ImageFormats/TinyVGLoader.cpp
ImageFormats/WebPLoader.cpp
ImageFormats/WebPLoaderLossless.cpp
ImageFormats/WebPLoaderLossy.cpp
ImmutableBitmap.cpp
Painter.cpp
Palette.cpp
Path.cpp
Point.cpp
Rect.cpp
ShareableBitmap.cpp
Size.cpp
StylePainter.cpp
SystemTheme.cpp
TextDirection.cpp
TextLayout.cpp
Triangle.cpp
VectorGraphic.cpp
WindowTheme.cpp
)
serenity_lib(LibGfx gfx)
target_link_libraries(LibGfx PRIVATE LibCompress LibCore LibCrypto LibFileSystem LibRIFF LibTextCodec LibIPC LibUnicode)
set(generated_sources TIFFMetadata.h TIFFTagHandler.cpp)
list(TRANSFORM generated_sources PREPEND "ImageFormats/")
find_package(Python3 COMPONENTS Interpreter REQUIRED)
add_custom_command(
OUTPUT ${generated_sources}
COMMAND ${Python3_EXECUTABLE} "${CMAKE_CURRENT_SOURCE_DIR}/TIFFGenerator.py" -o "${CMAKE_CURRENT_BINARY_DIR}/ImageFormats"
DEPENDS "TIFFGenerator.py"
VERBATIM
)
target_sources(LibGfx PRIVATE ${generated_sources})
add_custom_target(generate_tiff_files_handler DEPENDS ${generated_sources})
add_dependencies(all_generated generate_tiff_files_handler)
add_dependencies(LibGfx generate_tiff_files_handler)
list(TRANSFORM generated_sources PREPEND "${CMAKE_CURRENT_BINARY_DIR}/")
install(FILES ${generated_sources} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/LibGfx/ImageFormats")