astyle_x.y_linux.tar.gz is the Linux version of Artistic Style. It contains the source code, documentation, and makefiles. The Linux Version compile instructions below give information for compiling the source code.
astyle_x.y_macosx.tar.gz is the Mac OS X version of Artistic Style. It contains the source code, documentation, and a makefile. The Mac OS X Version compile instructions below give information for compiling the source code.
astyle_x.y_openvms.zip is the OpenVMS version of Artistic Style. It contains the source code, documentation, object files, build files, and executables. The OpenVMS Version compile instructions below give information for compiling the source code. Object code is included for people that don't have the Hewlett-Packard C++ compiler.
astyle_x.y_windows.zip is the Windows version of Artistic Style. It contains the source code, documentation, Visual C project files, and an executable. The Windows Version compile instructions below give information for compiling the source code.
Only one platform is supported in each distribution package. If you use Artistic Style on more than one platform you will need to download packages for each platform. The main difference in platforms is the build directories and the line endings. Most compilers and development packages will accept any type of line ending. The source code and documentation are the same for all distributions.
To compile using the GCC compiler you must have GCC (3.1 or better) installed. To build the Artistic Style configurations use the makefile located in the astyle/buildgcc directory. The executables will be in the astyle/bin directory. To build the command line configuration enter the following:
cd astyle/buildgcc
make
To build the other astyle configurations you can enter the file name or a symbolic name. Entering "make astyle" or "make release" will build the command line configuration. Following are the symbolic names and file names (in parens) of the various configurations:
The following Java shared library builds are separate from the above. They include the Java Native Interface (JNI) and require that the Java Development Kit (JDK) be installed. The environment variable JAVA_HOME should be defined. It defines the install directory for the JDK. The makefile also has default install directories for Java 5 and 6. If the compile cannot find the file jni.h, either set the variable or change the value in the makefile.
More than one configuration can be built at the same time. For example, to build all of the release configurations enter:
cd astyle/build
make release shared static
To build the Artistic Style configurations use the makefile located in the astyle/buildintel directory. The executables will be in the astyle/bin directory. To build the command line configuration enter the following:
cd astyle/buildintel
make
To build the other astyle configurations you can enter the file name or a symbolic name. The configuration names for Intel are the same as for the GCC compiler. More than one configuration can be built at the same time. For example, to build all of the debug configurations enter:
cd astyle/buildintel
make debug shareddebug staticdebug
The following makefile options are also available for GCC and Intel.
Removes the object and executable files for all configurations.
To remove the files for all configurations:
make clean
Removes the object files for all configurations. The executables will not be removed.
To remove only the object files for all configurations:
make cleanobj
Installs the executable. The default is /usr/bin. You must have the appropriate permissions to use install.
To install the astyle executable to /usr/bin:
make install
To install the executable to a different bin directory set a value for the macro $(prefix). For example to install the executable to a users home directory (/home/user/bin):
make prefix=$HOME install
Uninstalls the executable. The default is /usr/bin.
You must have the appropriate permissions to use uninstall. To uninstall the astyle executable from /usr/bin:
make uninstall
To uninstall the executable from a different "bin" directory set a value for the macro $(prefix). For example to uninstall the executable from a users home directory (/home/user/bin):
make prefix=$HOME uninstall
NOTE: The uninstall option will NOT remove the .astylerc files from the users home directories. The files must be removed individually for each user.
To build the Artistic Style configurations use the makefile located in the astyle/buildmac directory. The executables will be in the astyle/bin directory. To build the command line configuration enter the following:
cd astyle/buildmac
make
To build the other astyle configurations you can enter the file name or a symbolic name. The configurations for Mac are the same as for the Linux GCC compiler. More than one configuration can be built at the same time. For example, to build all of the release configurations enter:
cd astyle/buildmac
make release shared static
To build Artistic Style on an OpenVMS system, you will need Hewlett-Packard 's C++ compiler installed. To build the code, use the OpenVMS specific build file located in the astyle/buildvms directory. The executables will be in the astyle/bin directory. To build the standalone executable, enter the following:
set def [.astyle.buildvms]
@vmsbuild
To run Artistic Style, you should move the standalone executable to an appropriate directory, and create a foreign symbol for it. For example:
create/dir my_disk:[astyle.exe]
set def [-.bin]
copy astyle_main.exe my_disk:[astyle.exe]
ast*yle :== $my_disk:[astyle.exe]astyle_main.exe
The build command procedure also includes a method to build a sharable image version of the program, which can be linked and called from other executable modules.
Additionally, if you have a Java Development Kit installed, you can build a Java Native Interface version of the program, which can be called from Java code.
To build either of these versions, please see the comments located at the end of the VMSBUILD.COM command procedure.
If you use Artistic Style on ODS-2 disks, you will need to specify a different suffix for file renaming, as the default is .orig, and multi-dot filenames are not supported on ODS-2 disks. Add the --suffix=_orig switch to either the command line or your Artistic Style initialization file.
To set up an initialization file on OpenVMS, create a file and define a logical to point to it. For example:
create my_disk:[astyle]astyle.ini
--suffix=_orig
^Z
define artistic_style_options my_disk:[astyle]astyle.ini
In addition to the source files, the Windows version contains an astyle executable (AStyle.exe).
There is a project file for 3 versions of the Visual C compiler; buildvc7 (Visual Studio 2003), buildvc8 (Visual Studio 2005), and buildvc9 (Visual Studio 2008). Open the AStyle project file in the appropriate AStyle/buildx directory. Select the Release configuration to compile the command line version. All output files will be in the AStyle/bin directory. The project has the following configurations.
The following Java shared library builds include the Java Native Interface (JNI) and require that the Java Development Kit (JDK) be installed. The Project Properties must have an include path to the JDK include and include\win32 directories. This is set in Project > Properties > C/C++ > General > Additional Include Directories. The default setting is for the JDK to be installed in the default directory, but it may not be the most current release.
To use other compilers a project file must be built using the compiler's development environment.
To compile as a static or shared (dynamic) library define the macro ASTYLE_LIB. To compile a Java shared (dynamic) library define the macro ASTYLE_JNI. Then use the appropriate compiler and linker options to compile the static or shared library.
Artistic Style is a small program and it is best to optimize for speed. The debug configuration is not usually optimized. To optimize for speed in the release configurations use the macro NDEBUG to remove asserts. Use an option that allows inline function expansion. Runtime Type Information (RTTI) is NOT needed. Use whole program optimization if your compiler supports it. There may be other options you can use depending on the compiler.