Jeremy Bullock 85c476
set(VERSION 1.1)
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
set(MOC_HEADERS
Toshihiro Shimizu 890ddd
    addfilmstripframespopup.h
Toshihiro Shimizu 890ddd
    adjustlevelspopup.h
Toshihiro Shimizu 890ddd
    adjustthicknesspopup.h
Toshihiro Shimizu 890ddd
    antialiaspopup.h
Jeremy Bullock 85c476
    audiorecordingpopup.h
Toshihiro Shimizu 890ddd
    batches.h
Toshihiro Shimizu 890ddd
    batchserversviewer.h
Toshihiro Shimizu 890ddd
    binarizepopup.h
Toshihiro Shimizu 890ddd
    brightnessandcontrastpopup.h
Toshihiro Shimizu 890ddd
    cachefxcommand.h
Toshihiro Shimizu 890ddd
    camerasettingspopup.h
Toshihiro Shimizu 890ddd
    canvassizepopup.h
Toshihiro Shimizu 890ddd
    castselection.h
Toshihiro Shimizu 890ddd
    castviewer.h
Toshihiro Shimizu 890ddd
    celldata.h
Toshihiro Shimizu 890ddd
    cellkeyframedata.h
Toshihiro Shimizu 890ddd
    cellkeyframeselection.h
Toshihiro Shimizu 890ddd
    cellselection.h
Toshihiro Shimizu 890ddd
    cleanuppaletteviewer.h
Toshihiro Shimizu 890ddd
    cleanuppopup.h
Toshihiro Shimizu 890ddd
    cleanuppreview.h
Toshihiro Shimizu 890ddd
    cleanupsettingsmodel.h
Toshihiro Shimizu 890ddd
    cleanupsettingspopup.h
Toshihiro Shimizu 890ddd
    cleanupswatch.h
Toshihiro Shimizu 890ddd
    colormodelviewer.h
Toshihiro Shimizu 890ddd
    columncommand.h
Toshihiro Shimizu 890ddd
    columnselection.h
Toshihiro Shimizu 890ddd
    convertpopup.h
Toshihiro Shimizu 890ddd
    curveio.h
Toshihiro Shimizu 890ddd
    drawingdata.h
Toshihiro Shimizu 890ddd
    duplicatepopup.h
Toshihiro Shimizu 890ddd
    dvdirtreeview.h
Toshihiro Shimizu 890ddd
    dvitemview.h
Toshihiro Shimizu 890ddd
    dvwidgets.h
Toshihiro Shimizu 890ddd
    exportlevelcommand.h
Toshihiro Shimizu 890ddd
    exportlevelpopup.h
Toshihiro Shimizu 890ddd
    exportscenepopup.h
Toshihiro Shimizu 890ddd
    exportpanel.h
Toshihiro Shimizu 890ddd
    filebrowser.h
Toshihiro Shimizu 890ddd
    filebrowsermodel.h
Toshihiro Shimizu 890ddd
    filebrowserpopup.h
Toshihiro Shimizu 890ddd
    filedata.h
Toshihiro Shimizu 890ddd
    fileinfopopup.h
Toshihiro Shimizu 890ddd
    fileselection.h
Toshihiro Shimizu 890ddd
    filmstrip.h
Toshihiro Shimizu 890ddd
    filmstripcommand.h
Toshihiro Shimizu 890ddd
    filmstripselection.h
Toshihiro Shimizu 890ddd
    flipbook.h
Toshihiro Shimizu 890ddd
    floatingpanelcommand.h
Toshihiro Shimizu 890ddd
    formatsettingspopups.h
Toshihiro Shimizu 890ddd
    frameheadgadget.h
Toshihiro Shimizu 890ddd
    fxparameditorpopup.h
Toshihiro Shimizu 890ddd
    histogrampopup.h
Toshihiro Shimizu 890ddd
    history.h
Toshihiro Shimizu 890ddd
    imageviewer.h
Toshihiro Shimizu 890ddd
    insertfxpopup.h
Toshihiro Shimizu 890ddd
    iocommand.h
Toshihiro Shimizu 890ddd
    keyframedata.h
Toshihiro Shimizu 890ddd
    keyframeselection.h
Toshihiro Shimizu 890ddd
    keyframemover.h
Toshihiro Shimizu 890ddd
    levelcreatepopup.h
Toshihiro Shimizu 890ddd
    levelsettingspopup.h
Toshihiro Shimizu 890ddd
    linesfadepopup.h
Toshihiro Shimizu 890ddd
    linetestcapturepane.h
Toshihiro Shimizu 890ddd
    linetestpane.h
Toshihiro Shimizu 890ddd
    linetestviewer.h
Toshihiro Shimizu 890ddd
    loadfolderpopup.h
Toshihiro Shimizu 890ddd
    magpiefileimportpopup.h
Toshihiro Shimizu 890ddd
    mainwindow.h
Toshihiro Shimizu 890ddd
    matchline.h
Toshihiro Shimizu 890ddd
    menubar.h
Campbell Barton f08982
    menubarpopup.h
Toshihiro Shimizu 890ddd
    menubarcommandids.h
Toshihiro Shimizu 890ddd
    meshifypopup.h
Toshihiro Shimizu 890ddd
    messagepanel.h
Toshihiro Shimizu 890ddd
    moviegenerator.h
Toshihiro Shimizu 890ddd
    onionskinmaskgui.h
Toshihiro Shimizu 890ddd
    outputsettingspopup.h
Toshihiro Shimizu 890ddd
    overwritepopup.h
Toshihiro Shimizu 890ddd
    pane.h
Toshihiro Shimizu 890ddd
    pltgizmopopup.h
Toshihiro Shimizu 890ddd
    preferencespopup.h
Toshihiro Shimizu 890ddd
    previewer.h
Toshihiro Shimizu 890ddd
    previewfxmanager.h
Toshihiro Shimizu 890ddd
    projectpopup.h
Toshihiro Shimizu 890ddd
    psdsettingspopup.h
Toshihiro Shimizu 890ddd
    renumberpopup.h
Toshihiro Shimizu 890ddd
    reslist.h
Toshihiro Shimizu 890ddd
    ruler.h
Toshihiro Shimizu 890ddd
    savepresetpopup.h
Toshihiro Shimizu 890ddd
    scanlist.h
Toshihiro Shimizu 890ddd
    scanpopup.h
Toshihiro Shimizu 890ddd
    scenesettingspopup.h
Toshihiro Shimizu 890ddd
    sceneviewer.h
Toshihiro Shimizu 890ddd
    sceneviewercontextmenu.h
Campbell Barton ccd505
    sceneviewerevents.h
Toshihiro Shimizu 890ddd
    scriptconsolepanel.h
Toshihiro Shimizu 890ddd
    selectionutils.h
Toshihiro Shimizu 890ddd
    shifttracetool.h
Toshihiro Shimizu 890ddd
    shortcutpopup.h
Jeremy Bullock bfe861
    startuppopup.h
Toshihiro Shimizu 890ddd
    subcameramanager.h
Toshihiro Shimizu 890ddd
    subscenecommand.h
Toshihiro Shimizu 890ddd
    svncleanupdialog.h
Toshihiro Shimizu 890ddd
    svncommitdialog.h
Toshihiro Shimizu 890ddd
    svndeletedialog.h
Toshihiro Shimizu 890ddd
    svnlockdialog.h
Toshihiro Shimizu 890ddd
    svnlockframerangedialog.h
Toshihiro Shimizu 890ddd
    svnrevertdialog.h
Toshihiro Shimizu 890ddd
    svnupdateandlockdialog.h
Toshihiro Shimizu 890ddd
    svnupdatedialog.h
Toshihiro Shimizu 890ddd
    svnpurgedialog.h
Toshihiro Shimizu 890ddd
    tapp.h
Toshihiro Shimizu 890ddd
    tasksviewer.h
Toshihiro Shimizu 890ddd
    testpanel.h
Toshihiro Shimizu 890ddd
    tfarmstuff.h
Toshihiro Shimizu 890ddd
    timestretchpopup.h
Toshihiro Shimizu 890ddd
    toolbar.h
Toshihiro Shimizu 890ddd
    tpanels.h
Toshihiro Shimizu 890ddd
    trackerpopup.h
Toshihiro Shimizu 890ddd
    vectorizerpopup.h
Toshihiro Shimizu 890ddd
    vectorizerswatch.h
Toshihiro Shimizu 890ddd
    versioncontrol.h
Toshihiro Shimizu 890ddd
    versioncontrolgui.h
Toshihiro Shimizu 890ddd
    versioncontroltimeline.h
Toshihiro Shimizu 890ddd
    versioncontrolxmlreader.h
Toshihiro Shimizu 890ddd
    versioncontrolwidget.h
Toshihiro Shimizu 890ddd
    viewerdraw.h
Toshihiro Shimizu 890ddd
    viewerpane.h
Toshihiro Shimizu 890ddd
    viewerpopup.h
Toshihiro Shimizu 890ddd
    xshcellmover.h
Toshihiro Shimizu 890ddd
    xshcellviewer.h
Toshihiro Shimizu 890ddd
    xshcolumnviewer.h
Toshihiro Shimizu 890ddd
    xsheetdragtool.h
Toshihiro Shimizu 890ddd
    xsheetviewer.h
Toshihiro Shimizu 890ddd
    xshnoteviewer.h
Toshihiro Shimizu 890ddd
    xshrowviewer.h
Campbell Barton 3dcf6b
    comboviewerpane.h
Campbell Barton 3dcf6b
    historypane.h
Campbell Barton 3dcf6b
    cleanupsettingspane.h
Campbell Barton 326eaa
    penciltestpopup.h
Campbell Barton fb6d38
    locatorpopup.h
Campbell Barton fb6d38
    styleshortcutswitchablepanel.h
Toshihiro Shimizu 890ddd
# Tracker file
Toshihiro Shimizu 890ddd
    dummyprocessor.h
Toshihiro Shimizu 890ddd
    metnum.h
Toshihiro Shimizu 890ddd
    ObjectTracker.h
Toshihiro Shimizu 890ddd
    predict3d.h
Campbell Barton 9ece9c
    processor.h
Campbell Barton 9ece9c
)
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
set(HEADERS ${MOC_HEADERS})
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
set(SOURCES
Toshihiro Shimizu 890ddd
    floatingpanelcommand.cpp
Toshihiro Shimizu 890ddd
    canvassizepopup.cpp
Toshihiro Shimizu 890ddd
    history.cpp
Toshihiro Shimizu 890ddd
    loadfoldercommand.cpp
Toshihiro Shimizu 890ddd
    loadfolderpopup.cpp
Toshihiro Shimizu 890ddd
    main.cpp
Toshihiro Shimizu 890ddd
    mainwindow.cpp
Toshihiro Shimizu 890ddd
    matchline.cpp
Toshihiro Shimizu 890ddd
    menubar.cpp
Campbell Barton f08982
    menubarpopup.cpp
Toshihiro Shimizu 890ddd
    mergecolumns.cpp
Toshihiro Shimizu 890ddd
    moviegenerator.cpp
Toshihiro Shimizu 890ddd
    pane.cpp
Toshihiro Shimizu 890ddd
    previewer.cpp
Toshihiro Shimizu 890ddd
    previewfxmanager.cpp
Toshihiro Shimizu 890ddd
    ruler.cpp
Toshihiro Shimizu 890ddd
    scanlist.cpp
Toshihiro Shimizu 890ddd
    tapp.cpp
Toshihiro Shimizu 890ddd
    toolbar.cpp
Toshihiro Shimizu 890ddd
    batchserversviewer.cpp
Toshihiro Shimizu 890ddd
    castviewer.cpp
Toshihiro Shimizu 890ddd
    exportlevelpopup.cpp
Toshihiro Shimizu 890ddd
    exportscenepopup.cpp
Toshihiro Shimizu 890ddd
    colormodelviewer.cpp
Toshihiro Shimizu 890ddd
    exportpanel.cpp
Toshihiro Shimizu 890ddd
    filebrowser.cpp
Toshihiro Shimizu 890ddd
    filebrowserversioncontrol.cpp
Toshihiro Shimizu 890ddd
    filmstrip.cpp
Toshihiro Shimizu 890ddd
    matchlinecommand.cpp
Toshihiro Shimizu 890ddd
    messagepanel.cpp
Toshihiro Shimizu 890ddd
    tasksviewer.cpp
Toshihiro Shimizu 890ddd
    testpanel.cpp
Toshihiro Shimizu 890ddd
    tpanels.cpp
Toshihiro Shimizu 890ddd
    xshcellmover.cpp
Toshihiro Shimizu 890ddd
    xshcellviewer.cpp
Toshihiro Shimizu 890ddd
    xshcolumnviewer.cpp
Toshihiro Shimizu 890ddd
    xsheetdragtool.cpp
Toshihiro Shimizu 890ddd
    xsheetviewer.cpp
Toshihiro Shimizu 890ddd
    xshnoteviewer.cpp
Toshihiro Shimizu 890ddd
    xshrowviewer.cpp
Toshihiro Shimizu 890ddd
    sceneviewer.cpp
Toshihiro Shimizu 890ddd
    sceneviewerevents.cpp
Toshihiro Shimizu 890ddd
    viewerdraw.cpp
Toshihiro Shimizu 890ddd
    viewerpane.cpp
Toshihiro Shimizu 890ddd
    castselection.cpp
Toshihiro Shimizu 890ddd
    cellselection.cpp
Toshihiro Shimizu 890ddd
    columnselection.cpp
Toshihiro Shimizu 890ddd
    fileselection.cpp
Toshihiro Shimizu 890ddd
    filmstripselection.cpp
Toshihiro Shimizu 890ddd
    keyframeselection.cpp
Toshihiro Shimizu 890ddd
    addfilmstripframespopup.cpp
Toshihiro Shimizu 890ddd
    camerasettingspopup.cpp
Toshihiro Shimizu 890ddd
    convertpopup.cpp
Toshihiro Shimizu 890ddd
    duplicatepopup.cpp
Toshihiro Shimizu 890ddd
    dvdirtreeview.cpp
Toshihiro Shimizu 890ddd
    filebrowserpopup.cpp
Toshihiro Shimizu 890ddd
    formatsettingspopups.cpp
Toshihiro Shimizu 890ddd
    fxparameditorpopup.cpp
Toshihiro Shimizu 890ddd
    histogrampopup.cpp
Toshihiro Shimizu 890ddd
    insertfxpopup.cpp
Toshihiro Shimizu 890ddd
    levelcreatepopup.cpp
Toshihiro Shimizu 890ddd
    levelsettingspopup.cpp
Toshihiro Shimizu 890ddd
    linetestcapturepane.cpp
Toshihiro Shimizu 890ddd
    linetestpane.cpp
Toshihiro Shimizu 890ddd
    linetestviewer.cpp
Toshihiro Shimizu 890ddd
    magpiefileimportpopup.cpp
Toshihiro Shimizu 890ddd
    outputsettingspopup.cpp
Toshihiro Shimizu 890ddd
    overwritepopup.cpp
Toshihiro Shimizu 890ddd
    pltgizmopopup.cpp
Toshihiro Shimizu 890ddd
    preferencespopup.cpp
Toshihiro Shimizu 890ddd
    projectpopup.cpp
Toshihiro Shimizu 890ddd
    psdsettingspopup.cpp
Toshihiro Shimizu 890ddd
    renumberpopup.cpp
Toshihiro Shimizu 890ddd
    runscriptcommand.cpp
Toshihiro Shimizu 890ddd
    savepresetpopup.cpp
Toshihiro Shimizu 890ddd
    scanpopup.cpp
Toshihiro Shimizu 890ddd
    sceneviewercontextmenu.cpp
Toshihiro Shimizu 890ddd
    scenesettingspopup.cpp
Toshihiro Shimizu 890ddd
    scriptconsolepanel.cpp
Toshihiro Shimizu 890ddd
    shifttracetool.cpp
Toshihiro Shimizu 890ddd
    shortcutpopup.cpp
Jeremy Bullock bfe861
    startuppopup.cpp
Toshihiro Shimizu 890ddd
    subcameramanager.cpp
Toshihiro Shimizu 890ddd
    timestretchpopup.cpp
Toshihiro Shimizu 890ddd
    trackerpopup.cpp
Toshihiro Shimizu 890ddd
    vectorizerpopup.cpp
Toshihiro Shimizu 890ddd
    vectorizerswatch.cpp
Toshihiro Shimizu 890ddd
    versioncontrol.cpp
Toshihiro Shimizu 890ddd
    versioncontroltimeline.cpp
Toshihiro Shimizu 890ddd
    versioncontrolxmlreader.cpp
Toshihiro Shimizu 890ddd
    versioncontrolwidget.cpp
Toshihiro Shimizu 890ddd
    viewerpopup.cpp
Toshihiro Shimizu 890ddd
    cellselectioncommand.cpp
Toshihiro Shimizu 890ddd
    columncommand.cpp
Toshihiro Shimizu 890ddd
    filmstripcommand.cpp
Toshihiro Shimizu 890ddd
    iocommand.cpp
Toshihiro Shimizu 890ddd
    levelcommand.cpp
Toshihiro Shimizu 890ddd
    print.cpp
Toshihiro Shimizu 890ddd
    subscenecommand.cpp
Toshihiro Shimizu 890ddd
    svncleanupdialog.cpp
Toshihiro Shimizu 890ddd
    svncommitdialog.cpp
Toshihiro Shimizu 890ddd
    svndeletedialog.cpp
Toshihiro Shimizu 890ddd
    svnlockdialog.cpp
Toshihiro Shimizu 890ddd
    svnlockframerangedialog.cpp
Toshihiro Shimizu 890ddd
    svnrevertdialog.cpp
Toshihiro Shimizu 890ddd
    svnupdateandlockdialog.cpp
Toshihiro Shimizu 890ddd
    svnupdatedialog.cpp
Toshihiro Shimizu 890ddd
    svnpurgedialog.cpp
Toshihiro Shimizu 890ddd
    vcrcommand.cpp
Toshihiro Shimizu 890ddd
    xsheetcmd.cpp
Toshihiro Shimizu 890ddd
    celldata.cpp
Toshihiro Shimizu 890ddd
    drawingdata.cpp
Toshihiro Shimizu 890ddd
    filedata.cpp
Toshihiro Shimizu 890ddd
    imageviewer.cpp
Toshihiro Shimizu 890ddd
    keyframedata.cpp
Toshihiro Shimizu 890ddd
    dvitemview.cpp
Toshihiro Shimizu 890ddd
    dvwidgets.cpp
Toshihiro Shimizu 890ddd
    flipbook.cpp
Toshihiro Shimizu 890ddd
    frameheadgadget.cpp
Toshihiro Shimizu 890ddd
    onionskinmaskgui.cpp
Toshihiro Shimizu 890ddd
    batches.cpp
Toshihiro Shimizu 890ddd
    tfarmstuff.cpp
Toshihiro Shimizu 890ddd
    cleanuppaletteviewer.cpp
Toshihiro Shimizu 890ddd
    cleanuppopup.cpp
Toshihiro Shimizu 890ddd
    cleanuppreview.cpp
Toshihiro Shimizu 890ddd
    cleanupsettingsmodel.cpp
Toshihiro Shimizu 890ddd
    cleanupsettingspopup.cpp
Toshihiro Shimizu 890ddd
    cleanupswatch.cpp
Toshihiro Shimizu 890ddd
    cellkeyframedata.cpp
Toshihiro Shimizu 890ddd
    cellkeyframeselection.cpp
Toshihiro Shimizu 890ddd
    keyframemover.cpp
Toshihiro Shimizu 890ddd
    cachefxcommand.cpp
Toshihiro Shimizu 890ddd
    exportlevelcommand.cpp
Toshihiro Shimizu 890ddd
    adjustlevelspopup.cpp
Toshihiro Shimizu 890ddd
    adjustthicknesspopup.cpp
Toshihiro Shimizu 890ddd
    binarizepopup.cpp
Toshihiro Shimizu 890ddd
    brightnessandcontrastpopup.cpp
Toshihiro Shimizu 890ddd
    linesfadepopup.cpp
Toshihiro Shimizu 890ddd
    rendercommand.cpp
Toshihiro Shimizu 890ddd
    curveio.cpp
Toshihiro Shimizu 890ddd
    meshifypopup.cpp
Toshihiro Shimizu 890ddd
    selectionutils.cpp
Toshihiro Shimizu 890ddd
    antialiaspopup.cpp
Toshihiro Shimizu 890ddd
    mergecmapped.cpp
Campbell Barton 3dcf6b
    comboviewerpane.cpp
Campbell Barton 3dcf6b
    historypane.cpp
Campbell Barton 3dcf6b
    cleanupsettingspane.cpp
Campbell Barton 326eaa
    penciltestpopup.cpp
Jeremy Bullock 85c476
    audiorecordingpopup.cpp
Jeremy Bullock 85c476
    locatorpopup.cpp
Jeremy Bullock 85c476
    styleshortcutswitchablepanel.cpp
Toshihiro Shimizu 890ddd
# Tracker file
Toshihiro Shimizu 890ddd
    dummyprocessor.cpp
Toshihiro Shimizu 890ddd
    metnum.cpp
Toshihiro Shimizu 890ddd
    ObjectTracker.cpp
Campbell Barton 9ece9c
    predict3d.cpp
Campbell Barton 9ece9c
)
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
add_translation(toonz ${HEADERS} ${SOURCES})
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
set(OBJCSOURCES filebrowsermodel.cpp)
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
# Resource file(s)
Toshihiro Shimizu 890ddd
set(RESOURCES toonz.qrc)
Toshihiro Shimizu 890ddd
429ee8
if(BUILD_ENV_MSVC)
Toshihiro Shimizu 890ddd
    set(RC_FILE toonz.rc)
