yorick banner

Home

Manual

Packages

Global Index

Keywords

Quick Reference

functions in make.i - m

 
 
 
make


             make, args  
          or make  
 
     makes a Makefile for ARGS(1) in the current working directory.  
     args is a list of strings that looks like this:  
       [code_name, new1, new2, ..., "+", old1, old2, ...]  
     (Without ARGS, checks to be sure that existing Makefile has  
     correct MAKE_TEMPLATE for this platform.)  
     Each NEWi is a Yorick include file in the current working  
     directory, which will become a startup file for the new custom  
     version of Yorick you want to build.  Each OLDi file is a  
     startup file for a previously built package; these must be in  
     either the Y_SITE/i0 or Y_SITE/contrib directories (or  
     have softlinks in the current working directory).  
     The matrix.i and fft.i packages are included by default; if you  
     want to override that default, specify "-matrix" and/or "-fft"  
     as part of the list of OLDi.  
     All the startup files must contain a MAKE-INSTRUCTIONS comment.  
     It should be placed near the top of each startup file.  
     This comment consists of a line containing slash* followed by  
     MAKE-INSTRUCTIONS then a number of lines with various keywords,  
     then the closing *slash on its own line.  The recognized keywords  
     are:  
     SRCS = src1.c src2.c src3.f ...  
     LIB = pkg  
     DEPLIBS = dep1 dep2  
     NO-WRAPPERS  
     The SRCS keyword is mandatory; the others are all optional.  
     The SRCS are the source files which produce the compiled functions  
     referenced by the extern statements in the startup file which  
     contains this MAKE-INSTRUCTIONS comment.  The extension ".f" or  
     ".F" implies Fortran source code, which has some special configuration  
     fiddles (see Y_HOME/Maketmpl).  You can continue the list by placing  
     a backslash \ at the end of a line; the list of SRCS stops after the  
     first line which does not end with \.  
     The LIB keyword specifies the name of the library for this package.  
     The library will actually be called libpkg.a and the load option will  
     be -lpkg (don't try to include these decoration in the name pkg you  
     supply).  If the LIB keyword is not present, you will get no library,  
     and you won't be able to use this startup file as one of the OLDi in  
     any new custom versions of Yorick you may build in the future.  
     DEPLIBS is a list of any dependent libraries which the compiled  
     functions in SRCS may need.  Do not include m (the libm math library)  
     or any Fortran libraries or other libraries related to or used by  
     Yorick itself here.  Hopefully, you won't need DEPLIBS at all -- if  
     you do, you will probably need to tweek the Makefile to add correct  
     -L options so that libdep1, libdep2, etc can be found.  
     If none of the extern functions in this startup file has a  
     PROTOTYPE comment, add the NO-WRAPPERS keyword, otherwise don't.  
     See Y_HOME/Maketmpl for more information (start yorick and type  
     Y_HOME to find the directory name at your site).  
     To run this program in batch mode:  
     yorick -batch make.i  
        type this after you've moved to a new platform in order to  
        set the MAKE_TEMPLATE in the Makefile to the correct value  
        for this platform (Y_HOME is probably different)  
     yorick -batch make.i code_name new1 new2 ...  
     yorick -batch make.i code_name new1 new2 ... + old1 old2 ...  
        type this to construct a new Makefile for code_name  
        if a Makefile already exists, it simply performs the check as  
        above; if you want to rebuild a new Makefile, you need to  
        remove or change the name of the old one by hand  
interpreted function, defined at i/make.i   line 10