|
Size: 1637
Comment:
|
Size: 4415
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 5: | Line 5: |
| A user controls configuration by editing one or more configuration files: | There are several files that control configuration. Some files are not to edited by users: |
| Line 7: | Line 7: |
| * configure[[BR]] This is the master script that a user runs before they run make. It needs to be run once after source-code and make-configuration changes, but it does not need to be run when building on a new platform.[[BR]][[BR]]It first determines if |
* '''$JSOC/configure'''[[BR]] This is the master script that a user runs before they run make. It needs to be run once after source-code and make-configuration changes, but it does not need to be run when building on a new platform. The user does not edit this file for configuration-control purposes, and, in general, only the CM will edit this file (for maintenance reasons, or in response to user requests). This file contains JSOC-SDP-DRMS-specific, and NetDRMS-specific configuration. For example, there is no DSDS support for NetDRMS builds, and configure contains a line that defines a compiler flag that disables DSDS support for NetDRMS.[[BR]][[BR]] The documentation for this file resides as comments in the file itself. |
| Line 10: | Line 11: |
| * '''$JSOC/gen_init.csh'''[[BR]] This script, available only in NetDRMS releases, parses the config.local configuration file (described below), and generates the $JSOCROOT/base/include/localization.h file. This header file is in turn #included in $JSOCROOT/base/drms/apps/serverdefs.h, where it then ''overrides'' the compiler macros present in that file. The original macros are used for JSOC-SDP DRMS builds. |
|
| Line 11: | Line 14: |
| * configsdp.txt[[BR]] This file contains information specific to the JSOC-SDP that controls the build of JSOC-SDP-specific projects (like the "rings" project). At the top it contains make variables, in the middle it contains information needed by make to create project-specific directories, and at the bottom it contains shell commands to be used for project-specific management (like creating links to specified executables).[[BR]][[BR]]The presence of this file in the $JSOCROOT directory indicates to the make system that the source-code is to be used to create DRMS/SUMS for the JSOC-SDP (i.e., a "full" make). If this file is not present, then the make system will create a NetDRMS when make is run. |
Other files are available for the user to edit. These files allow the user to control configuration: |
| Line 14: | Line 16: |
| [[BR]][[BR]] | * '''$JSOC/configsdp.txt'''[[BR]] This file contains information specific to the JSOC-SDP that controls the build of JSOC-SDP-specific projects (like the "rings" project). At the top it contains make variables, in the middle it contains information needed by make to create project-specific directories, and at the bottom it contains shell commands to be used for project-specific management (like creating links to specified executables).[[BR]][[BR]]The presence of this file in the $JSOCROOT directory indicates to the make system that the source-code is to be used to create DRMS/SUMS for the JSOC-SDP (i.e., a "full" make). If this file is not present, then the make system will create a NetDRMS when make is run.[[BR]][[BR]] |
| Line 17: | Line 20: |
| * '''$JSOC/config.local'''[[BR]] This file contains various system-wide parameters that affect the build, including the machine hosting the SUMS server, the paths to the PostgreSQL and CFITSIO libraries, and the machine hosting the DRMS database, and many others. '''This file must be created by the user prior to running configure.''' It is not part of any release. Instead, the release provides a template file (config.local.template for NetDRMS releases, and config.local.sutemplate for JSOC-SDP DRMS releases). The user should copy the template, and edit is as desired. [[BR]][[BR]] The documentation for this file, which includes examples, resides in the config.local.template (NetDRMS) or config.local.sutemplate (JSOC-SDP DRMS) file. |
|
| Line 18: | Line 24: |
| * | * '''$JSOC/base/include/localization.h'''[[BR]] This header file is generated when configure is run by the user. It is #included in $JSOCROOT/base/drms/apps/serverdefs.h, where it then ''overrides'' the compiler macros present in that file. The original macros are used for JSOC-SDP DRMS builds. |
| Line 20: | Line 27: |
| Once the user has modified these configuration files as desired, configuration proceeds when the user runs the $JSOCROOT/configure script. This script first determines if the build to be performed is a JSOC-SDP DRMS build, or a NetDRMS build. If $JSOCROOT/configsdp.txt is present, then it will assume the former, otherwise it will assume the latter. If performing a NetDRMS build, then the script requires that config.local be present. For a JSOC-SDP DRMS build, the presence of this file is NOT required. If it is present, then the contents of that file will customize the JSOC-SDP DRMS build, but if it is absent, then a default build will be performed. | |
| Line 21: | Line 29: |
== config.local == |
If building NetDRMS, configure first runs gen_init.csh. This will generate the |
Build Configuration
The source-code configure script, $JSOCROOT/configure, sets environment variables, make variables, and creates on-the-fly make rules that allow users to localize and/or customize the way the JSOC-SDP code is built. Depending on how the make system is configured with these variables and rules, the user can build NetDRMS or the DRMS used at the JSOC-SDP. And for both builds, the user can customize various details.
There are several files that control configuration. Some files are not to edited by users:
* $JSOC/configureBR
This is the master script that a user runs before they run make. It needs to be run once after source-code and make-configuration changes, but it does not need to be run when building on a new platform. The user does not edit this file for configuration-control purposes, and, in general, only the CM will edit this file (for maintenance reasons, or in response to user requests). This file contains JSOC-SDP-DRMS-specific, and NetDRMS-specific configuration. For example, there is no DSDS support for NetDRMS builds, and configure contains a line that defines a compiler flag that disables DSDS support for NetDRMS.BRBR The documentation for this file resides as comments in the file itself.
* $JSOC/gen_init.cshBR
This script, available only in NetDRMS releases, parses the config.local configuration file (described below), and generates the $JSOCROOT/base/include/localization.h file. This header file is in turn #included in $JSOCROOT/base/drms/apps/serverdefs.h, where it then overrides the compiler macros present in that file. The original macros are used for JSOC-SDP DRMS builds.
Other files are available for the user to edit. These files allow the user to control configuration:
$JSOC/configsdp.txtBR This file contains information specific to the JSOC-SDP that controls the build of JSOC-SDP-specific projects (like the "rings" project). At the top it contains make variables, in the middle it contains information needed by make to create project-specific directories, and at the bottom it contains shell commands to be used for project-specific management (like creating links to specified executables).BRBRThe presence of this file in the $JSOCROOT directory indicates to the make system that the source-code is to be used to create DRMS/SUMS for the JSOC-SDP (i.e., a "full" make). If this file is not present, then the make system will create a NetDRMS when make is run.BRBR The contents of this file, and how to edit them, are described more fully in CvsInit.
$JSOC/config.localBR This file contains various system-wide parameters that affect the build, including the machine hosting the SUMS server, the paths to the PostgreSQL and CFITSIO libraries, and the machine hosting the DRMS database, and many others. This file must be created by the user prior to running configure. It is not part of any release. Instead, the release provides a template file (config.local.template for NetDRMS releases, and config.local.sutemplate for JSOC-SDP DRMS releases). The user should copy the template, and edit is as desired. BRBR The documentation for this file, which includes examples, resides in the config.local.template (NetDRMS) or config.local.sutemplate (JSOC-SDP DRMS) file.
$JSOC/base/include/localization.hBR This header file is generated when configure is run by the user. It is #included in $JSOCROOT/base/drms/apps/serverdefs.h, where it then overrides the compiler macros present in that file. The original macros are used for JSOC-SDP DRMS builds.
Once the user has modified these configuration files as desired, configuration proceeds when the user runs the $JSOCROOT/configure script. This script first determines if the build to be performed is a JSOC-SDP DRMS build, or a NetDRMS build. If $JSOCROOT/configsdp.txt is present, then it will assume the former, otherwise it will assume the latter. If performing a NetDRMS build, then the script requires that config.local be present. For a JSOC-SDP DRMS build, the presence of this file is NOT required. If it is present, then the contents of that file will customize the JSOC-SDP DRMS build, but if it is absent, then a default build will be performed.
If building NetDRMS, configure first runs gen_init.csh. This will generate the