Campbell Barton f08982
endif()
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
qt5_add_resources(SOURCES ${RESOURCES})
Toshihiro Shimizu 890ddd
429ee8
if(BUILD_ENV_APPLE)
Toshihiro Shimizu 890ddd
    #set_source_files_properties(${OBJCSOURCES} PROPERTIES LANGUAGE OBJCXX)
Toshihiro Shimizu 890ddd
    set_source_files_properties(${OBJCSOURCES} PROPERTIES COMPILE_FLAGS "-x objective-c++")
Toshihiro Shimizu 890ddd
endif()
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
qt5_wrap_cpp(SOURCES ${MOC_HEADERS})
Toshihiro Shimizu 890ddd
429ee8
if(BUILD_ENV_MSVC)
Toshihiro Shimizu 890ddd
    add_executable(OpenToonz_${VERSION} WIN32 ${HEADERS} ${SOURCES} ${OBJCSOURCES} ${RESOURCES} ${RC_FILE})
Toshihiro Shimizu 890ddd
else()
brly 8064cb
    set(MACOSX_BUNDLE_ICON_FILE "OpenToonz.icns")
brly 8064cb
    set_source_files_properties(OpenToonz.icns PROPERTIES MACOSX_PACKAGE_LOCATION "Resources")
Campbell Barton 268e1b
    add_executable(OpenToonz_${VERSION} MACOSX_BUNDLE OpenToonz.icns ${HEADERS} ${SOURCES} ${OBJCSOURCES} ${RESOURCES})
