* ./bootstrap:

- New: "debian" directory holding the paraphernalia needed to create a
        Debian/Ubuntu package.
    - New: In buildCoriolis, add a Debian packaging method.
    - Change: In coriolis2.spec, the build/install procedure now makes uses of
        the top-level Makefile.
    - Change: In FindBoostrap, detection of the distribution type. Finally not
        needed but kept here, just in case. Based on "lsb_release".
    - Change: In FindPythonSitePackages, simplificate the detection of the Python
        site-package directory. No longer on-the-fly generate a python script.
This commit is contained in:
Jean-Paul Chaput 2011-02-02 10:40:25 +00:00
parent 179a9b4019
commit d13d4832e7
16 changed files with 387 additions and 140 deletions

View File

@ -1,51 +1,83 @@
# Mimicking the behavior of a top-level autotool generated Makefile.
tools = "vlsisapd hurricane crlcore knik katabatic kite equinox solstice unicorn"
prefix = "/usr"
tools = bootstrap vlsisapd hurricane crlcore nimbus metis mauka knik katabatic kite \
equinox solstice cumulus stratus1 unicorn
prefix = /usr
DESTDIR =
BUILD_DESTDIR = $(shell pwd)/install.dir
BOOTSTRAP_TOP = $(prefix)
VLSISAPD_TOP = $(prefix)
CORIOLIS_TOP = $(prefix)
environment = VLSISAPD_TOP=$(VLSISAPD_TOP); export VLSISAPD_TOP; \
CORIOLIS_TOP=$(CORIOLIS_TOP); export CORIOLIS_TOP
environment = BOOTSTRAP_TOP=$(BOOTSTRAP_TOP); export BOOTSTRAP_TOP; \
VLSISAPD_TOP=$(VLSISAPD_TOP); export VLSISAPD_TOP; \
CORIOLIS_TOP=$(CORIOLIS_TOP); export CORIOLIS_TOP
.PHONY: build install FORCE
all: build
build:
clean:
rm -rf build.dir install.dir \
crlcore/doc/doxygen/html \
hurricane/doc/hurricane/html \
hurricane/doc/hurricane/latex \
hurricane/doc/viewer/html \
hurricane/doc/viewer/latex
build: FORCE
$(environment); \
for tool in $(tools); do \
mkdir -p build/$$tool; \
pushd build/$$tool; \
cmake -D CMAKE_BUILD_TYPE:STRING=RELEASE \
-D BUILD_SHARED_LIBS:STRING=ON \
-D BUILD_DOC:STRING=OFF \
-D CMAKE_INSTALL_prefix:STRING=$(CORIOLIS_TOP) \
-D DESTDIR:STRING=$(DESTDIR) \
../../$tool; \
make DESTDIR=$(DESTDIR) install; \
popd; \
case "`uname -m`" in \
"x86_64") cmakeArgs="-D LIB_SUFFIX:STRING=64";; \
*) cmakeArgs="";; \
esac; \
for tool in $(tools); do \
mkdir -p build.dir/$$tool; \
cd build.dir/$$tool; \
cmake -D CMAKE_BUILD_TYPE:STRING=RELEASE \
-D BUILD_SHARED_LIBS:STRING=ON \
-D BUILD_DOC:STRING=OFF \
-D CMAKE_INSTALL_PREFIX:STRING=$(CORIOLIS_TOP) \
-D DESTDIR:STRING=$(BUILD_DESTDIR) \
$${cmakeArgs} \
../../$$tool \
|| exit 1; \
make DESTDIR=$(BUILD_DESTDIR) install \
|| exit 1; \
cd ../..; \
done
install:
install: FORCE
$(environment); \
for tool in $(tools); do \
pushd build/$$tool; \
makeArgs=""; \
cmakeArgs=""; \
if [ "$$tool" = "crlcore" ]; then \
makeArgs="dvi safepdf html"; \
cmakeArgs="-D BUILD_DOC:STRING=ON"; \
else \
cmakeArgs="-D BUILD_DOC:STRING=OFF"; \
fi; \
cmake -D CMAKE_BUILD_TYPE:STRING=RELEASE \
-D BUILD_SHARED_LIBS:STRING=ON \
-D CMAKE_INSTALL_prefix:STRING=${CORIOLIS_TOP} \
-D DESTDIR:STRING=$(DESTDIR) \
$${cmakeArgs} \
../../$tool; \
make DESTDIR=${DESTDIR} -j1 $${makeArgs} install; \
popd; \
done; \
rm -f $(DESTDIR)$(CORIOLIS_TOP)/bin/{cx2y,kite-text}
case "`uname -m`" in \
"x86_64") commonCMakeArgs="-D LIB_SUFFIX:STRING=64";; \
*) commonCMakeArgs="";; \
esac; \
for tool in $(tools); do \
cd build.dir/$$tool; \
makeArgs=""; \
cmakeArgs="$$commonCMakeArgs -D BUILD_DOC:STRING=OFF"; \
if [ "$$tool" = "crlcore" \
-o "$$tool" = "stratus1" ]; then \
makeArgs="dvi safepdf html"; \
cmakeArgs="$$commonCMakeArgs -D BUILD_DOC:STRING=ON"; \
fi; \
if [ "$$tool" = "hurricane" ]; then \
cmakeArgs="$$commonCMakeArgs -D BUILD_DOC:STRING=ON"; \
fi; \
cmake -D CMAKE_BUILD_TYPE:STRING=RELEASE \
-D BUILD_SHARED_LIBS:STRING=ON \
-D CMAKE_INSTALL_PREFIX:STRING=${CORIOLIS_TOP} \
-D DESTDIR:STRING=$(DESTDIR) \
$${cmakeArgs} \
../../$$tool \
|| exit 1; \
make DESTDIR=$(DESTDIR) -j1 $${makeArgs} install \
|| exit 1; \
cd ../..; \
done; \
rm -f $(DESTDIR)$(CORIOLIS_TOP)/bin/cx2y \
$(DESTDIR)$(CORIOLIS_TOP)/bin/kite-text
FORCE:

