# MSS Code Factory: A Fractal Programming System

Prev | Documentation Home | Next

## Preparing the Manufacturing Directory for Builds

In order to build projects manufactured by MSS Code Factory, you need to have the source trees for the dependent projects installed and built. The CFSecurity project is always referenced to a manufactured project, as all of the database scripts and core objects rely on that code being present.

To prepare the CFSecurity project, you'll need to clone the git source tree for it:

`cd ${mymfgdir} git clone http://github.com/msobkow/net-sourceforge-MSSCodeFactory-CFSecurity-2-10 mkdir net-sourceforge-MSSCodeFactory-CFSecurity-2-10/java/installer`

The other two projects that are under an Apache v2 license and which can be referenced/imported by any project, whether GPL or commercial, are CFInternet and CFCrm. You can prepare their directories as follows (in your manufacturing directory, of course!):

`cd ${mymfgdir} git clone http://github.com/msobkow/net-sourceforge-MSSCodeFactory-CFInternet-2-10 mkdir net-sourceforge-MSSCodeFactory-CFInternet-2-10/java/installer`

`cd ${mymfgdir} git clone http://github.com/msobkow/net-sourceforge-MSSCodeFactory-CFCrm-2-10 mkdir net-sourceforge-MSSCodeFactory-CFCrm-2-10/java/installer`

If updates to those projects are released by the MSS Code Factory 2.9 website, you should do a "git pull" on them, an "ant clean" in their Java directory, and rebuild them with "ant", in the order of dependency (CFSecurity, CFInternet, and finally CFCrm.)

Try building the projects now to make sure your build environment is correct:

`cd ${mymfgdir}/net-sourceforge-MSSCodeFactory-CFSecurity-2-10/java
ant`

If CFSecurity built correctly, you are in good shape to proceed with building CFInternet and CFCrm the same way. If not, you'll have to figure out what is wrong with your build environment.

I had to configure my JAVA_HOME and JDK_HOME variables to point to the OpenJDK 8 installation on Debian Linux, and make sure that the OpenJFX package was installed as well. You can not build with JDK 7, and I have not tested any betas of JDK 9.

`cd ${mymfgdir}/net-sourceforge-MSSCodeFactory-CFInternet-2-10/java
ant`

`cd ${mymfgdir}/net-sourceforge-MSSCodeFactory-CFCrm-2-10/java
ant`