Campbell Barton f2d492
    #add_definitions(
Campbell Barton f2d492
    #    -DTNZBASE_EXPORTS
Campbell Barton f2d492
    #    -DTPARAM_EXPORTS
Campbell Barton f2d492
    #    -DTXSHEET_EXPORTS
Campbell Barton f2d492
    #    -DTFX_EXPORTS
Campbell Barton f2d492
    #    -DTAPPTOOLS_EXPORTS
Campbell Barton f2d492
    #    -DTTEST_EXPORTS
Campbell Barton f2d492
    #)
Toshihiro Shimizu 890ddd
endif()
Toshihiro Shimizu 890ddd
429ee8
if(BUILD_TARGET_WIN)
Campbell Barton f2d492
    add_definitions(
Campbell Barton f2d492
        -DUNICODE
Campbell Barton f2d492
        -D_UNICODE
Campbell Barton f2d492
    )
Toshihiro Shimizu 890ddd
endif()
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
message("subdir: toonz")
Toshihiro Shimizu 890ddd
message("Bin: " ${CMAKE_CURRENT_BINARY_DIR})
Toshihiro Shimizu 890ddd
#message("Lib: " ${LIBRARY_OUTPUT_PATH})
Toshihiro Shimizu 890ddd
#message("Exe: " ${EXECUTABLE_OUTPUT_PATH})
Toshihiro Shimizu 890ddd
#message("Sources:" ${SOURCES})
Toshihiro Shimizu 890ddd
Campbell Barton a9c3da
include_directories(
Campbell Barton a9c3da
    ../../sources/toonzfarm/include
Campbell Barton a9c3da
    ../../sources/toonzqt
Campbell Barton a9c3da
)
Campbell Barton a9c3da
429ee8
if(BUILD_ENV_APPLE)
tomosu 9cb984
    include_directories(../../sources/mousedragfilter)
