Skip to content

Commit

Permalink
remove autotools/configure support
Browse files Browse the repository at this point in the history
  • Loading branch information
jjcherry56 committed Feb 16, 2019
1 parent 87e7493 commit d8146af
Show file tree
Hide file tree
Showing 58 changed files with 1,642 additions and 970 deletions.
29 changes: 5 additions & 24 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,39 +13,20 @@ TAGS
.~lock.*#
.DS_Store
Makefile
Makefile.in

.libs
.deps

/build
/configure
/m4
/compile
/config.h
/config.guess
/config.h.in
/config.log
/config.sub
/config.status
/libtool
/ltmain.sh
/install-sh
/missing
/depcomp
/ylwrap
/aclocal.m4
/autom4te.cache
/stamp-h1
/ylwrap
/debug
/rel

# /util/
/util/StaConfig.hh

# /app/
/app/StaApp_wrap.cc
/app/TclInitVar.cc
/app/sta
/app/sta.exe
/app/sta.dSYM
/app/.dirstamp

# /doc/
/doc/._Sta.docx
Expand Down
1 change: 0 additions & 1 deletion AUTHORS

This file was deleted.

22 changes: 14 additions & 8 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

cmake_minimum_required (VERSION 3.9)

project(STA VERSION 2.0.6)
project(STA VERSION 2.0.7)

