improved python/java/.NET archives, available on all platforms, with license and readme file

This commit is contained in:
lperron@google.com
2012-09-02 15:20:21 +00:00
parent c8b7265209
commit bd25bee356
17 changed files with 192 additions and 124 deletions

View File

@@ -53,7 +53,7 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="Google.OrTools.Graph">
<HintPath>..\..\..\bin\Google.OrTools.Graph.dll</HintPath>
<HintPath>..\..\bin\Google.OrTools.Graph.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />

View File

@@ -53,7 +53,7 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="Google.OrTools.LinearSolver">
<HintPath>..\..\..\bin\Google.OrTools.LinearSolver.dll</HintPath>
<HintPath>..\..\bin\Google.OrTools.LinearSolver.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />

View File

@@ -53,7 +53,7 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="Google.OrTools.Algorithms">
<HintPath>..\..\..\bin\Google.OrTools.Algorithms.dll</HintPath>
<HintPath>..\..\bin\Google.OrTools.Algorithms.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />

View File

@@ -53,7 +53,7 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="Google.OrTools.LinearSolver">
<HintPath>..\..\..\bin\Google.OrTools.LinearSolver.dll</HintPath>
<HintPath>..\..\bin\Google.OrTools.LinearSolver.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />

View File

@@ -56,7 +56,7 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="Google.OrTools.ConstraintSolver">
<HintPath>..\..\..\bin\Google.OrTools.ConstraintSolver.dll</HintPath>
<HintPath>..\..\bin\Google.OrTools.ConstraintSolver.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />

View File

@@ -56,7 +56,7 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="Google.OrTools.ConstraintSolver">
<HintPath>..\..\..\bin\Google.OrTools.ConstraintSolver.dll</HintPath>
<HintPath>..\..\bin\Google.OrTools.ConstraintSolver.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />

View File

