xref: /openbmc/openbmc-tools/openbmctool/build-scripts/Makefile (revision b4cca007ec15f577ecbe6c85415551c1208b4d40)
169419bafSAndrew Jeffery#Makefile for openbmctool
269419bafSAndrew Jeffery# Copyright (c) 2017 International Business Machines.
369419bafSAndrew Jeffery#    Licensed under the Apache License, Version 2.0 (the "License");
469419bafSAndrew Jeffery#    you may not use this file except in compliance with the License.
569419bafSAndrew Jeffery#    You may obtain a copy of the License at
669419bafSAndrew Jeffery#        http://www.apache.org/licenses/LICENSE-2.0
769419bafSAndrew Jeffery#    Unless required by applicable law or agreed to in writing, software
869419bafSAndrew Jeffery#    distributed under the License is distributed on an "AS IS" BASIS,
969419bafSAndrew Jeffery#    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1069419bafSAndrew Jeffery#    See the License for the specific language governing permissions and
1169419bafSAndrew Jeffery#    limitations under the License.
1269419bafSAndrew Jeffery
1369419bafSAndrew JefferyVER=1.19
14*b4cca007SAndrew GeisslerREL=2
1569419bafSAndrew JefferyARCH=noarch
1669419bafSAndrew JefferyPROD=openbmctool
1769419bafSAndrew JefferyRHEL_VER=8
1869419bafSAndrew JefferyNAME=$(PROD)-$(VER)-$(REL).$(ARCH)
1969419bafSAndrew Jeffery
2069419bafSAndrew Jeffery# Need to test RPMDIR to see if it is set. Otherwise set it.
2169419bafSAndrew JefferyRPMDIR := $(if $(RPMDIR),$(RPMDIR),$(shell pwd)/build/rpm)
2269419bafSAndrew Jeffery
2369419bafSAndrew Jeffery# Need to test DEBDIR to see if it is set. Otherwise set it.
2469419bafSAndrew JefferyDEBDIR := $(if $(DEBDIR),$(DEBDIR),$(shell pwd)/build/deb)
2569419bafSAndrew Jeffery
2669419bafSAndrew Jefferydefault:
2769419bafSAndrew Jeffery	mkdir -p ./build
2869419bafSAndrew Jefferyclean: ;rm -rf ./build
2969419bafSAndrew Jefferyremove:
3069419bafSAndrew Jeffery	rm -f /usr/bin/openbmctool
3169419bafSAndrew Jeffery	rm -f /opt/ibm/ras/bin/openbmctool.py
3269419bafSAndrew Jeffery	rm -f /opt/ibm/ras/lib/policyTable.json
3369419bafSAndrew Jefferyinstall:
3469419bafSAndrew Jeffery	cp ../openbmctool.py $(DESTDIR)/opt/ibm/ras/bin
3569419bafSAndrew Jeffery	cp ../policyTable.json $(DESTDIR)/opt/ibm/ras/lib
3669419bafSAndrew Jeffery	ln -s -f $(DESTDIR)/opt/ibm/ras/bin/openbmctool.py $(DESTDIR)/usr/bin/openbmctool
3769419bafSAndrew Jeffery
3869419bafSAndrew Jefferyrpm: default
3969419bafSAndrew Jeffery	rm -rf $(RPMDIR)
4069419bafSAndrew Jeffery	mkdir -p $(RPMDIR)
4169419bafSAndrew Jeffery	mkdir -p $(RPMDIR)/openbmctool
4269419bafSAndrew Jeffery	for i in BUILD BUILDROOT RPMS SOURCES SPECS SRPMS; do mkdir -p $(RPMDIR)/$$i; done
4369419bafSAndrew Jeffery	cp openbmctool-rhel$(RHEL_VER).spec $(RPMDIR)/SPECS
4469419bafSAndrew Jeffery	cp ../openbmctool.py ../policyTable.json $(RPMDIR)/openbmctool/
4569419bafSAndrew Jeffery	tar -cvzf $(RPMDIR)/SOURCES/openbmctool-$(VER)-$(REL).tgz -C $(RPMDIR) openbmctool
4669419bafSAndrew Jeffery	rpmbuild --define '_topdir $(RPMDIR)' --define "_version $(VER)" --define "_release $(REL)" -bb $(RPMDIR)/SPECS/openbmctool-rhel$(RHEL_VER).spec
4769419bafSAndrew Jeffery
4869419bafSAndrew Jefferydeb: default
4969419bafSAndrew Jeffery	rm -rf $(DEBDIR)
5069419bafSAndrew Jeffery	mkdir -p $(DEBDIR)
5169419bafSAndrew Jeffery	for i in bin lib; do mkdir -p $(DEBDIR)/opt/ibm/ras/$$i; done
5269419bafSAndrew Jeffery	mkdir -p $(DEBDIR)/usr/bin/
5369419bafSAndrew Jeffery	make install DESTDIR=$(DEBDIR)
5469419bafSAndrew Jeffery	mkdir -p $(DEBDIR)/DEBIAN
5569419bafSAndrew Jeffery	cp control $(DEBDIR)/DEBIAN
5669419bafSAndrew Jeffery	cd $(DEBDIR); find opt -type f -exec md5sum "{}" + >> DEBIAN/md5sums
5769419bafSAndrew Jeffery	cd $(DEBDIR); find usr -type f -exec md5sum "{}" + >> DEBIAN/md5sums
5869419bafSAndrew Jeffery	cd $(DEBDIR); echo "#!/bin/bash" >> DEBIAN/postinst
5969419bafSAndrew Jeffery	cd $(DEBDIR); echo "ln -s -f /opt/ibm/ras/bin/openbmctool.py /usr/bin/openbmctool" >> DEBIAN/postinst
6069419bafSAndrew Jeffery	chmod +x $(DEBDIR)/DEBIAN/postinst
6169419bafSAndrew Jeffery	chmod +x $(DEBDIR)/opt/ibm/ras/bin/openbmctool.py
6269419bafSAndrew Jeffery	dpkg-deb -b $(DEBDIR) $(DEBDIR)/DEBIAN/openbmctool-$(VER).$(REL)-$(ARCH).deb
6369419bafSAndrew Jeffery
64