tomosu 9cb984
endif()
tomosu 9cb984
tomosu 9cb984
tomosu 9cb984
429ee8
if(BUILD_TARGET_WIN)
Toshihiro Shimizu 890ddd
    if(PLATFORM EQUAL 32)
Campbell Barton a9c3da
        include_directories(
Campbell Barton a9c3da
            SYSTEM
Campbell Barton a9c3da
            ${SDKROOT}/quicktime/QT73SDK/CIncludes
Campbell Barton a9c3da
        )
Toshihiro Shimizu 890ddd
    endif()
Toshihiro Shimizu 890ddd
endif()
Toshihiro Shimizu 890ddd
429ee8
if(BUILD_ENV_MSVC)
Toshihiro Shimizu 890ddd
    target_link_libraries(OpenToonz_${VERSION}
Campbell Barton 9ece9c
        Qt5::WinMain Qt5::Core Qt5::Gui Qt5::Network Qt5::OpenGL Qt5::Svg Qt5::Xml
Campbell Barton 9ece9c
        Qt5::Script Qt5::Widgets Qt5::PrintSupport Qt5::Multimedia
shun_iwasawa 96a3e3
        ${GL_LIB} ${GLUT_LIB} strmiids
Campbell Barton 9ece9c
        tnzcore tnzbase toonzlib colorfx tnzext image sound toonzqt tnztools tnzstdfx tfarm
Campbell Barton 9ece9c
    )