set(CMAKE_VERBOSE_MAKEFILE ON)
set(CMAKE_CXX_STANDARD 11)
Expand Down Expand Up @@ -436,13 +436,19 @@ set(STA_SWIG_FILES
set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
set(THREADS_PREFER_PTHREAD_FLAG TRUE)
find_package(Threads)
set(HAVE_PTHREADS ${CMAKE_USE_PTHREADS_INIT})
if (HAVE_PTHREADS)
set(PTHREADS ${CMAKE_USE_PTHREADS_INIT})
if (PTHREADS)
message(STATUS "Found pthreads")
endif()

# Zlib
include(FindZLIB)
# translate cmake bool to ifdef bool
if (ZLIB_FOUND)
set(ZLIB 1)
else()
set(ZLIB 0)
endif()

################################################################
#
Expand All @@ -457,12 +463,13 @@ if("${CUDD}" STREQUAL "")
set(CUDD_INCLUDE "")
set(CUDD_LIB "")
set(CUDD_FOUND FALSE)
set(CUDD 0)
else()
set(CUDD_INCLUDE ${CUDD}/include)
find_library(CUDD_LIB NAMES cudd PATHS ${CUDD}/lib)
if (CUDD_LIB)
# CUDD_FOUND referenced by config.h.cmake
set(CUDD_FOUND TRUE)
# CUDD referenced by StaConfig.hh.cmake
set(CUDD 1)
message(STATUS "CUDD library: ${CUDD_LIB}")
endif()
endif()
Expand All @@ -473,8 +480,8 @@ endif()
message(STATUS "Enable SSTA: ${SSTA}")

# configure a header file to pass some of the CMake settins
configure_file(${STA_HOME}/config.h.cmake
${STA_HOME}/config.h
configure_file(${STA_HOME}/util/StaConfig.hh.cmake
${STA_HOME}/util/StaConfig.hh
)


Expand Down Expand Up @@ -651,7 +658,6 @@ set(STA_INCLUDE_DIRS
search
util
verilog
. # config.h
${TCL_HEADER_DIR}
${CUDD_INCLUDE}
)
Expand Down
16 changes: 0 additions & 16 deletions COPYING

This file was deleted.

11 changes: 0 additions & 11 deletions ChangeLog

This file was deleted.

1 change: 0 additions & 1 deletion INSTALL

This file was deleted.

35 changes: 0 additions & 35 deletions Makefile.am

This file was deleted.

1 change: 0 additions & 1 deletion NEWS

This file was deleted.

1 change: 0 additions & 1 deletion README

This file was deleted.

79 changes: 10 additions & 69 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ See doc/OpenSTA.pdf for complete documentiaton.
## Getting Started

OpenSTA can be run as a [Docker](https://www.docker.com/) container
or built as local executable with CMake or Autotools.
or built as local executable with CMake.

### Run using Docker
* Install Docker on [Windows](https://docs.docker.com/docker-for-windows/), [Mac](https://docs.docker.com/docker-for-mac/) or [Linux](https://docs.docker.com/install/).
Expand Down Expand Up @@ -96,8 +96,7 @@ cudd 2.4.1 3.0.0
CUDD is a binary decision diageram (BDD) package that is used to improve conditional timing arc handling. It is available [here](https://www.davidkebo.com/source/cudd_versions/cudd-3.0.0.tar.gz) or [here](https://sourceforge.net/projects/cudd-mirror/).

Note that the file hierarchy of the CUDD installation changed with version 3.0.
Some changes to the CMake or configure scripts are required to support older
versions.
Some changes to the CMake are required to support older versions.

You may use the `--prefix ` option to `configure` to install in a location other than
the default (`/usr/local/lib`).
Expand Down Expand Up @@ -162,72 +161,12 @@ If you make changes to `CMakeLists.txt` you may need to clean out
existing CMake cached variable values by deleting all of the
files in the build directory.

### Installing from a tarfile

Installing from a tarfile has the advantage that Autotools, bison,
flex and swig do not need to be installed.

Use the following commands to unpack the dist file and compile it.
```
tar zvfz opensta-<version>.tgz
cd opensta-<version>
./configure [options...]
make
```
With no options, configure builds an optimized executable.
The resulting executable is app/sta.
```
configure options:
-h, --help display configure help and exit
--enable-debug enable debug
--enable-asan enable AddressSanitizer
--enable-gprof enable gprof profiling
--enable-gcov enable gcov profiling
--enable-32bit force 32 bit compile
--with-include=dirs directories to search for include files
--with-lib=dirs directories to search for libraries
--with-tcl=dirs directories to search for Tcl init files
--with-cudd=path use Cudd BDD package, defaults to $CUDD
--with-visualstudio use Microcruft Visual Studio C++ compiler
```
If the configure script fails to find any of the `TCL`, `Zlib` or `CUDD`
files, use the `--with-include`, `--with-lib`, `--with-tcl`, `--with-cudd`
options to add directories to search for the files.

The configure `--help` option lists the generic configure options that
are not described above. The default arguments to configure disable
shared libraries. To build with shared libraries use the
`--enable-shared` option.

### Installing with Autotools

Building with GNU Autotools the additional build dependencies shown
below.
```
from Ubuntu Xcode
18.04.1 10.1
autoconf 2.53 2.69 2.69
automake 1.6.3 1.15.1 1.16.1
libtool 1.4.2 2.4.6 2.4.6
```
Use the following commands to checkout the git repository and compile
it.
```
git clone https://xp-dev.com/git/opensta
git checkout master|branch
./bootstrap
./configure [options...]
make
```
Configure options are show above in the "Installing from tarkit" section.

### Installing on Windoz

The Win32 API does not natively support the pthreads API. The
pthreads-win32 package is one way to get support for pthreads for 32
bit builds. It is available from [pthreads](www.sourceware.org/pthreads-win32).
If the configure script does not find `pthreads.h` the build proceeds
without thread support.
If Cmake does not find `pthreads.h` the build proceeds without thread support.

Use a .bat file to start a cygwin shell that has its path set to
support the Microcruft cl compiler by calling the vsvars32.bat script
Expand All @@ -242,13 +181,15 @@ tcsh-startup.bat
CMake is supposedly more compatible with the windoz environment
so you may have better luck wih it.

Configure and build from the shell. Note that tcl and zlib must be
Cmake and build from the shell. Note that tcl and zlib must be
built with the Visual C++ compiler to link to the sta libraries.

mkdir build
cd build
cmakd ..
make
...
./bootstrap
./configure --with-visualstudio
make maintainer-clean
...

Good luck and don't bother me with windoz specific issues.
I am happy to say I haven't owned a windoz machine in 20 years.

Expand Down
4 changes: 2 additions & 2 deletions app/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

#include <stdio.h>
#include "Machine.hh"
#include "config.h" // VERSION
#include "StaConfig.hh" // STA_VERSION
#include "StringUtil.hh"
#include "Sta.hh"
#include "StaMain.hh"
Expand All @@ -39,7 +39,7 @@ main(int argc, char **argv)
return 0;
}
else if (argc == 2 && stringEq(argv[1], "-version")) {
printf("%s\n", VERSION);
printf("%s\n", STA_VERSION);
return 0;
}
else {
Expand Down
3 changes: 0 additions & 3 deletions bootstrap

This file was deleted.

15 changes: 0 additions & 15 deletions config.h.cmake

This file was deleted.

Loading

0 comments on commit d8146af

Please sign in to comment.