@@ -189,9 +189,9 @@ ifeq ("$(SYSTEM)","win")
tools\mkdir temp\or-tools.$(PORT)
tools\mkdir temp\or-tools.$(PORT)\bin
tools\mkdir temp\or-tools.$(PORT)\examples
tools\mkdir temp\or-tools.$(PORT)\examples\csharp
tools\mkdir temp\or-tools.$(PORT)\examples\csharp\solution
tools\mkdir temp\or-tools.$(PORT)\examples\csharp\solution\Properties
tools\mkdir temp\or-tools.$(PORT)\examples\
tools\mkdir temp\or-tools.$(PORT)\examples\solution
tools\mkdir temp\or-tools.$(PORT)\examples\solution\Properties
tools\mkdir temp\or-tools.$(PORT)\data
tools\mkdir temp\or-tools.$(PORT)\data\discrete_tomography
tools\mkdir temp\or-tools.$(PORT)\data\fill_a_pix
@@ -200,11 +200,12 @@ ifeq ("$(SYSTEM)","win")
tools\mkdir temp\or-tools.$(PORT)\data\survo_puzzle
tools\mkdir temp\or-tools.$(PORT)\data\quasigroup_completion
copy LICENSE-2.0.txt temp$Sor-tools.$(PORT)
copy tools\README.dotnet temp\or-tools.$(PORT)\README
copy bin\Google.OrTools.*.dll temp\or-tools.$(PORT)\bin
copy examples\csharp\*.cs temp\or-tools.$(PORT)\examples\csharp
copy examples\csharp\*.sln temp\or-tools.$(PORT)\examples\csharp
copy examples\csharp\solution\*.csproj temp\or-tools.$(PORT)\examples\csharp\solution
copy examples\csharp\solution\Properties\*.cs temp\or-tools.$(PORT)\examples\csharp\solution\Properties
copy examples\csharp\*.cs temp\or-tools.$(PORT)\examples
copy examples\csharp\*.sln temp\or-tools.$(PORT)\examples
copy examples\csharp\solution\*.csproj temp\or-tools.$(PORT)\examples\solution
copy examples\csharp\solution\Properties\*.cs temp\or-tools.$(PORT)\examples\solution\Properties
copy data\discrete_tomography\* temp\or-tools.$(PORT)\data\discrete_tomography
copy data\fill_a_pix\* temp\or-tools.$(PORT)\data\fill_a_pix
copy data\minesweeper\* temp\or-tools.$(PORT)\data\minesweeper
@@ -216,9 +217,7 @@ else
mkdir temp
mkdir temp/or-tools.$(PORT)
mkdir temp/or-tools.$(PORT)/bin
mkdir temp/or-tools.$(PORT)/lib
mkdir temp/or-tools.$(PORT)/examples
mkdir temp/or-tools.$(PORT)/examples/csharp
mkdir temp/or-tools.$(PORT)/data
mkdir temp/or-tools.$(PORT)/data/discrete_tomography
mkdir temp/or-tools.$(PORT)/data/fill_a_pix
@@ -227,9 +226,10 @@ else
mkdir temp/or-tools.$(PORT)/data/survo_puzzle
mkdir temp/or-tools.$(PORT)/data/quasigroup_completion
cp LICENSE-2.0.txt temp/or-tools.$(PORT)
cp tools/README.dotnet temp/or-tools.$(PORT)/README
cp bin/Google.OrTools.*.dll temp/or-tools.$(PORT)/bin
cp lib/libGoogle.OrTools.*.so temp/or-tools.$(PORT)/lib
cp examples/csharp/*.cs temp/or-tools.$(PORT)/examples/csharp
cp lib/libGoogle.OrTools.*.so temp/or-tools.$(PORT)/bin
cp examples/csharp/*.cs temp/or-tools.$(PORT)/examples
cp data/discrete_tomography/* temp/or-tools.$(PORT)/data/discrete_tomography
cp data/fill_a_pix/* temp/or-tools.$(PORT)/data/fill_a_pix
cp data/minesweeper/* temp/or-tools.$(PORT)/data/minesweeper

View File

@@ -362,9 +362,11 @@ java_archive: java
$(MKDIR) temp
$(MKDIR) temp$Sor-tools.$(PORT)
$(MKDIR) temp$Sor-tools.$(PORT)$Slib
$(MKDIR) temp$Sor-tools.$(PORT)$Sobjs
$(COPY) LICENSE-2.0.txt temp$Sor-tools.$(PORT)
$(COPY) tools$SREADME.java temp$Sor-tools.$(PORT)$SREADME
$(COPY) lib$S*.jar temp$Sor-tools.$(PORT)$Slib
$(COPY) $(LIB_DIR)$S$(LIBPREFIX)jni*.$(JNI_LIB_EXT) temp$Sor-tools.$(PORT)$Slib
$(COPY) lib$S$(LIBPREFIX)jni*.$(JNI_LIB_EXT) temp$Sor-tools.$(PORT)$Slib
ifeq ("$(SYSTEM)","win")
tools\mkdir temp\or-tools.$(PORT)\examples
tools\mkdir temp\or-tools.$(PORT)\examples\com

View File

@@ -125,39 +125,44 @@ python_archive: python
$(MKDIR) temp
$(MKDIR) temp$Sor-tools.$(PORT)
$(MKDIR) temp$Sor-tools.$(PORT)$Sexamples
$(MKDIR) temp$Sor-tools.$(PORT)$Sexamples$Spython
$(MKDIR) temp$Sor-tools.$(PORT)$Ssrc
$(MKDIR) temp$Sor-tools.$(PORT)$Ssrc$Sconstraint_solver
$(MKDIR) temp$Sor-tools.$(PORT)$Ssrc$Slinear_solver
$(MKDIR) temp$Sor-tools.$(PORT)$Ssrc$Sgraph
$(MKDIR) temp$Sor-tools.$(PORT)$Ssrc$Salgorithms
$(MKDIR) temp$Sor-tools.$(PORT)$Ssrc$Sgen
$(MKDIR) temp$Sor-tools.$(PORT)$Ssrc$Sgen$Sconstraint_solver
$(MKDIR) temp$Sor-tools.$(PORT)$Ssrc$Sgen$Slinear_solver
$(MKDIR) temp$Sor-tools.$(PORT)$Ssrc$Sgen$Sgraph
$(MKDIR) temp$Sor-tools.$(PORT)$Ssrc$Sgen$Salgorithms
$(COPY) LICENSE-2.0.txt temp$Sor-tools.$(PORT)
$(COPY) examples$Spython$S*.py temp$Sor-tools.$(PORT)$Sexamples$Spython
$(COPY) src$Sgen$Sconstraint_solver$S*.py temp$Sor-tools.$(PORT)$Ssrc$Sgen$Sconstraint_solver
$(COPY) src$Sgen$Slinear_solver$S*.py temp$Sor-tools.$(PORT)$Ssrc$Sgen$Slinear_solver
$(COPY) src$Sgen$Sgraph$S*.py temp$Sor-tools.$(PORT)$Ssrc$Sgen$Sgraph
$(COPY) src$Sgen$Salgorithms$S*.py temp$Sor-tools.$(PORT)$Ssrc$Sgen$Salgorithms
$(COPY) src$Sconstraint_solver$S*.py temp$Sor-tools.$(PORT)$Ssrc$Sconstraint_solver
$(COPY) src$Slinear_solver$S*.py temp$Sor-tools.$(PORT)$Ssrc$Slinear_solver
$(COPY) src$Sgraph$S*.py temp$Sor-tools.$(PORT)$Ssrc$Sgraph
$(COPY) src$Salgorithms$S*.py temp$Sor-tools.$(PORT)$Ssrc$Salgorithms
ifeq ("$(SYSTEM)","win")
cd temp$Sor-tools.$(PORT) && ..\..\tools\tar.exe -C ..$S.. -c -v --exclude *svn* data | ..\..\tools\tar.exe xvm
$(COPY) src$Sgen$Sconstraint_solver$S_pywrapcp.pyd temp$Sor-tools.$(PORT)$Ssrc$Sgen$Sconstraint_solver
$(COPY) src$Sgen$Sconstraint_solver$S_pywraprouting.pyd temp$Sor-tools.$(PORT)$Ssrc$Sgen$Sconstraint_solver
$(COPY) src$Sgen$Slinear_solver$S_pywraplp.pyd temp$Sor-tools.$(PORT)$Ssrc$Sgen$Slinear_solver
$(COPY) src$Sgen$Sgraph$S_pywrapgraph.pyd temp$Sor-tools.$(PORT)$Ssrc$Sgen$Sgraph
$(COPY) src$Sgen$Salgorithms$S_pywrapknapsack_solver.pyd temp$Sor-tools.$(PORT)$Ssrc$Sgen$Salgorithms
cd temp && ..$Stools$Szip.exe -r ..$SGoogle.OrTools.python.$(PORT).$(SVNVERSION).zip or-tools.$(PORT)
$(WINDOWS_PYTHON_PATH)$Spython dependencies\sources\googlecode-support\scripts\googlecode_upload.py -s "Google OR-Tools, Python archive, $(PORT) platform, svn release $(SVNVERSION)" -p or-tools -l Type-Achive,$(CODEPORT),Featured Google.OrTools.python.$(PORT).$(SVNVERSION).zip -u $(USER) -w $(PASSWORD)
$(MKDIR) temp$Sor-tools.$(PORT)$Sdata
$(MKDIR) temp$Sor-tools.$(PORT)$Sconstraint_solver
$(MKDIR) temp$Sor-tools.$(PORT)$Slinear_solver
$(MKDIR) temp$Sor-tools.$(PORT)$Sgraph
$(MKDIR) temp$Sor-tools.$(PORT)$Salgorithms
$(COPY) src$Sgen$Sconstraint_solver$Spywrapcp.py temp$Sor-tools.$(PORT)$Sconstraint_solver
$(COPY) src$Sgen$Sconstraint_solver$Spywraprouting.py temp$Sor-tools.$(PORT)$Sconstraint_solver
$(COPY) src$Sgen$Slinear_solver$Spywraplp.py temp$Sor-tools.$(PORT)$Slinear_solver
$(COPY) src$Sgen$Sgraph$Spywrapgraph.py temp$Sor-tools.$(PORT)$Sgraph
$(COPY) src$Sgen$Salgorithms$Spywrapknapsack_solver.py temp$Sor-tools.$(PORT)$Salgorithms
$(COPY) lib$S_pywrapcp.$(DYNAMIC_SWIG_LIB_SUFFIX) temp$Sor-tools.$(PORT)$Sconstraint_solver
$(COPY) lib$S_pywraprouting.$(DYNAMIC_SWIG_LIB_SUFFIX) temp$Sor-tools.$(PORT)$Sconstraint_solver
$(COPY) lib$S_pywraplp.$(DYNAMIC_SWIG_LIB_SUFFIX) temp$Sor-tools.$(PORT)$Slinear_solver
$(COPY) lib$S_pywrapgraph.$(DYNAMIC_SWIG_LIB_SUFFIX) temp$Sor-tools.$(PORT)$Sgraph
$(COPY) lib$S_pywrapknapsack_solver.$(DYNAMIC_SWIG_LIB_SUFFIX) temp$Sor-tools.$(PORT)$Salgorithms
$(COPY) examples$Spython$S*.py temp$Sor-tools.$(PORT)$Sexamples
$(TOUCH) temp$Sor-tools.$(PORT)$Sconstraint_solver$S__init__.py
$(TOUCH) temp$Sor-tools.$(PORT)$Slinear_solver$S__init__.py
$(TOUCH) temp$Sor-tools.$(PORT)$Sgraph$S__init__.py
$(TOUCH) temp$Sor-tools.$(PORT)$Salgorithms$S__init__.py
$(COPY) tools$SREADME.python temp$Sor-tools.$(PORT)$SREADME
$(COPY) tools$Ssetup.py temp$Sor-tools.$(PORT)
$(SED) -i -e 's/VVVV/$(shell svnversion)/' temp$Sor-tools.$(PORT)$Ssetup.py
ifeq ($(SYSTEM),win)
-del temp\or-tools.$(PORT)\setup.py-e
cd temp\or-tools.$(PORT) && ..\..\tools\tar.exe -C ..\.. -c -v --exclude *svn* --exclude *roadef* data | ..\..\tools\tar.exe xvm
cd temp && ..\tools\zip.exe -r ..\Google.OrTools.python.$(PORT).$(SVNVERSION).zip or-tools.$(PORT)
else
cd temp$Sor-tools.$(PORT) && tar -C ..$S.. -c -v --exclude \*svn\* data | tar xvm -
$(COPY) _pywrap*.$(DYNAMIC_SWIG_LIB_SUFFIX) temp$Sor-tools.$(PORT)
cd temp && tar cvzf ..$SGoogle.OrTools.python.$(PORT).$(SVNVERSION).tar.gz or-tools.$(PORT)
$(SED) -i -e 's/\.dll/\.so/' temp/or-tools.$(PORT)/setup.py
-rm temp/or-tools.$(PORT)/setup.py-e
cd temp/or-tools.$(PORT) && tar -C ../.. -c -v --exclude *svn* --exclude *roadef* data | tar xvm
cd temp && tar cvzf ../Google.OrTools.python.$(PORT).$(SVNVERSION).tar.gz or-tools.$(PORT)
endif
-$(DELREC) temp
python_upload: python_archive
ifeq ($(SYSTEM),win)
$(WINDOWS_PYTHON_PATH)\python.exe dependencies\sources\googlecode-support\scripts\googlecode_upload.py -s "Google OR-Tools, Python archive, $(PORT) platform, svn release $(SVNVERSION)" -p or-tools -l Type-Achive,$(CODEPORT),Featured Google.OrTools.python.$(PORT).$(SVNVERSION).zip -u $(USER) -w $(PASSWORD)
else
python$(UNIX_PYTHON_VERSION) dependencies/sources/googlecode-support/scripts/googlecode_upload.py -s "Google OR-Tools, Python archive, $(PORT) platform, svn release $(SVNVERSION)" -p or-tools -l Type-Achive,$(CODEPORT),Featured Google.OrTools.python.$(PORT).$(SVNVERSION).tar.gz -u $(USER) -w $(PASSWORD)
endif

View File

@@ -30,6 +30,7 @@ DEL = rm -f
DELREC = rm -rf
S = /
CPSEP = :
SED = sed
# This is needed to find python.h
PYTHON_INC = -I/usr/include/python$(UNIX_PYTHON_VER) -I/usr/lib/python$(UNIX_PYTHON_VER)

View File

@@ -34,6 +34,7 @@ DELREC = tools\rm.exe -rf
MKDIR = md
COPY = copy
TOUCH = tools\touch.exe
SED = tools\sed.exe
# Compilation macros.
DEBUG=/O2 -DNDEBUG

View File

@@ -1,2 +0,0 @@
[egg_info]
tag_svn_revision = 1

View File

@@ -1,70 +0,0 @@
from setuptools import setup
from os.path import join as pjoin
from glob import glob as gg
setup(
name='or-tools',
version='1.0',
install_requires = ['google-apputils >= 0.3'],
dependency_links = ['http://google-apputils-python.googlecode.com/files/'],
packages=[
pjoin('src', 'constraint_solver'),
pjoin('src', 'gen', 'constraint_solver'),
pjoin('src', 'linear_solver'),
pjoin('src', 'gen', 'linear_solver'),
pjoin('src', 'graph'),
pjoin('src', 'gen', 'graph'),
pjoin('src', 'algorithms'),
pjoin('src', 'gen', 'algorithms'),
],
data_files=[('lib', [
pjoin('lib', '_pywrapcp.so'),
pjoin('lib', '_pywraprouting.so'),
pjoin('lib', '_pywraplp.so'),
pjoin('lib', '_pywrapknapsack_solver.so'),
pjoin('lib', '_pywrapgraph.so'),
]),
('or-tools', ['LICENSE-2.0.txt',]),
(pjoin('or-tools', 'examples', 'python'),
gg(pjoin('examples', 'python', '*.py'))),
(pjoin('or-tools', 'data', 'bacp'),
gg(pjoin('data', 'bacp', '*'))),
(pjoin('or-tools', 'data', 'cvrptw'),
gg(pjoin('data', 'cvrptw', '*'))),
(pjoin('or-tools', 'data', 'discrete_tomography'),
gg(pjoin('data', 'discrete_tomography', '*'))),
(pjoin('or-tools', 'data', 'et_jobshop', 'jet'),
gg(pjoin('data', 'et_jobshop', 'jet', '*'))),
(pjoin('or-tools', 'data', 'et_jobshop', 'dyn'),
gg(pjoin('data', 'et_jobshop', 'dyn', '*'))),
(pjoin('or-tools', 'data', 'fill_a_pix'),
gg(pjoin('data', 'fill_a_pix', '*'))),
(pjoin('or-tools', 'data', 'jobshop'),
gg(pjoin('data', 'jobshop', '*'))),
(pjoin('or-tools', 'data', 'minesweeper'),
gg(pjoin('data', 'minesweeper', '*'))),
(pjoin('or-tools', 'data', 'multidim_knapsack'),
gg(pjoin('data', 'multidim_knapsack', '*'))),
(pjoin('or-tools', 'data', 'nonogram_regular'),
gg(pjoin('data', 'nonogram_regular', '*'))),
(pjoin('or-tools', 'data', 'pdptw'),
gg(pjoin('data', 'pdptw', '*'))),
(pjoin('or-tools', 'data', 'quasigroup_completion'),
gg(pjoin('data', 'quasigroup_completion', '*'))),
(pjoin('or-tools', 'data', 'rogo'),
gg(pjoin('data', 'rogo', '*'))),
(pjoin('or-tools', 'data', 'steel_mill'),
gg(pjoin('data', 'steel_mill', '*'))),
(pjoin('or-tools', 'data', 'strimko'),
gg(pjoin('data', 'strimko', '*'))),
(pjoin('or-tools', 'data', 'survo_puzzleX'),
gg(pjoin('data', 'survo_puzzle', '*'))),
],
license='Apache 2.0',
author = "Google Inc",
author_email = "lperron@google.com",
description = "Google OR-Tools",
keywords = ("operations research, constraint programming, " +
"linear programming"),
url = "http://code.google.com/p/or-tools/",
)

40
tools/README.dotnet Normal file
View File

@@ -0,0 +1,40 @@
This file describes how to use the or-tools .NET binary archive.
OR-Tools is located at http://code.google.com/p/or-tools
This module has been tested under:
- ubuntu 10.04 and up (32 and 64 bit).
- Mac OS X Snow Leopard with xcode 3.2.x and 4.x (64 bit)
- Mac OS X Lion with xcode 4.x (64 bit).
- Microsoft Windows with Visual Studio 2010 express C++ and
Visual studio 2010 (32 and 64 bit).
Upon decompressing the archive, you will get the following structure:
or-tools/
LICENSE-2.0.txt <- Apache License
README <- This file
data/ <- Data for the examples
examples/ <- C# examples
bin/ <- Directory containing assemblies and native libraries
Running the examples will involve compiling them, then running them.
Let's compile examples/csflow.cs and run it.
on windows 32 bit:
csc /target:exe /out:csflow.exe /platform:x86 /lib:bin /r:Google.OrTools.Graph.dll examples\csflow.cs
csflow.exe
on windows 64 bit:
csc /target:exe /out:csflow.exe /platform:x64 /lib:bin /r:Google.OrTools.Graph.dll examples\csflow.cs
csflow.exe
On linux (mono comes from the distribution, on ubuntu at least)
mono-csc /target:exe /out:csflow.exe /platform:anycpu /lib:bin /r:Google.OrTools.Graph.dll examples/csflow.cs
MONO_PATH=bin mono csflow.exe
On Mac OS X (mono is compiled under dependencies/install)
dependencies\install\bin\mcs /target:exe /out:csflow.exe /platform:anycpu /lib:bin /r:Google.OrTools.Graph.dll examples/csflow.cs
MONO_PATH=bin dependencies\install\bin\mono csflow.exe

28
tools/README.java Normal file
View File

@@ -0,0 +1,28 @@
This file describes how to use the or-tools java binary archive.
OR-Tools is located at http://code.google.com/p/or-tools
This module has been tested under:
- ubuntu 10.04 and up (32 and 64 bit).
- Mac OS X Snow Leopard with xcode 3.2.x and 4.x (64 bit)
- Mac OS X Lion with xcode 4.x (64 bit).
- Microsoft Windows with Visual Studio 2010 express C++ and
Visual studio 2010 (32 and 64 bit).
Upon decompressing the archive, you will get the following structure:
or-tools/
LICENSE-2.0.txt <- Apache License
README <- This file
data/ <- Data for the examples
examples/ <- Java examples
lib/ <- Directory containing jar files and native libraries
objs/ <- Directory that will contain compiled classes
Running the examples will involve compiling them, then running them.
Let's compile and run
examples/com/google/ortools/constraintsolver/samples/RabbitsPheasants.java
javac -d objs -cp lib/com.google.ortools.constraintsolver.jar examples/com/google/ortools/constraintsolver/samples/RabbitsPheasants.java
java -Djava.library.path=lib -cp objs:lib/com.google.ortools.constraintsolver.jar com.google.ortools.constraintsolver.samples.RabbitsPheasants

31
tools/README.python Normal file
View File

@@ -0,0 +1,31 @@
This file describes how to install the or-tools python binary archive.
OR-Tools is located at http://code.google.com/p/or-tools
These modules have been tested under:
- ubuntu 10.04 and up (32 and 64 bit).
- Mac OS X Snow Leopard with xcode 3.2.x and 4.x (64 bit)
- Mac OS X Lion with xcode 4.x (64 bit).
- Microsoft Windows with Visual Studio 2010 express C++ and
Visual studio 2010 (32 and 64 bit).
Upon decompressing the archive, you will get the following structure:
or-tools/
LICENSE-2.0.txt <- Apache License
README <- This file
data/ <- Data for the examples.
examples/ <- Python examples
algorithms/ <- Directory containing non-graph algorithms.
constraint_solver/ <- The main directory for the constraint library.
graph/ <- Graph algorithms.
linear_solver/ <- Linear solver wrapper.
To install the package, please run:
sudo python setup.py install
or
python setup.py install --user
Once this is done, you can run the samples in the examples/ directory.
As in python examples/hidato_puzzle.py

32
tools/setup.py Normal file
View File

@@ -0,0 +1,32 @@
from setuptools import setup
from os.path import join as pjoin
setup(
name='or-tools',
version='1.0.VVVV',
packages=[ 'constraint_solver',
'linear_solver',
'graph',
'algorithms'
],
install_requires = ['google-apputils >= 0.3', 'or-tools-module'],
dependency_links = ['http://google-apputils-python.googlecode.com/files/'],
data_files=[('constraint_solver',
[pjoin('constraint_solver', '_pywrapcp.dll'),
pjoin('constraint_solver', '_pywraprouting.dll']),
('linear_solver',
[pjoin('linear_solver', '_pywraplp.dll'), ]),
('graph',
[pjoin('graph', '_pywrapgraph.dll'), ]),
('algorithms',
[pjoin('algorithms', '_pywrapknapsack_solver.dll'), ]),
],
license='Apache 2.0',
author = "Google Inc",
author_email = "lperron@google.com",
description = "Google OR-Tools Python Module",
keywords = ("operations research, constraint programming, " +
"linear programming" + "flow algorithms" +
"python"),
url = "http://code.google.com/p/or-tools/",
)