429ee8
elseif(BUILD_ENV_APPLE)
Toshihiro Shimizu 890ddd
    find_library(COCOA_LIB Cocoa)
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
    _find_toonz_library(EXTRA_LIBS "tnzcore;tnzbase;toonzlib;colorfx;tnzext;image;sound;toonzqt;tnztools")
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
    # 変なところにライブラリ生成するカスども
Campbell Barton 84ab18
    set(EXTRA_LIBS ${EXTRA_LIBS} "$<target_file:tnzstdfx>" "$<target_file:tfarm>")</target_file:tfarm></target_file:tnzstdfx>
Toshihiro Shimizu 890ddd
tomosu 9cb984
Campbell Barton 9ece9c
    target_link_libraries(OpenToonz_${VERSION}
Campbell Barton 9ece9c
        Qt5::Core Qt5::Gui Qt5::Network Qt5::OpenGL Qt5::Svg Qt5::Xml
Campbell Barton 9ece9c
        Qt5::Script Qt5::Widgets Qt5::PrintSupport Qt5::Multimedia
Campbell Barton 9ece9c
        ${GL_LIB} ${GLUT_LIB}
Campbell Barton 9ece9c
        ${COCOA_LIB} ${EXTRA_LIBS} mousedragfilter
Campbell Barton 9ece9c
    )
