Giter VIP home page Giter VIP logo

Comments (6)

y-guyon avatar y-guyon commented on June 17, 2024

libavif/CMakeLists.txt

Lines 61 to 67 in 286f1b9

if(AVIF_CODEC_${CODEC} STREQUAL "ON")
if(AVIF_LOCAL_${CODEC})
set(DEFAULT "LOCAL")
else()
set(DEFAULT "SYSTEM")
endif()
endif()

The AVIF_LOCAL_RAV1E variable is indeed unused when AVIF_CODEC_RAV1E is OFF, so the unused AVIF_LOCAL_RAV1E warning makes sense to me.

I suggest leaving it as is but if the warning is too annoying, according to this thread one can either use --no-warn-unused-cli or remove -DAVIF_LOCAL_RAV1E=OFF.
We can also add set(ignoreMe "${AVIF_LOCAL_RAV1E}") but it does not look as good practice.

from libavif.

wantehchang avatar wantehchang commented on June 17, 2024

My question is whether we intend to be backward compatible. I don't get the cmake warning if I run that cmake command with libavif 1.0.2, for example.

There is a subtle difference between "not used" and "used but has no effects". In libavif 1.0.2, -DAVIF_LOCAL_RAV1E=OFF is used but has no effects when -DAVIF_CODEC_RAV1E=OFF is specified.

from libavif.

wantehchang avatar wantehchang commented on June 17, 2024

This is similar to passing -DAVIF_ENABLE_GTEST=OFF -DAVIF_LOCAL_GTEST=OFF to cmake on the main branch. There is no warning about AVIF_LOCAL_GTEST being not used.

from libavif.

y-guyon avatar y-guyon commented on June 17, 2024

I don't get the cmake warning if I run that cmake command with libavif 1.0.2, for example.

To me, the presence or absence of a warning has no impact on the backward compatibility, as long as it works.

This is similar to passing -DAVIF_ENABLE_GTEST=OFF -DAVIF_LOCAL_GTEST=OFF to cmake on the main branch. There is no warning about AVIF_LOCAL_GTEST being not used.

So this is rather a consistency question than a backward compatibility question?
If so, we can use set_local_or_system_option for all fields, not only libyuv and libsharpyuv.

We talked about that with @vrabaud earlier today and the conclusion was that there was little interest in adding the capacity to completely disable zlib/png dep (off/local/installed choice instead of the current local/installed). However, having -DAVIF_LIBYUV=LOCAL next to -DAVIF_LOCAL_ZLIBPNG=ON is inconsistent, so it may be a sufficient reason to use set_local_or_system_option everywhere, on top of what you mentioned.

from libavif.

vrabaud avatar vrabaud commented on June 17, 2024

What I can do is display a message that this is the old way of doing things and what the new way is. I'll check whether the variable exists, is ON or OFF and that will also remove the warning.

from libavif.

wantehchang avatar wantehchang commented on June 17, 2024

I understand Vincent wanted to support the old AVIF_LOCAL_ variables. That's why I reported this warning message. The current support for AVIF_LOCAL_RAV1E is good enough, but it doesn't fully match the original support.

Vincent: The deprecation message you suggested is a good idea.

from libavif.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.