diff options
-rw-r--r-- | docs/index.html | 811 | ||||
-rw-r--r-- | fpm/src/fpm.f90 | 26 | ||||
-rw-r--r-- | fpm/src/fpm/cmd/new.f90 | 9 | ||||
-rw-r--r-- | fpm/src/fpm_command_line.f90 | 2 |
4 files changed, 13 insertions, 835 deletions
diff --git a/docs/index.html b/docs/index.html deleted file mode 100644 index edd199c..0000000 --- a/docs/index.html +++ /dev/null @@ -1,811 +0,0 @@ -<html> -<head> -<title> </title> -<style> -px {font-family: "Lucida Console", Monaco } -p { font-size:100%; line-height:1.1em; } -body {xfont-style: sans-serif} -body { -color:#333; font-family:Verdana, Arial, Helvetica, sans-serif; font-size:1em; line-height:1.3em; } -a:visited { color:#666; } -h1,h2,h3,h4,h5,h6 { color:#333; font-family:georgia, verdana, sans-serif; } -h1 { font-size:150%; page-break-before:auto;background-color: #aaaaff} -h2 { font-size:143%;color:teal; } -h3 { font-size:134%;color:blue; } -h4 { font-size:120%;color:gray; } -img { max-width: 55em} -p{ padding: 0;margin:0; } -p{ padding-right:1.4em; } -p{ padding-bottom:1em; } -p{ padding-top:1em; } -p{ whitespace: pre-wrap; } -h5,h6 { font-size:100% } -a.nav,a:link.nav, a:visited.nav { background-color:#FFF; color:#000; } -XXtable { border:double #000; border-collapse:collapse; } -XXtable { border-collapse:collapse; } -XXtd { border:thin solid #888; } -XXtd { border:none; } -li { margin-bottom:0.5em; } -blockquote { display:block; font-size:100%; line-height:1.1em; margin:0 0 1.5em; padding:0 2.5em; } -pre { background-color:#DDD; font-size:100%; overflow:auto; padding:1em; } -a,li span { color:#000; } -a:hover, a.nav:hover, a:hover math { background-color:#000; color:#FFF; } -#Container { margin:0 10px; text-align:center; background-color: #BBB} -#Content { border-top:none; margin:auto; padding:0.3em; text-align:left; width:100%; max-width:55em; background:#FFF} -span.webName { font-size:.5em; } -textarea#content { font-size: 1em; line-height: 1.125; } -h1#pageName { line-height:1em; margin:0.2em 0 0.2em 0; padding:0; } -.property { color:#666; font-size:100%; } -a.existingWikiWord[title]{ //border: 1px dashed #BBB; } -.byline { color:#666; font-size:1.0em; font-style:italic; margin-bottom:1em; padding-top:1px; } -</style> -</head> -<BODY bgcolor=#F0F0F0 text=#000000 link=#0000ff vlink=#C000C0 alink=#ff0000><A NAME=top></A> -<h5><a href="download.html">[UP]</a></h5> -<div id="Container"> -<div id="Content"> -<CENTER> -<H1><HR><I>Manual Reference Pages - </I><NOBR>untitled ()</NOBR><HR></H1> -</CENTER> -<A name=37> - - <H3>NAME</H3> - -</A> -<BLOCKQUOTE> -<B>fpm</B>(1) - A Fortran package manager and build system -<P> -</BLOCKQUOTE> -<A name=43> - - <H3>SYNOPSIS</H3> - -</A> -<BLOCKQUOTE> -<B>fpm</B> <I>SUBCOMMAND</I> [SUBCOMMAND_OPTIONS] -<P> -<B>fpm</B> <B>--help</B>|<B>--version</B>|<B>--list</B> -</BLOCKQUOTE> -<A name=39> - - <H3>DESCRIPTION</H3> - -</A> -<BLOCKQUOTE> -<B>fpm</B>(1) is a package manager that helps you create Fortran projects -from source. -<P> -Most significantly <B>fpm</B>(1) lets you draw upon other <B>fpm</B>(1) packages -in distributed <B>git</B>(1) repositories as if the packages were a basic -part of your default programming environment, as well as letting -you share your projects with others in a similar manner. -<P> -See the <B>fpm</B>(1) repository at https://fortran-lang.org/packages -for a listing of registered projects. -<P> -All output goes into the directory "build/" which can generally be -removed and rebuilt if required. Note that if external packages are -being used you need network connectivity to rebuild from scratch. -</BLOCKQUOTE> -<A name=3> - - <H3>SUBCOMMANDS</H3> - -</A> -<BLOCKQUOTE> -Valid <B>fpm</B>(1) subcommands are: -<P> -<PRE> - build [--release] [--list] - Compile the packages into the "build/" directory. - new NAME [--lib|--src] [--app] [--test] [--backfill] - Create a new Fortran package directory - with sample files - run [NAME(s)] [--release] [--list] [-- ARGS] - Run the local package binaries. defaults to all - binaries for that release. - test [NAME(s)] [--release] [--list] [-- ARGS] - Run the tests - help [NAME(s)] Alternate method for displaying subcommand help - list [--list] Display brief descriptions of all subcommands. -<P> -</PRE> -</BLOCKQUOTE> -<A name=4> - - <H3>SUBCOMMAND OPTIONS</H3> - -</A> -<BLOCKQUOTE> -<TABLE cellpadding=3> -<TR valign=top><TD colspan=2> -<B></B><B>--release</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -Builds or runs in release mode (versus debug mode). <B>fpm</B>(1) -Defaults to using common compiler debug flags and building -in "build/*_debug/". When this flag is present build -output goes into "build/*_release/" and common compiler -optimization flags are used. -</TD></TR> -<TR valign=top><TD width=6% nowrap> -<B></B><B>--list</B> </TD><TD valign=bottom> -List candidates instead of building or running them. On -the <B>fpm</B>(1) command this shows a brief list of subcommands. -</TD></TR> -<TR valign=top><TD colspan=2> -<B>-- ARGS</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -Arguments to pass to executables. -</TD></TR> -<TR valign=top><TD width=6% nowrap> -<B></B><B>--help</B> </TD><TD valign=bottom> -Show help text and exit. Valid for all subcommands. -</TD></TR> -<TR valign=top><TD colspan=2> -<B></B><B>--version</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -Show version information and exit. Valid for all -subcommands. -</TD></TR> -<TR></TR></TABLE></BLOCKQUOTE> -<A name=41> - - <H3>EXAMPLES</H3> - -</A> -<BLOCKQUOTE> -sample commands: -<P> -<PRE> - fpm new mypackage --app --test - fpm build - fpm test - fpm run - fpm new --help - fpm run myprogram --release -- -x 10 -y 20 --title "my title" -<P> -</PRE> -</BLOCKQUOTE> -<A name=42> - - <H3>SEE ALSO</H3> - -</A> -<BLOCKQUOTE> -The <B>fpm</B>(1) home page at https://github.com/fortran-lang/<B>fpm</B> -</BLOCKQUOTE> -<A name=37> - - <H3>NAME</H3> - -</A> -<BLOCKQUOTE> -<B>new</B>(1) - the <B>fpm</B>(1) subcommand to initialize a new project -</BLOCKQUOTE> -<A name=38> - - <H3>SYNOPSIS</H3> - -</A> -<BLOCKQUOTE> -<B>fpm</B> <I>new</I> <I><A HREF=#37>NAME</A></I> [-<B>-lib</B>|<B>--src</B>] [-<B>-app</B>] [-<B>-test</B>] [-<B>-backfill</B>] -<P> -<B>fpm</B> <I>new</I> <B>--help</B>|<B>--version</B> -</BLOCKQUOTE> -<A name=39> - - <H3>DESCRIPTION</H3> - -</A> -<BLOCKQUOTE> -"<B>fpm</B> <I>new</I>" creates and populates a <I>new</I> programming project directory. -It -<BLOCKQUOTE> -<TABLE cellpadding=3><!-- tsb: "<B>fpm</B> <I>new</I>" creates and populates a <I>new</I> programming project directory. - --> -<TR></TR><TR></TR> -<TR valign=top><TD width=3%> -o -</TD><TD> -creates a directory with the specified name -</TD></TR> -<TR valign=top><TD width=3%> -o -</TD><TD> -runs the command "git init" in that directory -</TD></TR> -<TR valign=top><TD width=3%> -o -</TD><TD> -populates the directory with the default project directories -</TD></TR> -<TR valign=top><TD width=3%> -o -</TD><TD> -adds sample Fortran source files -</TD></TR> -<TR valign=top><TD width=3%> -o -</TD><TD> -adds a ".gitignore" file for ignoring the build/ directory -(where <B>fpm</B>-generated output will be placed) -</TD></TR> -<TR></TR></TABLE></BLOCKQUOTE> -<P> -The basic default file structure is -<P> -<PRE> - NAME/ - fpm.toml - .gitignore - src/ - NAME.f90 - app/ - main.f90 - test/ - main.f90 -<P> -</PRE> -Remember to update the information in the sample "fpm.toml" -file with your name and e-mail address. -</BLOCKQUOTE> -<A name=40> - - <H3>OPTIONS</H3> - -</A> -<BLOCKQUOTE> -<TABLE cellpadding=3> -<TR valign=top><TD width=6% nowrap> -<B></B><I>NAME</I> </TD><TD valign=bottom> -the name of the project directory to create. The name -must be a valid Fortran name composed of 1 to 63 -ASCII alphanumeric characters and underscores, -starting with a letter. -</TD></TR> -<TR><TD colspan=2> -The default is to create all of the src/, app/, and test/ -directories. If any of the following options are specified -then only selected subdirectories are generated: -</TD></TR> -<TR valign=top><TD colspan=2> -<B></B><B>--lib</B>,<B>--src</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -create directory src/ and a placeholder module -named "NAME.f90" for use with subcommand "build". -</TD></TR> -<TR valign=top><TD width=6% nowrap> -<B></B><B>--app</B> </TD><TD valign=bottom> -create directory app/ and a placeholder main -program for use with subcommand "run". -</TD></TR> -<TR valign=top><TD width=6% nowrap> -<B></B><B>--test</B> </TD><TD valign=bottom> -create directory test/ and a placeholder program -for use with the subcommand "test". Note that sans -"<B>--lib</B>" it really does not have anything to test. -</TD></TR> -<TR><TD colspan=2> -So the default is equivalent to "<B>fpm</B> <I><A HREF=#37>NAME</A></I> <B>--lib</B> <B>--app</B> <B>--test</B>". -</TD></TR> -<TR valign=top><TD colspan=2> -<B></B><B>--backfill</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -By default the directory must not exist. If this -option is present the directory may pre-exist and -only subdirectories and files that do not -already exist will be created. For example, if you -previously entered "<B>fpm</B> <I>new</I> myname <B>--lib</B>" entering -"<B>fpm</B> <I>new</I> myname <B>--backfill</B>" will create the missing -app/ and test/ directories and programs. -</TD></TR> -<TR valign=top><TD width=6% nowrap> -<B></B><B>--help</B> </TD><TD valign=bottom> -print this help and exit -</TD></TR> -<TR valign=top><TD colspan=2> -<B></B><B>--version</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -print program version information and exit -</TD></TR> -<TR></TR></TABLE></BLOCKQUOTE> -<A name=41> - - <H3>EXAMPLES</H3> - -</A> -<BLOCKQUOTE> -Sample use -<P> -<PRE> - fpm new myproject # create new project directory and seed it - cd myproject # Enter the new directory - # and run commands such as - fpm build - fpm run # run example application program - fpm test # run example test program -<P> -</PRE> -</BLOCKQUOTE> -<A name=42> - - <H3>SEE ALSO</H3> - -</A> -<BLOCKQUOTE> -The <B>fpm</B>(1) home page at https://github.com/fortran-lang/<B>fpm</B> -<P> -Registered packages are at https://fortran-lang.org/packages -</BLOCKQUOTE> -<A name=37> - - <H3>NAME</H3> - -</A> -<BLOCKQUOTE> -<B>build</B>(1) - the <B>fpm</B>(1) subcommand to build a project -<P> -</BLOCKQUOTE> -<A name=38> - - <H3>SYNOPSIS</H3> - -</A> -<BLOCKQUOTE> -<B>fpm</B> <I>build</I> [-<B>-release</B>]|[-list] -<P> -<B>fpm</B> <I>build</I> <B>--help</B>|<B>--version</B> -</BLOCKQUOTE> -<A name=39> - - <H3>DESCRIPTION</H3> - -</A> -<BLOCKQUOTE> -The "<B>fpm</B> <I>build</I>" command -<BLOCKQUOTE> -<TABLE cellpadding=3><!-- tsb: The "<B>fpm</B> <I>build</I>" command - --> -<TR></TR><TR></TR> -<TR valign=top><TD width=3%> -o -</TD><TD> -Fetches any dependencies -</TD></TR> -<TR valign=top><TD width=3%> -o -</TD><TD> -Scans your sources -</TD></TR> -<TR valign=top><TD width=3%> -o -</TD><TD> -Builds them in the proper order -</TD></TR> -<TR></TR></TABLE></BLOCKQUOTE> -<P> -The Fortran source files are assumed by default to be in -<BLOCKQUOTE> -<TABLE cellpadding=3><!-- tsb: The Fortran source files are assumed by default to be in - --> -<TR></TR><TR></TR> -<TR valign=top><TD width=3%> -o -</TD><TD> -src/ for modules and procedure source -</TD></TR> -<TR valign=top><TD width=3%> -o -</TD><TD> -app/ main <B>program</B>(s) for applications -</TD></TR> -<TR valign=top><TD width=3%> -o -</TD><TD> -test/ main <B>program</B>(s) and support files for project tests -Changed or <I>new</I> files found are rebuilt. The results are placed in -the <I>build</I>/ directory. -</TD></TR> -<TR></TR></TABLE></BLOCKQUOTE> -<P> -Non-default pathnames and remote dependencies are used if -specified in the "fpm.toml" file. -</BLOCKQUOTE> -<A name=40> - - <H3>OPTIONS</H3> - -</A> -<BLOCKQUOTE> -<TABLE cellpadding=3> -<TR valign=top><TD colspan=2> -<B></B><B>--release</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -<I>build</I> in <I>build</I>/*_release instead of <I>build</I>/*_debug with -high optimization instead of full debug options. -</TD></TR> -<TR valign=top><TD width=6% nowrap> -<B></B><B>--list</B> </TD><TD valign=bottom> -list candidates instead of building or running them -</TD></TR> -<TR valign=top><TD width=6% nowrap> -<B></B><B>--help</B> </TD><TD valign=bottom> -print this help and exit -</TD></TR> -<TR valign=top><TD colspan=2> -<B></B><B>--version</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -print program version information and exit -</TD></TR> -<TR></TR></TABLE></BLOCKQUOTE> -<A name=41> - - <H3>EXAMPLES</H3> - -</A> -<BLOCKQUOTE> -Sample commands: -<P> -<PRE> - fpm build # build with debug options - fpm build --release # build with high optimization -<P> -</PRE> -</BLOCKQUOTE> -<A name=42> - - <H3>SEE ALSO</H3> - -</A> -<BLOCKQUOTE> -The <B>fpm</B>(1) home page at https://github.com/fortran-lang/<B>fpm</B> -</BLOCKQUOTE> -<A name=37> - - <H3>NAME</H3> - -</A> -<BLOCKQUOTE> -<B>run</B>(1) - the <B>fpm</B>(1) subcommand to run project applications -<P> -</BLOCKQUOTE> -<A name=38> - - <H3>SYNOPSIS</H3> - -</A> -<BLOCKQUOTE> -<B>fpm</B> run <B>[NAME</B>(<I>s</I>)] [-<B>-release</B>] [-- ARGS] -<P> -<B>fpm</B> run <B>--help</B>|<B>--version</B> -</BLOCKQUOTE> -<A name=39> - - <H3>DESCRIPTION</H3> - -</A> -<BLOCKQUOTE> -Run applications you have built in your <B>fpm</B>(1) project. -</BLOCKQUOTE> -<A name=40> - - <H3>OPTIONS</H3> - -</A> -<BLOCKQUOTE> -<TABLE cellpadding=3> -<TR valign=top><TD width=6% nowrap> -<B></B><I>NAME</I>(<I>s</I>) </TD><TD valign=bottom> -optional list of specific names to execute. -The default is to run all the applications in app/ -or the programs listed in the "fpm.toml" file. -</TD></TR> -<TR valign=top><TD colspan=2> -<B></B><B>--release</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -selects the optimized <I>build</I> instead of the debug -<I>build</I>. -</TD></TR> -<TR valign=top><TD width=6% nowrap> -<B></B><B>--list</B> </TD><TD valign=bottom> -list candidates instead of building or running them -</TD></TR> -<TR valign=top><TD colspan=2> -<B>-- ARGS</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -optional arguments to pass to the <B>program</B>(<I>s</I>). -The same arguments are passed to all names -specified. -</TD></TR> -<TR></TR></TABLE></BLOCKQUOTE> -<A name=41> - - <H3>EXAMPLES</H3> - -</A> -<BLOCKQUOTE> -run <B>fpm</B>(1) project applications -<P> -<PRE> - # run default programs in /app or as specified in "fpm.toml" - fpm run -<P> - # run a specific program and pass arguments to the command - fpm run mytest -- -x 10 -y 20 --title "my title line" -<P> - # run production version of two applications - fpm run prg1 prg2 --release -<P> -</PRE> -</BLOCKQUOTE> -<A name=42> - - <H3>SEE ALSO</H3> - -</A> -<BLOCKQUOTE> -The <B>fpm</B>(1) home page at https://github.com/fortran-lang/<B>fpm</B> -</BLOCKQUOTE> -<A name=37> - - <H3>NAME</H3> - -</A> -<BLOCKQUOTE> -<B>test</B>(1) - the <B>fpm</B>(1) subcommand to run project tests -<P> -</BLOCKQUOTE> -<A name=38> - - <H3>SYNOPSIS</H3> - -</A> -<BLOCKQUOTE> -<B>fpm</B> test <B>[NAME</B>(<I>s</I>)] [-<B>-release</B>] [-<B>-list</B>] [-- ARGS] -<P> -<B>fpm</B> test <B>--help</B>|<B>--version</B> -</BLOCKQUOTE> -<A name=39> - - <H3>DESCRIPTION</H3> - -</A> -<BLOCKQUOTE> -Run applications you have built to test your project. -</BLOCKQUOTE> -<A name=40> - - <H3>OPTIONS</H3> - -</A> -<BLOCKQUOTE> -<TABLE cellpadding=3> -<TR valign=top><TD width=6% nowrap> -<B></B><I>NAME</I>(<I>s</I>) </TD><TD valign=bottom> -optional list of specific test names to execute. -The default is to run all the tests in test/ -or the tests listed in the "fpm.toml" file. -</TD></TR> -<TR valign=top><TD colspan=2> -<B></B><B>--release</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -selects the optimized <I>build</I> instead of the debug -<I>build</I>. -</TD></TR> -<TR valign=top><TD width=6% nowrap> -<B></B><B>--list</B> </TD><TD valign=bottom> -list candidates instead of building or running them -</TD></TR> -<TR valign=top><TD colspan=2> -<B>-- ARGS</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -optional arguments to pass to the test <B>program</B>(<I>s</I>). -The same arguments are passed to all test names -specified. -</TD></TR> -<TR></TR></TABLE></BLOCKQUOTE> -<A name=41> - - <H3>EXAMPLES</H3> - -</A> -<BLOCKQUOTE> -run tests -<P> -<PRE> - # run default tests in /test or as specified in "fpm.toml" - fpm test -<P> - # run a specific test and pass arguments to the command - fpm test mytest -- -x 10 -y 20 --title "my title line" -<P> - fpm test tst1 tst2 --release # production version of two tests -<P> -</PRE> -</BLOCKQUOTE> -<A name=42> - - <H3>SEE ALSO</H3> - -</A> -<BLOCKQUOTE> -The <B>fpm</B>(1) home page at https://github.com/fortran-lang/<B>fpm</B> -</BLOCKQUOTE> -<A name=37> - - <H3>NAME</H3> - -</A> -<BLOCKQUOTE> -<B>help</B>(1) - the <B>fpm</B>(1) subcommand to display help -<P> -</BLOCKQUOTE> -<A name=38> - - <H3>SYNOPSIS</H3> - -</A> -<BLOCKQUOTE> -<I>fpm</I> <I>help</I> [fpm] [new] [build] [run] [test] [help] [version] [manual] -<P> -<B>fpm</B> <I>help</I> [fortran|fortran_manual][FORTRAN_INTRINSIC_NAME] -</BLOCKQUOTE> -<A name=39> - - <H3>DESCRIPTION</H3> - -</A> -<BLOCKQUOTE> -The "<B>fpm</B> <I>help</I>" command is an alternative to the --<I>help</I> parameter -on the <B>fpm</B>(1) command and its subcommands. -</BLOCKQUOTE> -<A name=40> - - <H3>OPTIONS</H3> - -</A> -<BLOCKQUOTE> -<TABLE cellpadding=3> -<TR valign=top><TD width=6% nowrap> -<B></B><I>NAME</I>(<I>s</I>) </TD><TD valign=bottom> -A list of topic names to display. All the subcommands -have their own page (<I>new</I>, <I>build</I>, <I>run</I>, <I>test</I>, ...). -<P> -The special name "<I>manual</I>" displays all the <B>fpm</B>(1) -built-in documentation. -<P> -The default is to display <I>help</I> for the <B>fpm</B>(1) command -itself. -</TD></TR> -<TR valign=top><TD colspan=2> -<B></B><B>INTRINSIC</B>(<I>s</I>) </TD></TR><TR valign=top><TD width=6%> </TD><TD> -In addition, Fortran intrinsics can be described. -The special name "fortran" prints a list of available -topics. "fortran_manual" displays all the built-in -fortran documentation. Entries should be in -uppercase to avoid conflicts with <B>fpm</B>(1) topics; -but can be in lowercase if there is no conflict. -</TD></TR> -<TR></TR></TABLE></BLOCKQUOTE> -<A name=41> - - <H3>EXAMPLES</H3> - -</A> -<BLOCKQUOTE> -Sample usage: -<P> -<PRE> - fpm help # general fpm(1) command help - fpm help version # show program version - fpm help new # display help for "new" subcommand - fpm help manual # All fpm(1) built-in documentation -<P> -</PRE> -</BLOCKQUOTE> -<A name=> - - <H4> FORTRAN INTRINSICS</H4> -</A> -<BLOCKQUOTE> -Additional general Fortran documentation -<P> -<PRE> - fpm help SIN COS TAN # selected Fortran Intrinsic help - fpm help fortran # index of Fortran documentation - fpm help fortran_manual # all Fortran documentation -<P> -</PRE> -</BLOCKQUOTE> -<A name=42> - - <H3>SEE ALSO</H3> - -</A> -<BLOCKQUOTE> -The <B>fpm</B>(1) home page at https://github.com/fortran-lang/<B>fpm</B> -</BLOCKQUOTE> -<A name=37> - - <H3>NAME</H3> - -</A> -<BLOCKQUOTE> -<B>list</B>(1) - list summary of <B>fpm</B>(1) subcommands -<P> -</BLOCKQUOTE> -<A name=38> - - <H3>SYNOPSIS</H3> - -</A> -<BLOCKQUOTE> -<B>fpm</B> <I>list</I> [-<I>list</I>] -<P> -<B>fpm</B> <I>list</I> --<I>help</I>|--<I>version</I> -</BLOCKQUOTE> -<A name=39> - - <H3>DESCRIPTION</H3> - -</A> -<BLOCKQUOTE> -Display a short description for each <B>fpm</B>(1) subcommand. -</BLOCKQUOTE> -<A name=40> - - <H3>OPTIONS</H3> - -</A> -<BLOCKQUOTE> -<TABLE cellpadding=3> -<TR valign=top><TD width=6% nowrap> -<B>--</B><I>list</I> </TD><TD valign=bottom> -display a <I>list</I> of command options as well. This is the -same output as generated by "<B>fpm</B> --<I>list</I>". -</TD></TR> -<TR></TR></TABLE></BLOCKQUOTE> -<A name=41> - - <H3>EXAMPLES</H3> - -</A> -<BLOCKQUOTE> -display a short <I>list</I> of <B>fpm</B>(1) subcommands -<P> -<PRE> - fpm list - fpm --list -<P> -</PRE> -</BLOCKQUOTE> -<A name=42> - - <H3>SEE ALSO</H3> - -</A> -<BLOCKQUOTE> -The <B>fpm</B>(1) home page at https://github.com/fortran-lang/<B>fpm</B> -</BLOCKQUOTE> -<TABLE cellpadding=3><!-- tsb: The <B>fpm</B>(1) home page at https://github.com/fortran-lang/<B>fpm</B> - --> -<TR></TR><TR></TR> -<TR valign=top><TD colspan=2> -<B>Version:</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -0.1.0, Pre-alpha -<TABLE width=100% cellpadding=3><!-- tsb: 0.1.0, Pre-alpha - --> -<TR></TR><TR></TR> -<TR valign=top><TD colspan=2> -<B>Program:</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -<B>fpm</B>(1) -Description: A Fortran package manager and <I>build</I> system -</TD></TR> -<TR valign=top><TD colspan=2> -<B>Home Page:</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -https://github.com/fortran-lang/<B>fpm</B> -</TD></TR> -<TR valign=top><TD colspan=2> -<B>License:</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -MIT -</TD></TR> -<TR valign=top><TD colspan=2> -<B>OS Type:</B> </TD></TR><TR valign=top><TD width=6%> </TD><TD> -Linux -</TD></TR> -<TR></TR></TABLE></TD></TR> -<TR></TR></TABLE><P><HR> -<TABLE width=100%><TR> <TD width=33%><I></I></TD> <TD width=33% align=center>untitled ()</TD> <TD align=right width=33%><I>October 18, 2020</I></TD> </TR></TABLE><FONT SIZE=-1>Generated by <A HREF="http://www.squarebox.co.uk/download/manServer.shtml">manServer 1.08</A> from d68c10d7-7027-443c-9855-663219ca410d using man macros.</FONT> -<br><br><center><img src="images/IMAGE.gif"></center> -</div> -</div> -</body> -</HTML> diff --git a/fpm/src/fpm.f90 b/fpm/src/fpm.f90 index 4442923..7ab28df 100644 --- a/fpm/src/fpm.f90 +++ b/fpm/src/fpm.f90 @@ -202,7 +202,7 @@ logical :: list stop endif else - !! expand names, duplicates are a problem?? + !*! expand names, duplicates are a problem?? allocate(foundit(size(settings%name))) foundit=.false. FINDIT: do i=1,size(package%executable) @@ -217,18 +217,15 @@ logical :: list do i=1,size(settings%name) if(.not.foundit(i))then write(stderr,'(*(g0,1x))')'fpm::run<ERROR>:executable',trim(settings%name(i)),'not located' - !!elseif(settings%debug)then - !! write(stderr,'(*(g0,1x))')'fpm::run<INFO>:executable',trim(settings%name(i)),'located at',newwords(i),& - !! & merge('exists ','does not exist',exists(trim(settings%name(i)))) endif enddo if(allocated(foundit))deallocate(foundit) endif do i=1,size(newwords) - !! list is a new option for use with xargs, to move files to production area, valgrind, gdb, ls -l, .... - !! maybe add as --mask and could do --mask 'echo %xx' or --mask 'cp %XX /usr/local/bin/' an so on - !! default if blank would be filename uptodate|needs|updated|doesnotexist creation_date, ... - !! or maybe just list filenames so can pipe through xargs, and so on + !*! list is a new option for use with xargs, to move files to production area, valgrind, gdb, ls -l, .... + !*! maybe add as --mask and could do --mask 'echo %xx' or --mask 'cp %XX /usr/local/bin/' an so on + !*! default if blank would be filename uptodate|needs|updated|doesnotexist creation_date, ... + !*! or maybe just list filenames so can pipe through xargs, and so on if(settings%list)then write(stderr,'(*(g0,1x))')'fpm::run<INFO>:executable expected at',newwords(i),& & merge('exists ','does not exist',exists(newwords(i))) @@ -287,7 +284,7 @@ logical :: list stop endif else - !! expand names, duplicates are a problem?? + !*! expand names, duplicates are a problem?? allocate(foundit(size(settings%name))) foundit=.false. FINDIT: do i=1,size(package%test) @@ -302,18 +299,15 @@ logical :: list do i=1,size(settings%name) if(.not.foundit(i))then write(stderr,'(*(g0,1x))')'fpm::run<ERROR>:test',trim(settings%name(i)),'not located' - !!elseif(settings%debug)then - !! write(stderr,'(*(g0,1x))')'fpm::run<INFO>:test',trim(settings%name(i)),'located at',newwords(i),& - !! & merge('exists ','does not exist',exists(trim(settings%name(i)))) endif enddo if(allocated(foundit))deallocate(foundit) endif do i=1,size(newwords) - !! list is a new option for use with xargs, to move files to production area, valgrind, gdb, ls -l, .... - !! maybe add as --mask and could do --mask 'echo %xx' or --mask 'cp %XX /usr/local/bin/' an so on - !! default if blank would be filename uptodate|needs|updated|doesnotexist creation_date, ... - !! or maybe just list filenames so can pipe through xargs, and so on + !*! list is a new option for use with xargs, to move files to production area, valgrind, gdb, ls -l, .... + !*! maybe add as --mask and could do --mask 'echo %xx' or --mask 'cp %XX /usr/local/bin/' an so on + !*! default if blank would be filename uptodate|needs|updated|doesnotexist creation_date, ... + !*! or maybe just list filenames so can pipe through xargs, and so on if(settings%list)then write(stderr,'(*(g0,1x))')'fpm::run<INFO>:test expected at',newwords(i),& & merge('exists ','does not exist',exists(newwords(i))) diff --git a/fpm/src/fpm/cmd/new.f90 b/fpm/src/fpm/cmd/new.f90 index eb1a532..91145d8 100644 --- a/fpm/src/fpm/cmd/new.f90 +++ b/fpm/src/fpm/cmd/new.f90 @@ -38,15 +38,10 @@ character(len=8) :: date ! change to new directory as a test. System dependent potentially call run('cd '//settings%name) - !! NOTE: need some system routines to handle filenames like "." - !! like realpath() or getcwd(). + !*! NOTE: need some system routines to handle filenames like "." + !*! like realpath() or getcwd(). bname=basename(settings%name) - !! weird gfortran bug?? lines truncated to concatenated string length, - !! not 80 - !! hit some weird gfortran bug when littlefile data was an argument - !! to warnwrite(3f), ok when a variable - ! create NAME/.gitignore file call warnwrite(join_path(settings%name, '.gitignore'), ['build/*']) diff --git a/fpm/src/fpm_command_line.f90 b/fpm/src/fpm_command_line.f90 index 1975602..f8d6f4a 100644 --- a/fpm/src/fpm_command_line.f90 +++ b/fpm/src/fpm_command_line.f90 @@ -140,7 +140,7 @@ contains & 'USAGE: fpm new NAME [--lib|--src] [--app] [--test] [--backfill]' stop 2 end select - !! canon_path is not converting ".", etc. + !*! canon_path is not converting ".", etc. name=canon_path(name) if( .not.is_fortran_name(basename(name)) )then write(stderr,'(g0)') [ character(len=72) :: & |