Fix bug, check VF is active before destroy
[osm/openvim.git] / Makefile
index 3f9feff..bae4fe1 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -4,36 +4,57 @@ SHELL := /bin/bash
 all: clean build pip install
 lite: clean build_lite pip_lite install_lite
 
+clean_deb:
+       rm -rf .build
 clean:
        rm -rf build
+       find osm_openvim -name '*.pyc' -delete
+       find osm_openvim -name '*.pyo' -delete
 
 prepare_lite:
+       pip install --user --upgrade setuptools
        mkdir -p build
-       cp -r  osm_openvim/ build/lib_osm_openvim
+       VER1=$(shell git describe | sed -e 's/^v//' |cut -d- -f1); \
+       VER2=$(shell git describe | cut -d- -f2); \
+       VER3=$(shell git describe | cut -d- -f3); \
+       echo "$$VER1.dev$$VER2+$$VER3" > build/OVIM_VERSION
+       cp MANIFEST.in build/
+       sed -i "s/include OPENVIM_VERSION/include OVIM_VERSION/g" build/MANIFEST.in
+       sed -i "s/recursive-include osm_openvim/recursive-include lib_osm_openvim/g" build/MANIFEST.in
+       sed -i "s/include openflow/include openflow-lib/g" build/MANIFEST.in
+       sed -i '/include openvimd/d' build/MANIFEST.in
+       sed -i '/include openvim/d' build/MANIFEST.in
+       cp README_lite.rst build/README.rst
+       cp setup_lite.py build/setup.py
+       cp stdeb_lite.cfg build/stdeb.cfg
+       cp -r osm_openvim/ build/lib_osm_openvim
        rm build/lib_osm_openvim/httpserver.py
        rm build/lib_osm_openvim/openvimd.cfg
        cp -r database_utils build/lib_osm_openvim/
        cp -r scripts build/lib_osm_openvim/
-       cp MANIFEST.in build/
-       cp setup_lite.py build/setup.py
-       cp openflow build/
-       sed -i "s/from osm_openvim/from lib_osm_openvim/g" build/openflow
-       sed -i "s/import osm_openvim/import lib_osm_openvim/g" build/openflow
-       sed -i "s/import osm_openvim; print osm_openvim.__path__[0]/import lib_osm_openvim; print lib_osm_openvim.__path__[0]/g" build/lib_osm_openvim/database_utils/migrate_vim_db.sh
-       sed -i "s/recursive-include osm_openvim */recursive-include lib_osm_openvim */g" build/MANIFEST.in
-       sed '/include openvimd/d' build/MANIFEST.in
-       sed '/include openvim/d' build/MANIFEST.in
+       cp openflow build/openflow-lib
+       sed -i "s/from osm_openvim/from lib_osm_openvim/g" build/openflow-lib
+       sed -i "s/import osm_openvim/import lib_osm_openvim/g" build/openflow-lib
+       sed -i "s/import osm_openvim; print osm_openvim\.__path__\[0\]/import lib_osm_openvim; print lib_osm_openvim\.__path__\[0\]/g" build/lib_osm_openvim/database_utils/migrate_vim_db.sh
+       sed -i "s/__import__(\"osm_openvim\.\"/__import__(\"lib_osm_openvim\.\"/g" build/lib_osm_openvim/ovim.py
 
 prepare:
+       pip install --user --upgrade setuptools
        mkdir -p build
+       VER1=$(shell git describe | sed -e 's/^v//' |cut -d- -f1); \
+       VER2=$(shell git describe | cut -d- -f2); \
+       VER3=$(shell git describe | cut -d- -f3); \
+       echo "$$VER1.dev$$VER2+$$VER3" > build/OPENVIM_VERSION
+       cp MANIFEST.in build/
+       cp README.rst build/
+       cp setup.py build/
+       cp stdeb.cfg build/
        cp -r osm_openvim/  build/
        cp -r scripts build/osm_openvim/
        cp -r database_utils build/osm_openvim/
        cp -r templates build/osm_openvim/
        cp -r test build/osm_openvim/
        cp -r charm build/osm_openvim/
-       cp MANIFEST.in build/
-       cp setup.py build/
        cp openflow build/
        cp openvim build/
        cp openvimd build/
@@ -44,28 +65,38 @@ build: prepare
 build_lite: prepare_lite
        python -m py_compile build/lib_osm_openvim/*.py
 
-#deb:
-#      cd build && python setup.py --command-packages=stdeb.command bdist_deb
-#
-#debianize:
-#      cd build && python setup.py --command-packages=stdeb.command debianize
-
 pip: clean build
-       cd build; ./setup.py sdist
+       cd build && ./setup.py sdist
 
 pip_lite: clean build_lite
-       cd build; ./setup.py sdist
-
-install: clean build
-       cd build/dist; pip  install osm_openvim*
-
-install_lite: clean build_lite
-       cd build/dist; pip  install  lib_osm_openvim-*
+       cd build && ./setup.py sdist
 
+package_openvim: clean prepare
+       #apt-get install -y python-stdeb
+       cd build && python setup.py --command-packages=stdeb.command sdist_dsc --with-python2=True
+       cd build && cp osm_openvim/scripts/python-osm-openvim.postinst deb_dist/osm-openvim*/debian/
+       cd build/deb_dist/osm-openvim* && dpkg-buildpackage -rfakeroot -uc -us
+       mkdir -p .build
+       cp build/deb_dist/python-*.deb .build/
 
+package_lib: clean prepare_lite
+       #apt-get install -y python-stdeb
+       cd build && python setup.py --command-packages=stdeb.command sdist_dsc --with-python2=True
+       cd build/deb_dist/lib-osm-openvim* && dpkg-buildpackage -rfakeroot -uc -us
+       mkdir -p .build
+       cp build/deb_dist/python-*.deb .build/
 
+package: clean_deb package_openvim package_lib
 
+snap:
+       echo "Nothing to be done yet"
 
+install: clean build
+       #cd build/dist; pip install --user osm_openvim*
+       cd build/dist; pip install osm_openvim*
 
+install_lite: clean build_lite
+       #cd build/dist; pip install --user lib_osm_openvim-*
+       cd build/dist; pip install lib_osm_openvim-*