Skip to content

Proposal: Retire make; Update build instructions for Cmake  #133

Closed

Description

@maxsu

Now we have a shiny new cmake frontend, can we:

  • eliminate the makefile?
  • document the Cmake build instructions?

As far as I know, users might use the make file if they don't have cmake. There might also be some features in the makefile that still need to be transferred to cmakelist.txt.

But as far as I know, cmake will need to generate the makefile for each user's environment. So it may no longer make sense to track the makefile at all. Tracking the cmakelist.txt might be enough.

This of course puts the burden on the user to install cmake and know how to call it. That's a little more complicated that make. It would help to add the new steps to readme.md, and remove the old make-based build steps.

I can implement both, but ideas and suggestions are needed - what are the plans for supporting (or deprecating) the makefile / supporting make-based build steps? Lemme know we can get rid of em' all, and I can get to work! 🔥🔥🔥 Otherwise, lemme know the preferred approach!

Activity

  1. lemmi commented on Mar 14, 2023

    @lemmi

    At the moment, all I have to do is clone the repo and type make. I'd love to see how you can beat that with cmake :)

  2. maxsu commented on Mar 16, 2023

    @maxsu
    Author

    @lemmi I'm not saying cmake is easier to use. Cmake is definitely more annoying to use

    But Cmake has snuck into the project thanks to PR #75. Whisper.cpp uses Cmake to support platforms like windows or android, and llamma.cpp could be moving in that direction.

    Now we have both a MakeFile and Cmakelists.txt, and the second one has more features.

    3 options:

    1. Use cmake - get rid of the makefile
    2. Use cmake - but auto-generate a makefile as a commit hook
    3. Use make - add windows/android builds to MakeFile; get rid of cmakelists.txt

    Option 1 is easiest. Option 2 continues to support make users. Option 3 is best for make users, but could be a PITA to support.

  3. added a commit that references this issue on Aug 2, 2023
  4. 83 remaining items

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions