Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Developing U++ » U++ Developers corner » umk static version
Re: umk static version [message #53394 is a reply to message #53382] Wed, 01 April 2020 09:25 Go to previous messageGo to previous message
mirek is currently offline  mirek
Messages: 13980
Registered: November 2005
Ultimate Member
dolik.rce wrote on Tue, 31 March 2020 21:17
mirek wrote on Mon, 30 March 2020 23:28
dolik.rce wrote on Mon, 30 March 2020 21:52
One thing I'd definitely change about umk is the "UI". Fixed position parameters, no real help, some params prefixed with '-', some with '+', no long options... Explaining this to a common user would be nightmare Smile Isn't it time to tweak this a little as well? I'd be willing to do the work. I know it's not hard, but I guess you have more important things to do, right? Smile

I any case it would be good to show how do you want to change it before implementing...

I was thinking something like this:
Usage:
    umk [options] <package> [<output>]

Arguments:
    <package>       Package name
    <output>        Output file or directory. If omitted, <package> name will be used.

Options:

-A, --assembly <paths>
                    Comma separated paths to source directories or path to .var file.

-B, --build-method <build_method>
                    Build method name or path to .bm file. Default value is 'GCC'.

-f, --flags <FLAGS> Comma separated list of flags. Default value is 'GUI,MT'.

-a, --all           Rebuild all.

-b, --blitz         Use BLITZ.

-v, --verbose       Be verbose.

-l, --silent        Silent mode.

-u, --target        Use target directory.

-m, --map           Create a map file.

-d, --debug=[no|minimal|full]
                    Select debug mode:
                        no      = release mode, full optimizations (default)
                        minimal = no debug symbols, no optimizations
                        full    = with debug symbols, no optimizations

-s, --shared        Use shared libraries.

-S, --all-shared    Use shared libraries and build as shared libraries.

-M, --makefile      Create makefile (to file <output>).

-x, --export        Export project (to directory <output>), export only files used.

-X, --export-all    Export project (to directory <output>), export all files.

-k, --no-delete     Do not delete target directory out when exporting.

-H, --threads <N>   Build using <N> threads. Default is number of logical cores available.

-h, --help          Show this text.

Examples:

    Build release version of TheIDE:
        umk -b -A uppsrc ide ~/theide

    Use custom build method:
        umk -b -A uppsrc -B ~/.upp/theide/CLANG.bm ~/theide

    Rebuild Bombs example in debug mode:
        umk -ab --debug=full -A examples Bombs

    Build Bombs example using source paths
        umk -A upp/examples,upp/uppsrc Bombs


What do you think?

Honza


I believe that -A as option does not make much sense. What will umk do if you do not specify -A? Probably the same for -B. I mean, you do not want to write

cp --from=sourcefile.txt --to=targetfile.txt

either, do you? Smile

Also, it would really be good if the new interface was backward compatible, as not to break exiting scripts (not only mine, but I know that there are users that depend on umk). I think making '+' synonyme of '-f', perhaps even hidden, should not cause any problems.

Finally (and that is a problem with current sources too), the commandline parsing should be shared between theide and umk.

Mirek
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Support for plug-in architecture
Next Topic: How to determine if U++ is being utilized...
Goto Forum:
  


Current Time: Sat Jun 01 02:10:11 CEST 2024

Total time taken to generate the page: 0.01253 seconds