blob: 32148706a21e11044f2cea0f09d36362102f04ba [file] [log] [blame]
mirabald87877c2017-03-31 15:15:52 +02001#!/usr/bin/env bash
2SHELL := /bin/bash
3
mirabal9f657102017-04-10 20:05:40 +02004all: clean build pip install
5lite: clean build_lite pip_lite install_lite
mirabald87877c2017-03-31 15:15:52 +02006
garciadeblas0119d7d2017-04-21 07:10:23 +02007clean_deb:
8 rm -rf .build
mirabald87877c2017-03-31 15:15:52 +02009clean:
10 rm -rf build
garciadeblas8b7767b2017-04-20 19:21:49 +020011 find osm_openvim -name '*.pyc' -delete
12 find osm_openvim -name '*.pyo' -delete
mirabald87877c2017-03-31 15:15:52 +020013
mirabal9f657102017-04-10 20:05:40 +020014prepare_lite:
garciadeblas334af282017-04-24 18:56:07 +020015 pip install --user --upgrade setuptools
mirabal9f657102017-04-10 20:05:40 +020016 mkdir -p build
garciadeblas8b7767b2017-04-20 19:21:49 +020017 VER1=$(shell git describe | sed -e 's/^v//' |cut -d- -f1); \
18 VER2=$(shell git describe | cut -d- -f2); \
19 VER3=$(shell git describe | cut -d- -f3); \
20 echo "$$VER1.dev$$VER2+$$VER3" > build/OVIM_VERSION
21 cp MANIFEST.in build/
22 sed -i "s/include OPENVIM_VERSION/include OVIM_VERSION/g" build/MANIFEST.in
garciadeblas0119d7d2017-04-21 07:10:23 +020023 sed -i "s/recursive-include osm_openvim/recursive-include lib_osm_openvim/g" build/MANIFEST.in
garciadeblas8b7767b2017-04-20 19:21:49 +020024 sed -i "s/include openflow/include openflow-lib/g" build/MANIFEST.in
garciadeblas0119d7d2017-04-21 07:10:23 +020025 sed -i '/include openvimd/d' build/MANIFEST.in
26 sed -i '/include openvim/d' build/MANIFEST.in
garciadeblas8b7767b2017-04-20 19:21:49 +020027 cp README_lite.rst build/README.rst
28 cp setup_lite.py build/setup.py
29 cp stdeb_lite.cfg build/stdeb.cfg
30 cp -r osm_openvim/ build/lib_osm_openvim
mirabal9f657102017-04-10 20:05:40 +020031 rm build/lib_osm_openvim/httpserver.py
32 rm build/lib_osm_openvim/openvimd.cfg
33 cp -r database_utils build/lib_osm_openvim/
34 cp -r scripts build/lib_osm_openvim/
garciadeblas8b7767b2017-04-20 19:21:49 +020035 cp openflow build/openflow-lib
36 sed -i "s/from osm_openvim/from lib_osm_openvim/g" build/openflow-lib
37 sed -i "s/import osm_openvim/import lib_osm_openvim/g" build/openflow-lib
garciadeblas0119d7d2017-04-21 07:10:23 +020038 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
mirabal9f657102017-04-10 20:05:40 +020039
40prepare:
garciadeblas334af282017-04-24 18:56:07 +020041 pip install --user --upgrade setuptools
mirabal9f657102017-04-10 20:05:40 +020042 mkdir -p build
garciadeblas8b7767b2017-04-20 19:21:49 +020043 VER1=$(shell git describe | sed -e 's/^v//' |cut -d- -f1); \
44 VER2=$(shell git describe | cut -d- -f2); \
45 VER3=$(shell git describe | cut -d- -f3); \
46 echo "$$VER1.dev$$VER2+$$VER3" > build/OPENVIM_VERSION
47 cp MANIFEST.in build/
48 cp README.rst build/
49 cp setup.py build/
50 cp stdeb.cfg build/
mirabal9f657102017-04-10 20:05:40 +020051 cp -r osm_openvim/ build/
52 cp -r scripts build/osm_openvim/
53 cp -r database_utils build/osm_openvim/
54 cp -r templates build/osm_openvim/
55 cp -r test build/osm_openvim/
56 cp -r charm build/osm_openvim/
mirabal9f657102017-04-10 20:05:40 +020057 cp openflow build/
58 cp openvim build/
59 cp openvimd build/
60
61build: prepare
62 python -m py_compile build/osm_openvim/*.py
63
64build_lite: prepare_lite
65 python -m py_compile build/lib_osm_openvim/*.py
66
mirabal9f657102017-04-10 20:05:40 +020067pip: clean build
garciadeblas0119d7d2017-04-21 07:10:23 +020068 cd build && ./setup.py sdist
mirabald87877c2017-03-31 15:15:52 +020069
mirabal9f657102017-04-10 20:05:40 +020070pip_lite: clean build_lite
garciadeblas0119d7d2017-04-21 07:10:23 +020071 cd build && ./setup.py sdist
mirabald87877c2017-03-31 15:15:52 +020072
garciadeblas0119d7d2017-04-21 07:10:23 +020073package_openvim: clean prepare
garciadeblas8b7767b2017-04-20 19:21:49 +020074 #apt-get install -y python-stdeb
75 cd build && python setup.py --command-packages=stdeb.command sdist_dsc --with-python2=True
76 cd build && cp osm_openvim/scripts/python-osm-openvim.postinst deb_dist/osm-openvim*/debian/
77 cd build/deb_dist/osm-openvim* && dpkg-buildpackage -rfakeroot -uc -us
garciadeblas0119d7d2017-04-21 07:10:23 +020078 mkdir -p .build
garciadeblas6ea01322017-04-24 10:58:56 +020079 cp build/deb_dist/python-*.deb .build/
garciadeblas8b7767b2017-04-20 19:21:49 +020080
garciadeblas0119d7d2017-04-21 07:10:23 +020081package_lib: clean prepare_lite
garciadeblas8b7767b2017-04-20 19:21:49 +020082 #apt-get install -y python-stdeb
83 cd build && python setup.py --command-packages=stdeb.command sdist_dsc --with-python2=True
84 cd build/deb_dist/lib-osm-openvim* && dpkg-buildpackage -rfakeroot -uc -us
garciadeblas0119d7d2017-04-21 07:10:23 +020085 mkdir -p .build
garciadeblas6ea01322017-04-24 10:58:56 +020086 cp build/deb_dist/python-*.deb .build/
garciadeblas0119d7d2017-04-21 07:10:23 +020087
88package: clean_deb package_openvim package_lib
garciadeblas8b7767b2017-04-20 19:21:49 +020089
90snap:
91 echo "Nothing to be done yet"
92
mirabal9f657102017-04-10 20:05:40 +020093install: clean build
garciadeblas0119d7d2017-04-21 07:10:23 +020094 cd build/dist; pip install osm_openvim*
mirabal9f657102017-04-10 20:05:40 +020095
96install_lite: clean build_lite
garciadeblas0119d7d2017-04-21 07:10:23 +020097 cd build/dist; pip install lib_osm_openvim-*
mirabal9f657102017-04-10 20:05:40 +020098
99
100
mirabal622e55d2017-04-06 11:01:05 +0200101
102
mirabald87877c2017-03-31 15:15:52 +0200103
104
105