View File

@ -101,6 +101,7 @@ class ProjectBuilder:
def _updateSecondary ( self ):
self._rpmbuildDir = os.path.join ( self._rootDir, "rpmbuild" )
self._debbuildDir = os.path.join ( self._rootDir, "debbuild" )
self._tmppathDir = os.path.join ( self._rpmbuildDir, "tmp" )
self._tarballDir = os.path.join ( self._rootDir, "tarball" )
self._archiveDir = os.path.join ( self._tarballDir, "coriolis2-1.0.%s" % self._svnTag )
@ -116,6 +117,7 @@ class ProjectBuilder:
self._specFileIn = os.path.join ( self._sourceDir, "bootstrap", "coriolis2.spec.in" )
self._specFile = os.path.join ( self._sourceDir, "bootstrap", "coriolis2.spec" )
self._debianDir = os.path.join ( self._sourceDir, "bootstrap", "debian" )
self._sourceTarBz2 = "coriolis2-1.0.%s.tar.bz2" % self._svnTag
self._binaryTarBz2 = "coriolis2-binary-1.0.%s-1.el5_soc.tar.bz2" % self._svnTag
self._distribPatch = os.path.join ( self._sourceDir, "bootstrap", "coriolis2-for-distribution.patch" )
@ -469,6 +471,12 @@ class ProjectBuilder:
command = [ "/bin/cp", "-r", os.path.join(self._sourceDir ,"bootstrap","Makefile.package")
, os.path.join(self._archiveDir,"Makefile") ]
self._execute ( command, "copy of %s failed" % "boostrap/Makefile.package")
command = [ "/bin/cp", self._specFile, self._archiveDir ]
self._execute ( command, "Copying RPM spec file" )
command = [ "/bin/cp", "-r", self._debianDir, self._archiveDir ]
self._execute ( command, "Copying Debian/Ubuntu package control files" )
os.chdir ( self._archiveDir )
#command = [ "/usr/bin/patch", "--remove-empty-files"
@ -496,13 +504,13 @@ class ProjectBuilder:
if not os.path.isdir(rpmFullDir):
os.makedirs ( rpmFullDir )
rpmSpecFile = os.path.join ( self._rpmbuildDir, "SPECS" , "coriolis2.spec" )
#rpmSpecFile = os.path.join ( self._rpmbuildDir, "SPECS" , "coriolis2.spec" )
rpmSourceFile = os.path.join ( self._rpmbuildDir, "SOURCES", self._sourceTarBz2 )
sourceFile = os.path.join ( self._tarballDir, self._sourceTarBz2 )
if os.path.isfile ( rpmSpecFile ):
os.unlink ( rpmSpecFile )
os.symlink ( self._specFile, rpmSpecFile )
#if os.path.isfile ( rpmSpecFile ):
# os.unlink ( rpmSpecFile )
#os.symlink ( self._specFile, rpmSpecFile )
if not os.path.islink ( rpmSourceFile ):
os.symlink ( sourceFile, rpmSourceFile )
@ -513,13 +521,39 @@ class ProjectBuilder:
, "--define", "_topdir %s" % self._rpmbuildDir
, "--define", "_tmppath %s" % self._tmppathDir
, "--define", "_enable_debug_packages 0"
, "-ba", "--with", "binarytar", rpmSpecFile ]
, "-ta", "--with", "binarytar", rpmSourceFile ]
self._execute ( command, "Rebuild rpm packages" )
return
def doDeb ( self, tools, projects ):
self.tarball ( tools, projects )
if not os.path.isdir(self._debbuildDir):
os.makedirs ( self._debbuildDir )
os.chdir ( self._debbuildDir )
sourceFile = os.path.join ( self._tarballDir, self._sourceTarBz2 )
command = [ "/bin/tar", "jxf", sourceFile ]
self._execute ( command, "Unpacking pristine sources" )
#command = [ "/bin/cp", "-r", self._debianDir, "." ]
#self._execute ( command, "Copying Debian/Ubuntu package control files" )
packageDir = os.path.join ( self._debbuildDir, "coriolis2-1.0.%s" % self._svnTag )
os.chdir ( packageDir )
self._environment["CFLAGS" ] = "-O2"
self._environment["CXXFLAGS"] = "-O2"
command = [ "/usr/bin/debuild", "-us", "-uc" ]
self._execute ( command, "Rebuild Debian packages" )
return
if __name__ == "__main__":
bootstrap = Project ( name = "bootstrap"
@ -588,6 +622,7 @@ if __name__ == "__main__":
# Miscellaneous.
parser.add_option ( "--tarball" , action="store_true", dest="tarball" )
parser.add_option ( "--do-rpm" , action="store_true", dest="doRpm" )
parser.add_option ( "--do-deb" , action="store_true", dest="doDeb" )
( options, args ) = parser.parse_args ()
builder = ProjectBuilder ()
@ -617,6 +652,7 @@ if __name__ == "__main__":
elif options.svnCheckout: builder.svnCheckout ( tools=options.tools, projects=options.projects )
elif options.tarball: builder.tarball ( tools=options.tools, projects=options.projects )
elif options.doRpm: builder.doRpm ( tools=options.tools, projects=options.projects )
elif options.doDeb: builder.doDeb ( tools=options.tools, projects=options.projects )
else: builder.build ( tools=options.tools, projects=options.projects )
sys.exit ( 0 )

View File

@ -14,6 +14,28 @@
endmacro(set_cmake_policies)
#
# Check for the Distribution: RedHat/Scientific/Ubuntu/OSX.
# Currently OSX is assimilated to RedHat.
#
macro(check_distribution)
if(NOT APPLE)
execute_process(COMMAND "lsb_release" "-d" OUTPUT_VARIABLE LSB_RELEASE)
if(LSB_RELEASE MATCHES "[Uu]buntu|[Dd]ebian")
set(DISTRIBUTION "Debian" CACHE STRING "Distribution Type/Vendor" FORCE)
add_definitions(-DDEBIAN)
endif(LSB_RELEASE MATCHES "[Uu]buntu|[Dd]ebian")
if(LSB_RELEASE MATCHES "Scientific|RedHat")
set(DISTRIBUTION "RedHat" CACHE STRING "Distribution Type/Vendor" FORCE)
add_definitions(-DREDHAT)
endif(LSB_RELEASE MATCHES "Scientific|RedHat")
else(NOT APPLE)
set(DISTRIBUTION "RedHat" CACHE STRING "Distribution Type/Vendor" FORCE)
add_definitions(-DREDHAT)
endif(NOT APPLE)
message("-- Distribution is ${DISTRIBUTION}")
endmacro(check_distribution)
#
# Specific Apple OSX setup
#
@ -169,13 +191,14 @@
# otherwise we install under the tool INSTALLDIR/etc.
#
macro(setup_sysconfdir INSTALLDIR)
string(REGEX MATCH "^/usr" IS_USR INSTALLDIR)
string(REGEX MATCH "^/opt" IS_OPT INSTALLDIR)
message("-- Checking installation directory <${INSTALLDIR}>")
string(REGEX MATCH "^/usr" IS_USR ${INSTALLDIR})
string(REGEX MATCH "^/opt" IS_OPT ${INSTALLDIR})
if(IS_USR OR IS_OPT)
message("-- Using system-wide /etc.")
set(SYS_CONF_DIR "/etc" CACHE STRING "System configuration directory (/etc)" FORCE)
else(IS_USR OR IS_OPT)
message("-- Using install tree /etc.")
message("-- Using install tree <prefix>/etc.")
set(SYS_CONF_DIR "etc" CACHE STRING "System configuration directory (/etc)" FORCE)
endif(IS_USR OR IS_OPT)
endmacro(setup_sysconfdir)

View File

@ -1,33 +1,33 @@
if ( UNIX )
if(UNIX)
# This way avoids newline in the script string.
set(SCRIPT "import os.path,distutils.sysconfig")
set(SCRIPT "${SCRIPT}; pathes = distutils.sysconfig.get_python_lib().split('/')")
set(SCRIPT "${SCRIPT}; print os.path.join(pathes[-2],pathes[-1])")
execute_process(COMMAND "python" "-c" "${SCRIPT}"
RESULT_VARIABLE RETURN_CODE
OUTPUT_VARIABLE PYTHON_SITE_PACKAGES
OUTPUT_STRIP_TRAILING_WHITESPACE
)
if(RETURN_CODE EQUAL 0)
set(FindPythonSitePackages_FOUND TRUE)
else(RETURN_CODE EQUAL 0)
set(FindPythonSitePackages_FOUND FALSE)
endif(RETURN_CODE EQUAL 0)
execute_process(COMMAND echo "import os.path,distutils.sysconfig;pathes = distutils.sysconfig.get_python_lib().split('/');print os.path.join ( pathes[-2], pathes[-1] )"
OUTPUT_FILE /tmp/site.py)
execute_process ( COMMAND python /tmp/site.py
OUTPUT_VARIABLE PYTHON_SITE_PACKAGES OUTPUT_STRIP_TRAILING_WHITESPACE
RESULT_VARIABLE RCODE)
execute_process ( COMMAND rm -f /tmp/site.py)
set(PYTHON_SITE_PACKAGES "lib${LIB_SUFFIX}/${PYTHON_SITE_PACKAGES}"
CACHE STRING "Python site packages directory." FORCE)
mark_as_advanced(PYTHON_SITE_PACKAGES)
if ( RCODE EQUAL 0 )
set ( FindPythonSitePackages_FOUND TRUE )
else ( RCODE EQUAL 0 )
set ( FindPythonSitePackages_FOUND FALSE )
endif ( RCODE EQUAL 0 )
set ( PYTHON_SITE_PACKAGES "lib${LIB_SUFFIX}/${PYTHON_SITE_PACKAGES}"
CACHE STRING "Python site packages directory." FORCE )
mark_as_advanced ( PYTHON_SITE_PACKAGES )
if ( FindPythonSitePackages_FOUND )
if ( NOT FindPythonSitePackages_FIND_QUIETLY )
if ( FindPythonSitePackages_FOUND )
message ( STATUS "Found FindPythonSitePackages : ${PYTHON_SITE_PACKAGES}" )
endif ( FindPythonSitePackages_FOUND )
endif ( NOT FindPythonSitePackages_FIND_QUIETLY )
else ( FindPythonSitePackages_FOUND )
#if ( FindPythonSitePackages_FIND_REQUIRED )
message ( FATAL_ERROR "Python site packages directory was not found (pythonV.R/site-packages/)." )
#endif ( FindPythonSitePackages_FIND_REQUIRED )
endif ( FindPythonSitePackages_FOUND )
endif ( UNIX )
if(FindPythonSitePackages_FOUND)
if(NOT FindPythonSitePackages_FIND_QUIETLY)
if(FindPythonSitePackages_FOUND)
message(STATUS "Found FindPythonSitePackages : ${PYTHON_SITE_PACKAGES}")
endif(FindPythonSitePackages_FOUND)
endif(NOT FindPythonSitePackages_FIND_QUIETLY)
else(FindPythonSitePackages_FOUND)
message ( FATAL_ERROR "Python site packages directory was not found (pythonV.R/site-packages/)." )
endif(FindPythonSitePackages_FOUND)
endif(UNIX)

View File

@ -64,70 +64,26 @@ Development files for the Coriolis 2 package.
%build
if [ -d %{buildroot} ]; then rm -r %{buildroot}; fi
VLSISAPD_TOP=%{coriolisTop}; export VLSISAPD_TOP
CORIOLIS_TOP=%{coriolisTop}; export CORIOLIS_TOP
BOOTSTRAP_TOP=%{coriolisTop}; export BOOTSTRAP_TOP
VLSISAPD_TOP=%{coriolisTop}; export VLSISAPD_TOP
CORIOLIS_TOP=%{coriolisTop}; export CORIOLIS_TOP
# Do build & install in one step, except for documentation.
tools="vlsisapd hurricane crlcore knik katabatic kite equinox solstice unicorn"
for tool in $tools; do
%__mkdir_p build/$tool
pushd build/$tool;
cmake -D CMAKE_BUILD_TYPE:STRING=RELEASE \
-D BUILD_SHARED_LIBS:STRING=ON \
-D BUILD_DOC:STRING=OFF \
-D CMAKE_INSTALL_PREFIX:STRING=%{coriolisTop} \
-D DESTDIR:STRING=%{buildroot} \
%if %{with_staticlink}
-D BUILD_SHARED_LIBS:STRING=OFF \
%endif
%ifarch x86_64
-D LIB_SUFFIX:STRING=64 \
%endif
../../$tool
make DESTDIR=%{buildroot} %{_smp_mflags} install
popd
done
make DESTDIR=%{buildroot} BUILD_DESTDIR=install.dir %{_smp_mflags} install
%install
VLSISAPD_TOP=%{coriolisTop}; export VLSISAPD_TOP
CORIOLIS_TOP=%{coriolisTop}; export CORIOLIS_TOP
BOOTSTRAP_TOP=%{coriolisTop}; export BOOTSTRAP_TOP
VLSISAPD_TOP=%{coriolisTop}; export VLSISAPD_TOP
CORIOLIS_TOP=%{coriolisTop}; export CORIOLIS_TOP
# Install & build documentation, in -j1.
tools="vlsisapd hurricane crlcore knik katabatic kite equinox solstice unicorn"
for tool in $tools; do
pushd build/$tool;
makeArgs=""
cmakeArgs=""
if [ "$tool" = "crlcore" ]; then
makeArgs="dvi safepdf html"
cmakeArgs="-D BUILD_DOC:STRING=ON"
else
cmakeArgs="-D BUILD_DOC:STRING=OFF"
fi
cmake -D CMAKE_BUILD_TYPE:STRING=RELEASE \
-D BUILD_SHARED_LIBS:STRING=ON \
-D CMAKE_INSTALL_PREFIX:STRING=%{coriolisTop} \
-D DESTDIR:STRING=%{buildroot} \
%if %{with_staticlink}
-D BUILD_SHARED_LIBS:STRING=OFF \
%endif
%ifarch x86_64
-D LIB_SUFFIX:STRING=64 \
%endif
${cmakeArgs} \
../../$tool
make DESTDIR=%{buildroot} -j1 ${makeArgs} install
popd
done
make DESTDIR=%{buildroot} BUILD_DESTDIR=install.dir -j1 install
%__rm -rf %{buildroot}%{coriolisTop}/share/doc/coriolis2
# Removing undistributed binaries.
%__rm -f %{buildroot}%{coriolisTop}/bin/{cx2y,kite-text}
#%__rm -f %{buildroot}%{coriolisTop}/bin/{cx2y,kite-text}
# %{__mkdir} -p %{buildroot}%{_sysconfdir}/ld.so.conf.d/
# cat > %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}.conf << EOF
@ -154,13 +110,14 @@ Development files for the Coriolis 2 package.
%files
%defattr(-,root,root,-)
#%doc %{_docdir}/coriolis2/README.*
%doc build/crlcore/doc/README.{tex,dvi,pdf} build/crlcore/doc/README
%doc install.dir/share/doc/coriolis2
%dir %{_sysconfdir}/coriolis2
%dir %{coriolisTop}/share/coriolis2/flute-2.4
%dir %{coriolisTop}/bin
%dir %{coriolisTop}/%{_lib}
%dir %{coriolisTop}/%{python_sitedir}
%dir %{coriolisTop}/%{python_sitedir}/cumulus
%dir %{coriolisTop}/%{python_sitedir}/stratus
%{coriolisTop}/bin/*
%if %{with_staticlink}
%{coriolisTop}/%{_lib}/*.a
@ -168,6 +125,8 @@ Development files for the Coriolis 2 package.
%{coriolisTop}/%{_lib}/*.so
%endif
%{coriolisTop}/%{python_sitedir}/*.so
%{coriolisTop}/%{python_sitedir}/cumulus/*.py
%{coriolisTop}/%{python_sitedir}/stratus/*.py
#%config(noreplace) %{_sysconfdir}/ld.so.conf.d/*
%config(noreplace) %{_sysconfdir}/coriolis2/*.xml
%config(noreplace) %{coriolisTop}/share/coriolis2/flute-2.4/*.dat
@ -187,11 +146,15 @@ Development files for the Coriolis 2 package.
%dir %{coriolisTop}/include/coriolis2/hurricane/isobar
%dir %{coriolisTop}/include/coriolis2
%dir %{coriolisTop}/include/coriolis2/crlcore
%dir %{coriolisTop}/include/coriolis2/nimbus
%dir %{coriolisTop}/include/coriolis2/metis
%dir %{coriolisTop}/include/coriolis2/mauka
%dir %{coriolisTop}/include/coriolis2/knik
%dir %{coriolisTop}/include/coriolis2/katabatic
%dir %{coriolisTop}/include/coriolis2/kite
%dir %{coriolisTop}/include/coriolis2/equinox
%dir %{coriolisTop}/include/coriolis2/solstice
%dir %{coriolisTop}/include/coriolis2/unicorn
%{coriolisTop}/share/cmake/Modules/*.cmake
%{coriolisTop}/include/vlsisapd/agds/*.h
%{coriolisTop}/include/vlsisapd/cif/*.h
@ -201,11 +164,15 @@ Development files for the Coriolis 2 package.
%{coriolisTop}/include/coriolis2/hurricane/viewer/*.h
%{coriolisTop}/include/coriolis2/hurricane/isobar/*.h
%{coriolisTop}/include/coriolis2/crlcore/*.h
%{coriolisTop}/include/coriolis2/nimbus/*.h
%{coriolisTop}/include/coriolis2/metis/*.h
%{coriolisTop}/include/coriolis2/mauka/*.h
%{coriolisTop}/include/coriolis2/knik/*.h
%{coriolisTop}/include/coriolis2/katabatic/*.h
%{coriolisTop}/include/coriolis2/kite/*.h
%{coriolisTop}/include/coriolis2/equinox/*.h
%{coriolisTop}/include/coriolis2/solstice/*.h
%{coriolisTop}/include/coriolis2/unicorn/*.h
%changelog

View File

@ -32,11 +32,13 @@ def stripPath ( pathName ):
def guessOs ():
osSLSoC5x_64 = re.compile (".*Linux.*el5.*x86_64.*")
osSLSoC5x = re.compile (".*Linux.*(el5|2.6.23.13.*SoC).*")
osLinux_64 = re.compile (".*Linux.*x86_64.*")
osLinux = re.compile (".*Linux.*")
osDarwin = re.compile (".*Darwin.*")
osSLSoC5x_64 = re.compile (".*Linux.*el5.*x86_64.*")
osSLSoC5x = re.compile (".*Linux.*(el5|2.6.23.13.*SoC).*")
osLinux_64 = re.compile (".*Linux.*x86_64.*")
osLinux = re.compile (".*Linux.*")
osDarwin = re.compile (".*Darwin.*")
osUbuntu1004 = re.compile (".*Linux.*ubuntu.*")
osUbuntu1004_64 = re.compile (".*Linux.*ubuntu.*x86_64.*")
uname = subprocess.Popen ( ["uname", "-srm"], stdout=subprocess.PIPE )
lines = uname.stdout.readlines()
@ -49,8 +51,13 @@ def guessOs ():
elif osLinux_64 .match(lines[0]):
osType = "Linux.x86_64"
libDir = "lib64"
elif osLinux .match(lines[0]): osType = "Linux.i386"
elif osDarwin .match(lines[0]): osType = "Darwin"
elif osLinux .match(lines[0]): osType = "Linux.i386"
elif osDarwin.match(lines[0]): osType = "Darwin"
elif osUbuntu1004_64.match(lines[0]):
osType = "Linux.Ubuntu1004"
libDir = "lib64"
elif osUbuntu1004.match(lines[0]):
osType = "Linux.Ubuntu1004"
else:
uname = subprocess.Popen ( ["uname", "-sr"], stdout=subprocess.PIPE )
osType = uname.stdout.readlines()[0][:-1]
@ -138,9 +145,13 @@ fi
strippedLibraryPath = "%s:%s" % ( absLibDir, strippedLibraryPath )
if options.python:
pyVersion = sys.version_info
version = "%d.%d" % (pyVersion[0],pyVersion[1])
sitePackagesDir = "%s/python%s/site-packages" % (absLibDir,version)
pyVersion = sys.version_info
version = "%d.%d" % (pyVersion[0],pyVersion[1])
if osType[8] == "Linux.SL":
sitePackagesDir = "%s/python%s/site-packages" % (absLibDir,version)
else:
sitePackagesDir = "%s/python%s/dist-packages" % (absLibDir,version)
strippedPythonPath = "%s:" % (sitePackagesDir) + strippedPythonPath
strippedPythonPath = "%s/cumulus:" % (sitePackagesDir) + strippedPythonPath
strippedPythonPath = "%s/stratus:" % (sitePackagesDir) + strippedPythonPath

View File

@ -0,0 +1,5 @@
coriolis2 (1.0.1881-1) unstable; urgency=low
* Initial release. Closes: #00001
-- Jean-Paul Chaput <Jean-Paul.Chaput@lip6.fr> Mon, 31 Jan 2011 18:03:55 +0100

1
bootstrap/debian/compat Normal file
View File

@ -0,0 +1 @@
7

21
bootstrap/debian/control Normal file
View File

@ -0,0 +1,21 @@
Source: coriolis2
Section: electronics
Priority: optional
Maintainer: Jean-Paul Chaput <Jean-Paul.Chaput@lip6.fr>
Build-Depends: debhelper (>= 7), quilt, bison, flex, libboost-all-dev, libxml2-dev, qt4-dev-tools,
texlive-full, doxygen, python-all-dev (>= 2.4), python-central (>= 0.5.6)
XS-Python-Version: >= 2.4
Standards-Version: 3.8.4
Homepage: http://www-soc.lip6.fr/recherche/cian/coriolis-2/
Package: coriolis2
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
XB-Python-Version: ${python:Versions}
Description: VLSI Place & Route CAD Tools
Coriolis is the new CAD tool suite intended to replace the
physical backend (P&R) flow of Alliance.
.
The Knik global router makes use of FLUTE, which is redistributed
under is own license. FLUTE is copyrighted by Dr. Chris C. N. Chu
from the Iowa State University <http://home.eng.iastate.edu/~cnchu>.

View File

@ -0,0 +1,25 @@
This work was packaged for Debian by:
Jean-Paul Chaput <Jean-Paul.Chaput@lip6.fr> on Mon, 20 Dec 2010 16:53:46 +0100
It was downloaded from <http://www-soc.lip6.fr/recherche/cian/coriolis-2>
Upstream Author(s):
The Coriolis Team <coriolis-cvs@soc.lip6.fr>
Copyright:
Copyright (C) 2000-2010 Bull S.A. All rigths reserved
Copyright (C) 2000-2010 Universite Pierre & Marie Curie (UPMC)
License:
GPL version 2
The Debian packaging is:
Copyright (C) 2010 Universite Pierre & Marie Curie (UPMC)
and is licensed under the GPL version 2,
see `/usr/share/common-licenses/GPL-2'.

View File

@ -0,0 +1,34 @@
Document: coriolis2
Title: Coriolis2 Documentation
Abstract: VLSI Place & Route CAD Tools Documentation
Section: electronics
Format: text
Files: /usr/share/doc/coriolis2/README.tex.gz
/usr/share/doc/coriolis2/en/latex/hurricane/*
/usr/share/doc/coriolis2/en/latex/stratus/stratus.tex.gz
/usr/share/doc/coriolis2/en/latex/dpgen/dpgen.tex
/usr/share/doc/coriolis2/en/latex/patterns/patterns.tex.gz
/usr/share/doc/coriolis2/en/latex/stratus_developper/stratus_developper.tex
Format: DVI
Files: /usr/share/doc/coriolis2/README.dvi.gz
/usr/share/doc/coriolis2/en/latex/stratus/stratus.dvi.gz
/usr/share/doc/coriolis2/en/latex/dpgen/dpgen.dvi.gz
/usr/share/doc/coriolis2/en/latex/patterns/patterns.dvi.gz
/usr/share/doc/coriolis2/en/latex/stratus_developper/stratus_developper.dvi.gz
Format: PDF
Files: /usr/share/doc/coriolis2/README.pdf.gz
/usr/share/doc/coriolis2/en/latex/stratus/stratus.pdf.gz
/usr/share/doc/coriolis2/en/latex/dpgen/dpgen.pdf.gz
/usr/share/doc/coriolis2/en/latex/patterns/patterns.pdf.gz
/usr/share/doc/coriolis2/en/latex/stratus_developper/stratus_developper.pdf.gz
Format: HTML
Index: /usr/share/doc/coriolis2/en/index.html
Files: /usr/share/doc/coriolis2/en/html/hurricane/*.html
/usr/share/doc/coriolis2/en/html/stratus/*.html
/usr/share/doc/coriolis2/en/html/dpgen/*.html
/usr/share/doc/coriolis2/en/html/patterns/*.html
/usr/share/doc/coriolis2/en/html/stratus_developper/*.html

View File

@ -0,0 +1,40 @@
#!/bin/sh
# postinst script for coriolis2
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
configure)
ldconfig
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View File

@ -0,0 +1,38 @@
#!/bin/sh
# postrm script for coriolis2
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postrm> `remove'
# * <postrm> `purge'
# * <old-postrm> `upgrade' <new-version>
# * <new-postrm> `failed-upgrade' <old-version>
# * <new-postrm> `abort-install'
# * <new-postrm> `abort-install' <old-version>
# * <new-postrm> `abort-upgrade' <old-version>
# * <disappearer's-postrm> `disappear' <overwriter>
# <overwriter-version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
ldconfig
;;
*)
echo "postrm called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

0
bootstrap/debian/docs Normal file
View File

13
bootstrap/debian/rules Executable file
View File

@ -0,0 +1,13 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
# Uncomment this to turn on verbose mode.
export DH_VERBOSE=1
%:
dh $@ --with python-central

View File

@ -0,0 +1 @@
3.0 (quilt)