Commit 4e65309e authored by Ophélie Gagnard's avatar Ophélie Gagnard

obs/generic/: Fix bugs. Update files.

TODO.txt: Update.
build-scripts/clean_build_tree.sh: Fix failure when $RUN_BUILDOUT_DIR/go did not exist.
build-scripts/bootstrap_buildout.sh: Fix a bug in the backup mechanism.
templates/:
- Fix mca/Makefile.in
- Change debian_defaults/dirs.in to fit the mca case.
parent dbe8ae93
......@@ -7,7 +7,7 @@ cd $INITIAL_DIR
mkdir -p $TARBALL_DIR
# Re-downloading the software release to pack
#cp -r /home/test/other-projects/model/1wip_simplify-fluentbit_my-slapos .
cp -r /home/test/other-projects/model/mca.my-slapos $TARBALL_DIR/software_release
cp -r /home/test/other-projects/model/light-build-dependencies.my-slapos $TARBALL_DIR/software_release
#cp -r /home/test/other-projects/new_slapos.package/sid.fluentbit.my-slapos $TARBALL_DIR
#mv $TARBALL_DIR/mca.my-slapos $TARBALL_DIR/software_release
......
......@@ -9,7 +9,7 @@ INITIAL_DIR="$(pwd)"/
SOFTWARE_VERSION=1
#RECIPE_VERSION=1
DEBIAN_REVISION=1
SOFTWARE_NAME=example
SOFTWARE_NAME=light-build-dependencies-mca
# For the version format, see: https://www.debian.org/doc/manuals/debian-faq/pkg-basics.en.html#pkgname
# here, in <foo>_<VersionNumber>-<DebianRevisionNumber>_<DebianArchitecture>.deb
......
light-build-dependencies-mca (1-1) UNRELEASED; urgency=medium
* Initial release. (Closes: #XXXXXX)
-- test <test@debian> Tue, 25 Jan 2022 18:27:17 +0100
Source: light-build-dependencies-mca
Maintainer: Francois Gagnard <francois.gagnard@nexedi.com>
Section: net
Priority: optional
Build-Depends: debhelper (>= 4.1.16),
chrpath,
wget,
python (>= 2.7),
python3 (>= 3.7),
python3-dev (>= 3.7),
golang (>= 2:1.15~1)
Package: light-build-dependencies-mca
Architecture: any
Depends: ${misc:Depends},
${shlibs:Depends},
ucf,
uml-utilities,
# slapgrid-sr needed by most recipes
libc6-dev | libc-dev,
gcc | c-compiler,
g++ | c++-compiler,
make,
patch,
# devperm manager plugin wants to use lsblk
util-linux
Conflicts:
Description: light-build-dependencies-mca packaging test
/opt/light-build-dependencies-mca_1-1/bin/
/opt/light-build-dependencies-mca_1-1/include/
/opt/light-build-dependencies-mca_1-1/etc/
/opt/light-build-dependencies-mca_1-1/lib/
/opt/light-build-dependencies-mca_1-1/share/
#!/usr/bin/make -f
#export DH_VERBOSE=1
PACKAGE = $(shell dh_listpackages)
TMP = $(CURDIR)/debian/$(PACKAGE)
%:
dh $@
override_dh_installdebconf:
override_dh_makeshlibs:
dh_makeshlibs -n
override_dh_shlibdeps:
dh_shlibdeps -- -x$(PACKAGE)
rm -f $(TMP)/DEBIAN/shlibs
Format: 3.0 (native)
Source: light-build-dependencies-mca
Architecture: any
Version: 1
Build-Depends: debhelper (>= 4.1.16),
chrpath,
wget,
python (>= 2.7),
python3 (>= 3.7),
python3-dev (>= 3.7),
golang (>= 2:1.15~1)
PY = $(PYTHON)
#INSTALL_DIR = $(DESTDIR)/opt/test
#TARGET_DIR = /opt/slapos
# This templates are replaced by build-scripts/template_stage.sh
# according to the values and regular expressions defined in
# build-scripts/configuration_information.sh
# The variable TARGET_DIR is pretty useless atm
TARGET_DIR = %TARGET_DIR%
TARBALL_DIR = $(shell pwd)
BUILD_DIR = $(TARBALL_DIR)/build
INSTALL_DIR = $(DESTDIR)$(TARGET_DIR)
RUN_BUILDOUT_DIR = $(BUILD_DIR)$(TARGET_DIR)
#PATCHES_DIR := $(shell pwd)/patches
# get the path of the BUILD_DIR of the first build (performed to prepare the cache for OBS)
OLD_TARBALL_DIR := $(shell cat local_build_directory)
#Use to get path of buildout correct
#ORIGINAL_DIRECTORY := $(shell cat ./original_directory)
all: build
build: build-stamp
build-stamp:
@echo "Fixing buildout path to $(TARBALL_DIR) rather than $(OLD_TARBALL_DIR) for buildout"
################################################################################
# grep -rIl '$(OLD_DIRECTORY)' $(BUILD_DIR) 2> /dev/null | \
# xargs sed -i 's#$(OLD_DIRECTORY)#$(BUILD_DIR)#g' || \
# echo "No path to fix."
################################################################################
ls -l $(RUN_BUILDOUT_DIR) # DEBUG
ls -l $(RUN_BUILDOUT_DIR)/bin/ # DEBUG
cd $(RUN_BUILDOUT_DIR); sed -i 's#$(OLD_TARBALL_DIR)#$(TARBALL_DIR)#g' buildout.cfg bin/*
echo RUN_BUILDOUT_DIR = $(RUN_BUILDOUT_DIR) \; PY = $(PY)
cd $(RUN_BUILDOUT_DIR) && \
$(PY) ./bin/buildout -v
@touch build-stamp
clean:
# TODO: implement a proper cleaning
#rm -rf $(BUILD_DIR)
rm -f *-stamp
install: all
# mkdir
mkdir -p $(INSTALL_DIR)/bin
mkdir -p $(INSTALL_DIR)/etc/
mkdir -p $(INSTALL_DIR)/include/
mkdir -p $(INSTALL_DIR)/lib/
mkdir -p $(INSTALL_DIR)/share/
# cp
#cp `find $(RUN_BUILDOUT_DIR) | grep -e "^$(RUN_BUILDOUT_DIR)/[^/][^/]*/bin/*` $(DESTDIR)/usr/bin/
# bin
# no "-r" option to "cp" because there must be no subdirectories
# see https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch04s04.html
# and https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch03s13.html
-cp $(RUN_BUILDOUT_DIR)/parts/mca/bin/* $(INSTALL_DIR)/bin/
# etc
-cp -r $(RUN_BUILDOUT_DIR)/parts/mca/etc/* $(INSTALL_DIR)/etc/
-cp -r $(RUN_BUILDOUT_DIR)/parts/openssl/etc/* $(INSTALL_DIR)/etc/
# remove links to certs in parts/ca-certificates/[...]: not supported for now
-rm -rf $(INSTALL_DIR)/etc/ssl/certs
# include
-cp -r $(RUN_BUILDOUT_DIR)/parts/fluentbit-plugin-wendelin/include/* $(INSTALL_DIR)/include/
-cp -r $(RUN_BUILDOUT_DIR)/parts/openssl/include/* $(INSTALL_DIR)/include/
# lib
-cp -r $(RUN_BUILDOUT_DIR)/parts/openssl/lib/* $(INSTALL_DIR)/lib/
# TODO: the next "cp" line is temporary renaming the library and this should be fixed asap
# the fix has to be made primarily in the MCA project
-cp $(RUN_BUILDOUT_DIR)/parts/fluentbit-plugin-wendelin/lib/libfluentbit_wendelin.so $(INSTALL_DIR)/lib/fluentbit_wendelin.so
# LIBCRYPTO
# TODO: then next "cp" is a workaroung because libcrypto.so or libcrypto.a from slapos doesn't work
# this should be fixed asap
-cp /lib/x86_64-linux-gnu/libcrypto.so.1.1 $(INSTALL_DIR)/lib/
# LIBFMT
# TODO: use a static library instead
# the fix has to be made primarily in the MCA project
-cp -r $(RUN_BUILDOUT_DIR)/parts/fmtlib/lib/* $(INSTALL_DIR)/lib/
# share
-cp -r $(RUN_BUILDOUT_DIR)/parts/mca/share/* $(INSTALL_DIR)/share/
-cp -r $(RUN_BUILDOUT_DIR)/parts/openssl/share/* $(INSTALL_DIR)/share/
-cp -r $(RUN_BUILDOUT_DIR)/parts/fluentbit-plugin-wendelin/share/* $(INSTALL_DIR)/share/
# DEBUG
ls -Rl $(INSTALL_DIR)/bin/ # DEBUG
ls -Rl $(INSTALL_DIR)/etc/ # DEBUG
ls -Rl $(INSTALL_DIR)/include/ # DEBUG
ls -Rl $(INSTALL_DIR)/lib/ # DEBUG
ls -Rl $(INSTALL_DIR)/share/ # DEBUG
.PHONY: build all clean install
[buildout]
rootdir = %TARGET_DIR%
destdir = %BUILD_DIR%
builddir = %RUN_BUILDOUT_DIR%
extends =
%SR_PATH%
versions = versions
extends-cache = extends-cache
download-cache = download-cache
[versions]
setuptools = 44.1.1
# Use SlapOS patched zc.buildout
zc.buildout = 2.7.1+slapos016
# Use SlapOS patched zc.recipe.egg (zc.recipe.egg 2.x is for Buildout 2)
zc.recipe.egg = 2.0.3+slapos003
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment