Skip to main content

Cargo-like project management tool for working with CMake

Project description

Miao

A Python script for generating CMake files, with a user-friendly, Cargo-like command line interface. (UNDER CONSTRUCTION)


TODO:


  • ☑ miao new
    • ☑ miao new --language --standard
    • ☐ miao new --lib
  • ☑ miao build
  • ☑ miao run
  • ☑ miao clean
  • ☐ miao init
  • ☐ miao add
  • ☐ miao remove
  • ☐ miao config

Usage

# Creating a new project

$ miao new 'hello world' --language cpp --standard 20
 Created   hello_world
 Added     CMakelists.txt
 (debug)   ```set(CMAKE_CXX_STANDARD 20)
        file(GLOB_RECURSE SOURCES "src/*.cpp")```
 Created   src/ directory
 Added     main.cpp
 Created   build/ directory


# Run it!

$ cd hello_world/
$ miao run
 root:     /Users/Me/dev/python/miao/src/hello_world
 pwd:      /Users/Me/dev/python/miao/src/hello_world
 Entering  /Users/Me/dev/python/miao/src/hello_world/build
-- The C compiler identification is AppleClang 13.0.0.13000029
-- The CXX compiler identification is AppleClang 13.0.0.13000029
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done (1.0s)
-- Generating done (0.0s)
-- Build files have been written to: /Users/Me/dev/python/miao/src/hello_world/build
[ 50%] Building CXX object CMakeFiles/hello_world.dir/src/main.cpp.o
[100%] Linking CXX executable hello_world
[100%] Built target hello_world
===========================2023-06-22 07:28:14.553143==========================
Running /Users/Me/dev/python/miao/src/hello_world/build/hello_world
===============================================================================
Hello, world!


# Cleaning up

$ miao clean
Removing /Users/Me/dev/python/miao/src/hello_world/build

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

miao-make-20230622.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

miao_make-20230622-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file miao-make-20230622.tar.gz.

File metadata

  • Download URL: miao-make-20230622.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for miao-make-20230622.tar.gz
Algorithm Hash digest
SHA256 c4b4ab06cbac00581fdc702de1b16cb50725ce4d9b067a67ba4bd4ef487ecd66
MD5 555e81b20f373f2dec7d32994967b7bd
BLAKE2b-256 ca8737caa04df4e81c2adaad9862f5bfb5d4ee561698078e5ae4fdad5bcfa1ef

See more details on using hashes here.

File details

Details for the file miao_make-20230622-py3-none-any.whl.

File metadata

File hashes

Hashes for miao_make-20230622-py3-none-any.whl
Algorithm Hash digest
SHA256 e113374d1163a9b95630afb03225f145599e0ac8568dca3892f785278aceb86d
MD5 89ef6c7430fb8db2acd374dc4a9124c1
BLAKE2b-256 887e9b57e368cee74bc3f33c41841364b74e85518cadc5710a675bde3eaa2a84

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page