tomosu 9cb984
429ee8
elseif(BUILD_ENV_UNIXLIKE)
Campbell Barton 22fd3b
    _find_toonz_library(EXTRA_LIBS "tnzcore;tnzbase;toonzlib;colorfx;tnzext;image;sound;toonzqt;tnztools")
Campbell Barton 22fd3b
Campbell Barton 22fd3b
    # 変なところにライブラリ生成するカスども
Campbell Barton 22fd3b
    set(EXTRA_LIBS ${EXTRA_LIBS} "$<target_file:tnzstdfx>" "$<target_file:tfarm>")</target_file:tfarm></target_file:tnzstdfx>
Campbell Barton 22fd3b
Campbell Barton 22fd3b
    set(EXTRA_LIBS ${EXTRA_LIBS} ${Boost_LIBRARIES} ${OPENBLAS_LIB})
Toshihiro Shimizu 890ddd
429ee8
    if(BUILD_TARGET_WIN)
429ee8
        set(EXTRA_LIBS ${EXTRA_LIBS} Qt5::WinMain -lstrmiids)
429ee8
    endif()
429ee8
Campbell Barton 9ece9c
    target_link_libraries(
Campbell Barton 9ece9c
        OpenToonz_${VERSION} Qt5::Core Qt5::Gui Qt5::Network Qt5::OpenGL Qt5::Svg Qt5::Xml
Campbell Barton 9ece9c
        Qt5::Script Qt5::Widgets Qt5::PrintSupport Qt5::Multimedia
Campbell Barton 9ece9c
        ${GL_LIB} ${GLUT_LIB} ${GLU_LIB}
Campbell Barton 9ece9c
        ${EXTRA_LIBS}
Campbell Barton 9ece9c
    )
Toshihiro Shimizu 890ddd
endif()
Toshihiro Shimizu 890ddd
429ee8
if(BUILD_ENV_APPLE)
Campbell Barton 3dcf6b
    # CMAKE_RUNTIME_OUTPUT_DIRECTORY should be equivalent to usage on windows despite empty
Campbell Barton 3dcf6b
    # OSX だと CMAKE_RUNTIME_OUTPUT_DIRECTORY が空だが Windows 版と同じ使い方ができるようにしておく
Toshihiro Shimizu 890ddd
    get_target_property(bin OpenToonz_${VERSION} LOCATION)
Toshihiro Shimizu 890ddd
    get_filename_component(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${bin} DIRECTORY)
Toshihiro Shimizu 890ddd
endif()
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
# copy utilty executables onto the directory after build
Keisuke Ogaki 1a50d4
if(LZODRIVER_FOUND)
roentgen 19af1b
    add_custom_command(TARGET OpenToonz_${VERSION} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy $<target_file:lzocompress> ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} DEPENDS lzocompress)</target_file:lzocompress>
roentgen 19af1b
    add_custom_command(TARGET OpenToonz_${VERSION} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy $<target_file:lzodecompress> ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} DEPENDS lzodecompress)</target_file:lzodecompress>
roentgen 19af1b
endif()
Toshihiro Shimizu 890ddd
429ee8
if(BUILD_ENV_APPLE)
Toshihiro Shimizu 890ddd
    get_target_property(loc OpenToonz_${VERSION} MACOSX_BUNDLE_NAME)
Toshihiro Shimizu 890ddd
    message(" ==> App Bundle: " ${loc})
Toshihiro Shimizu 890ddd
    message(" ==> Mach-o: " ${bin})
Campbell Barton 6f1225
    foreach(lib ${EXTRA_LIBS})
Toshihiro Shimizu 890ddd
        message(" copy:" ${lib} "==>" ${CMAKE_CURRENT_BINARY_DIR}/OpenToonz_${VERSION}.app/Contents/MacOS/)
Toshihiro Shimizu 890ddd
        add_custom_command(TARGET OpenToonz_${VERSION} POST_BUILD COMMAND cp ${lib} ${CMAKE_CURRENT_BINARY_DIR}/OpenToonz_${VERSION}.app/Contents/MacOS/)
Campbell Barton 6f1225
    endforeach()
Toshihiro Shimizu 890ddd
Campbell Barton 3dcf6b
    add_custom_command(TARGET OpenToonz_${VERSION}
Campbell Barton 3dcf6b
        POST_BUILD COMMAND
Campbell Barton 9ece9c
        ${CMAKE_INSTALL_NAME_TOOL} -add_rpath @executable_path/. ${bin}
Campbell Barton 9ece9c
    )
Campbell Barton 3dcf6b
    add_custom_command(TARGET OpenToonz_${VERSION}
Campbell Barton 3dcf6b
        POST_BUILD COMMAND
Campbell Barton 9ece9c
        ${CMAKE_INSTALL_NAME_TOOL} -add_rpath ${CMAKE_INSTALL_RPATH} ${bin}
Campbell Barton 9ece9c
    )
Campbell Barton 3dcf6b
    add_custom_command(TARGET OpenToonz_${VERSION} POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/OpenToonz_${VERSION}.app/Contents/Resources)
Toshihiro Shimizu 890ddd
Campbell Barton 3dcf6b
    add_custom_command(TARGET OpenToonz_${VERSION} POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/OpenToonz_${VERSION}.app/Contents/Resources)
Campbell Barton 3dcf6b
    add_custom_command(TARGET OpenToonz_${VERSION} POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/qss)
Keisuke Ogaki 3c21d0
    add_custom_command(TARGET OpenToonz_${VERSION} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/../install/SystemVar.ini ${CMAKE_CURRENT_BINARY_DIR}/OpenToonz_${VERSION}.app/Contents/Resources)
429ee8
elseif(BUILD_ENV_UNIXLIKE AND BUILD_TARGET_WIN)
429ee8
    # Setup files on Windows platform while cross compilation.
429ee8
    install(
429ee8
        TARGETS
429ee8
            OpenToonz_${VERSION}
429ee8
        DESTINATION bin
429ee8
    )
429ee8
429ee8
    install(
429ee8
        PROGRAMS
429ee8
            "$<target_file:tcleanup>"</target_file:tcleanup>
429ee8
            "$<target_file:tcomposer>"</target_file:tcomposer>
429ee8
            "$<target_file:tconverter>"</target_file:tconverter>
429ee8
            "$<target_file:tfarmcontroller>"</target_file:tfarmcontroller>
429ee8
            "$<target_file:tfarmserver>"</target_file:tfarmserver>
429ee8
        DESTINATION bin
429ee8
    )
429ee8
429ee8
    if(LZODRIVER_FOUND)
429ee8
        install(
429ee8
            PROGRAMS
429ee8
                "$<target_file:lzocompress>"</target_file:lzocompress>
429ee8
                "$<target_file:lzodecompress>"</target_file:lzodecompress>
429ee8
            DESTINATION bin
429ee8
        )
429ee8
    endif()
429ee8
429ee8
    install(
429ee8
        FILES
429ee8
            "$<target_file:tnzcore>"</target_file:tnzcore>
429ee8
            "$<target_file:tnzbase>"</target_file:tnzbase>
429ee8
            "$<target_file:toonzlib>"</target_file:toonzlib>
429ee8
            "$<target_file:colorfx>"</target_file:colorfx>
429ee8
            "$<target_file:tnzext>"</target_file:tnzext>
429ee8
            "$<target_file:image>"</target_file:image>
429ee8
            "$<target_file:sound>"</target_file:sound>
429ee8
            "$<target_file:toonzqt>"</target_file:toonzqt>
429ee8
            "$<target_file:tnztools>"</target_file:tnztools>
429ee8
            "$<target_file:tnzstdfx>"</target_file:tnzstdfx>
429ee8
            "$<target_file:tfarm>"</target_file:tfarm>
429ee8
        DESTINATION bin
429ee8
    )
429ee8
    
429ee8
    install(
429ee8
        DIRECTORY
429ee8
            ${CMAKE_SOURCE_DIR}/../../stuff
429ee8
        DESTINATION share/opentoonz
429ee8
    )
429ee8
elseif(BUILD_ENV_UNIXLIKE AND NOT BUILD_TARGET_WIN)
Campbell Barton 3158be
    # Setup files on Linux/Unix platform.
Campbell Barton 3158be
    # not essential since the binary can run in-place,
Campbell Barton 3158be
    # but useful for package managers.
Campbell Barton 3158be
    #
Campbell Barton 3158be
    # Note that its assumed the destination can be either
Campbell Barton 3158be
    # - /opt/opentoonz
Campbell Barton 3158be
    # - /usr
Campbell Barton 3158be
    install(
Campbell Barton 3158be
        TARGETS
Campbell Barton 3158be
            OpenToonz_${VERSION}
Campbell Barton 3158be
        DESTINATION bin
Campbell Barton 3158be
    )
Campbell Barton 3158be
Campbell Barton 3158be
    # Shell script that copies files to the home directory as needed
Campbell Barton 3158be
    # and sets the library preload path.
Campbell Barton 3158be
    file(WRITE ${CMAKE_BINARY_DIR}/bin/opentoonz
Campbell Barton 3158be
"#!/bin/sh
Campbell Barton 3158be
OPENTOONZ_BASE=\$(dirname \"\$0\")/..
Campbell Barton 3158be
Campbell Barton 3158be
if [ ! -d \$HOME/.config/OpenToonz ]; then
Campbell Barton 3158be
    mkdir -p \$HOME/.config/OpenToonz
Campbell Barton 3158be
fi
Campbell Barton 3158be
Campbell Barton 3158be
if [ ! -d \$HOME/.config/OpenToonz/stuff ]; then
Campbell Barton 3158be
    cp -r \$OPENTOONZ_BASE/share/opentoonz/stuff \$HOME/.config/OpenToonz
Campbell Barton 3158be
fi
Campbell Barton 3158be
keijukainen 7c61d8
if [ ! -d \$HOME/.config/OpenToonz/stuff/projects/library ]; then
keijukainen 7c61d8
    mkdir -p \$HOME/.config/OpenToonz/stuff/projects/library
keijukainen 7c61d8
fi
keijukainen 7c61d8
keijukainen 7c61d8
if [ ! -d \$HOME/.config/OpenToonz/stuff/projects/fxs ]; then
keijukainen 7c61d8
    mkdir -p \$HOME/.config/OpenToonz/stuff/projects/fxs
keijukainen 7c61d8
fi
keijukainen 7c61d8
Campbell Barton 3158be
if [ ! -e \$HOME/.config/OpenToonz/SystemVar.ini ]; then
Campbell Barton 3158be
    cat << EOF > $HOME/.config/OpenToonz/SystemVar.ini
Campbell Barton 3158be
[General]
Campbell Barton a9cb66
OPENTOONZROOT=\"\$HOME/.config/OpenToonz/stuff\"
Campbell Barton a9cb66
OpenToonzPROFILES=\"\$HOME/.config/OpenToonz/stuff/profiles\"
Campbell Barton a9cb66
TOONZCACHEROOT=\"\$HOME/.config/OpenToonz/stuff/cache\"
Campbell Barton a9cb66
TOONZCONFIG=\"\$HOME/.config/OpenToonz/stuff/config\"
5c92d8
TOONZFXPRESETS=\"\$HOME/.config/OpenToonz/stuff/fxs\"
5c92d8
TOONZLIBRARY=\"\$HOME/.config/OpenToonz/stuff/library\"
Campbell Barton a9cb66
TOONZPROFILES=\"\$HOME/.config/OpenToonz/stuff/profiles\"
Campbell Barton a9cb66
TOONZPROJECTS=\"$HOME/.config/OpenToonz/stuff/projects\"
Campbell Barton a9cb66
TOONZROOT=\"\$HOME/.config/OpenToonz/stuff\"
Campbell Barton a9cb66
TOONZSTUDIOPALETTE=\"\$HOME/.config/OpenToonz/stuff/projects/studiopalette\"
Campbell Barton 3158be
EOF
Campbell Barton 3158be
fi
Campbell Barton 3158be
Campbell Barton 3158be
export LD_LIBRARY_PATH=\${OPENTOONZ_BASE}/lib/opentoonz:\${LD_LIBRARY_PATH}
Campbell Barton 3158be
Campbell Barton 3158be
exec \$OPENTOONZ_BASE/bin/OpenToonz_${VERSION} \"\$@\"
Campbell Barton 3158be
")
Campbell Barton 3158be
    # only needed for executing without installing
Campbell Barton 3158be
    execute_process(COMMAND chmod +x ${CMAKE_BINARY_DIR}/bin/opentoonz)
Campbell Barton 3158be
Campbell Barton 3158be
    install(
Campbell Barton 3158be
        PROGRAMS
Campbell Barton 3158be
            ${CMAKE_BINARY_DIR}/bin/opentoonz
Campbell Barton 18f19a
            "$<target_file:tcleanup>"</target_file:tcleanup>
Campbell Barton 18f19a
            "$<target_file:tcomposer>"</target_file:tcomposer>
Campbell Barton 18f19a
            "$<target_file:tconverter>"</target_file:tconverter>
Campbell Barton 18f19a
            "$<target_file:tfarmcontroller>"</target_file:tfarmcontroller>
Campbell Barton 18f19a
            "$<target_file:tfarmserver>"</target_file:tfarmserver>
Campbell Barton 3158be
        DESTINATION bin
Campbell Barton 3158be
    )
Campbell Barton 3158be
Campbell Barton c8223f
    if(LZODRIVER_FOUND)
Campbell Barton c8223f
        install(
Campbell Barton c8223f
            PROGRAMS
Campbell Barton c8223f
                "$<target_file:lzocompress>"</target_file:lzocompress>
Campbell Barton c8223f
                "$<target_file:lzodecompress>"</target_file:lzodecompress>
Campbell Barton c8223f
            DESTINATION bin
Campbell Barton c8223f
        )
Campbell Barton c8223f
    endif()
Campbell Barton c8223f
Campbell Barton 3158be
    install(
Campbell Barton 3158be
        FILES
Campbell Barton 3158be
            "$<target_file:tnzcore>"</target_file:tnzcore>
Campbell Barton 3158be
            "$<target_file:tnzbase>"</target_file:tnzbase>
Campbell Barton 3158be
            "$<target_file:toonzlib>"</target_file:toonzlib>
Campbell Barton 3158be
            "$<target_file:colorfx>"</target_file:colorfx>
Campbell Barton 3158be
            "$<target_file:tnzext>"</target_file:tnzext>
Campbell Barton 3158be
            "$<target_file:image>"</target_file:image>
Campbell Barton 3158be
            "$<target_file:sound>"</target_file:sound>
Campbell Barton 3158be
            "$<target_file:toonzqt>"</target_file:toonzqt>
Campbell Barton 3158be
            "$<target_file:tnztools>"</target_file:tnztools>
Campbell Barton 3158be
            "$<target_file:tnzstdfx>"</target_file:tnzstdfx>
Campbell Barton 3158be
            "$<target_file:tfarm>"</target_file:tfarm>
Campbell Barton 3158be
        DESTINATION lib/opentoonz
Campbell Barton 3158be
    )
Campbell Barton 3158be
Campbell Barton 3158be
    install(
Campbell Barton 3158be
        DIRECTORY
Campbell Barton 3158be
            ${CMAKE_SOURCE_DIR}/../../stuff
Campbell Barton 3158be
        DESTINATION share/opentoonz
Campbell Barton 3158be
    )
Campbell Barton 3158be
Campbell Barton f08982
endif()