Update for LSB compliance
Signed-off-by: jcsiadal <jeremy.c.siadal@intel.com>
This commit is contained in:
18
Makefile
18
Makefile
@@ -3,7 +3,8 @@
|
|||||||
-include Defaults.mk
|
-include Defaults.mk
|
||||||
|
|
||||||
# Linux distro (try and set to /etc/os-release ID)
|
# Linux distro (try and set to /etc/os-release ID)
|
||||||
OS ?= $(sed -n "s/^ID\s*=\s*['"\""]\(.*\)['"\""]/\1/p" /etc/os-release)
|
OS_REL := $(shell sed -n "s/^ID\s*=\s*['"\""]\(.*\)['"\""]/\1/p" /etc/os-release)
|
||||||
|
OS ?= $(OS_REL)
|
||||||
|
|
||||||
# List of variables to save and replace in files
|
# List of variables to save and replace in files
|
||||||
VARLIST := OS
|
VARLIST := OS
|
||||||
@@ -14,7 +15,7 @@ WAREWULF ?= warewulf
|
|||||||
VERSION ?= 4.2.0
|
VERSION ?= 4.2.0
|
||||||
GIT_TAG := $(shell test -e .git && git describe --tags --long --first-parent --always)
|
GIT_TAG := $(shell test -e .git && git describe --tags --long --first-parent --always)
|
||||||
|
|
||||||
ifndef $(GIT_TAG)
|
ifndef GIT_TAG
|
||||||
ifdef $(filter $(OS),ubuntu debian)
|
ifdef $(filter $(OS),ubuntu debian)
|
||||||
RELEASE ?= 1.git_$(subst -,+,$(GIT_TAG))
|
RELEASE ?= 1.git_$(subst -,+,$(GIT_TAG))
|
||||||
else
|
else
|
||||||
@@ -30,12 +31,12 @@ ifneq ($(OS),)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
# Always default to GNU autotools default paths if PREFIX has been redefined
|
# Always default to GNU autotools default paths if PREFIX has been redefined
|
||||||
ifndef $(PREFIX)
|
ifdef PREFIX
|
||||||
USE_LSB_PATHS := false
|
USE_LSB_PATHS := false
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# System directory paths
|
# System directory paths
|
||||||
VARLIST += PREFIX BINDIR SYSCONFDIR SRVDIR DATADIR MANDIR DOCDIR LOCALSTATEDIR SHAREDSTATEDIR
|
VARLIST += PREFIX BINDIR SYSCONFDIR SRVDIR DATADIR MANDIR DOCDIR LOCALSTATEDIR
|
||||||
PREFIX ?= /usr/local
|
PREFIX ?= /usr/local
|
||||||
BINDIR ?= $(PREFIX)/bin
|
BINDIR ?= $(PREFIX)/bin
|
||||||
SYSCONFDIR ?= $(PREFIX)/etc
|
SYSCONFDIR ?= $(PREFIX)/etc
|
||||||
@@ -46,11 +47,9 @@ DOCDIR ?= $(DATADIR)/doc
|
|||||||
ifeq ($(USE_LSB_PATHS),true)
|
ifeq ($(USE_LSB_PATHS),true)
|
||||||
SRVDIR ?= /srv
|
SRVDIR ?= /srv
|
||||||
LOCALSTATEDIR ?= /var/local
|
LOCALSTATEDIR ?= /var/local
|
||||||
SHAREDSTATEDIR ?= /var/lib
|
|
||||||
else
|
else
|
||||||
SRVDIR ?= $(PREFIX)/srv
|
SRVDIR ?= $(PREFIX)/srv
|
||||||
LOCALSTATEDIR ?= $(PREFIX)/var
|
LOCALSTATEDIR ?= $(PREFIX)/var
|
||||||
SHAREDSTATEDIR ?= $(PREFIX)/com
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# OS-Specific Service Locations
|
# OS-Specific Service Locations
|
||||||
@@ -70,9 +69,9 @@ TFTPDIR ?= /var/lib/tftpboot
|
|||||||
# Warewulf directory paths
|
# Warewulf directory paths
|
||||||
VARLIST += WWCLIENTDIR WWCONFIGDIR WWPROVISIONDIR WWOVERLAYDIR WWCHROOTDIR WWTFTPDIR WWDOCDIR WWDATADIR
|
VARLIST += WWCLIENTDIR WWCONFIGDIR WWPROVISIONDIR WWOVERLAYDIR WWCHROOTDIR WWTFTPDIR WWDOCDIR WWDATADIR
|
||||||
WWCONFIGDIR := $(SYSCONFDIR)/$(WAREWULF)
|
WWCONFIGDIR := $(SYSCONFDIR)/$(WAREWULF)
|
||||||
WWPROVISIONDIR := $(LOCALSTATEDIR)$(WAREWULF)
|
WWPROVISIONDIR := $(LOCALSTATEDIR)/$(WAREWULF)
|
||||||
WWOVERLAYDIR := $(LOCALSTATEDIR)$(WAREWULF)/overlays
|
WWOVERLAYDIR := $(LOCALSTATEDIR)/$(WAREWULF)/overlays
|
||||||
WWCHROOTDIR := $(LOCALSTATEDIR)$(WAREWULF)/chroots
|
WWCHROOTDIR := $(LOCALSTATEDIR)/$(WAREWULF)/chroots
|
||||||
WWTFTPDIR := $(TFTPDIR)/$(WAREWULF)
|
WWTFTPDIR := $(TFTPDIR)/$(WAREWULF)
|
||||||
WWDOCDIR := $(DOCDIR)/$(WAREWULF)
|
WWDOCDIR := $(DOCDIR)/$(WAREWULF)
|
||||||
WWDATADIR := $(DATADIR)/$(WAREWULF)
|
WWDATADIR := $(DATADIR)/$(WAREWULF)
|
||||||
@@ -169,6 +168,7 @@ files: all
|
|||||||
install -d -m 0755 $(DESTDIR)$(WWDOCDIR)
|
install -d -m 0755 $(DESTDIR)$(WWDOCDIR)
|
||||||
install -d -m 0755 $(DESTDIR)$(FIREWALLDDIR)
|
install -d -m 0755 $(DESTDIR)$(FIREWALLDDIR)
|
||||||
install -d -m 0755 $(DESTDIR)$(SYSTEMDDIR)
|
install -d -m 0755 $(DESTDIR)$(SYSTEMDDIR)
|
||||||
|
install -d -m 0755 $(DESTDIR)$(WWDATADIR)
|
||||||
test -f $(DESTDIR)$(WWCONFIGDIR)/warewulf.conf || install -m 644 etc/warewulf.conf $(DESTDIR)$(WWCONFIGDIR)
|
test -f $(DESTDIR)$(WWCONFIGDIR)/warewulf.conf || install -m 644 etc/warewulf.conf $(DESTDIR)$(WWCONFIGDIR)
|
||||||
test -f $(DESTDIR)$(WWCONFIGDIR)/nodes.conf || install -m 644 etc/nodes.conf $(DESTDIR)$(WWCONFIGDIR)
|
test -f $(DESTDIR)$(WWCONFIGDIR)/nodes.conf || install -m 644 etc/nodes.conf $(DESTDIR)$(WWCONFIGDIR)
|
||||||
cp -r etc/examples $(DESTDIR)$(WWCONFIGDIR)/
|
cp -r etc/examples $(DESTDIR)$(WWCONFIGDIR)/
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ func CobraRunE(cmd *cobra.Command, args []string) error {
|
|||||||
return errors.New("found pidfile " + PIDFile + " not starting")
|
return errors.New("found pidfile " + PIDFile + " not starting")
|
||||||
}
|
}
|
||||||
|
|
||||||
if os.Args[0] == path.Join(buildconfig.WWCLIENTLOC(), "wwclient") {
|
if os.Args[0] == path.Join(buildconfig.WWCLIENTDIR(), "wwclient") {
|
||||||
err := os.Chdir("/")
|
err := os.Chdir("/")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
wwlog.Printf(wwlog.ERROR, "failed to change dir: %s", err)
|
wwlog.Printf(wwlog.ERROR, "failed to change dir: %s", err)
|
||||||
@@ -75,7 +75,7 @@ func CobraRunE(cmd *cobra.Command, args []string) error {
|
|||||||
} else {
|
} else {
|
||||||
fmt.Printf("Called via: %s\n", os.Args[0])
|
fmt.Printf("Called via: %s\n", os.Args[0])
|
||||||
fmt.Printf("Runtime overlay is being put in '/warewulf/wwclient-test' rather than '/'\n")
|
fmt.Printf("Runtime overlay is being put in '/warewulf/wwclient-test' rather than '/'\n")
|
||||||
fmt.Printf("For full functionality call with: %s\n", path.Join(buildconfig.WWCLIENTLOC(), "wwclient"))
|
fmt.Printf("For full functionality call with: %s\n", path.Join(buildconfig.WWCLIENTDIR(), "wwclient"))
|
||||||
err := os.MkdirAll("/warewulf/wwclient-test", 0755)
|
err := os.MkdirAll("/warewulf/wwclient-test", 0755)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
wwlog.Printf(wwlog.ERROR, "failed to create dir: %s", err)
|
wwlog.Printf(wwlog.ERROR, "failed to create dir: %s", err)
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ var (
|
|||||||
wwprovisiondir string = "UNDEF"
|
wwprovisiondir string = "UNDEF"
|
||||||
version string = "UNDEF"
|
version string = "UNDEF"
|
||||||
release string = "UNDEF"
|
release string = "UNDEF"
|
||||||
wwclientloc string = "UNDEF"
|
wwclientdir string = "UNDEF"
|
||||||
datadir string = "UNDEF"
|
datadir string = "UNDEF"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -84,7 +84,7 @@ func RELEASE() string {
|
|||||||
return release
|
return release
|
||||||
}
|
}
|
||||||
|
|
||||||
func WWCLIENTLOC() string {
|
func WWCLIENTDIR() string {
|
||||||
wwlog.Printf(wwlog.DEBUG, "WWCLIENTLOC = '%s'\n", wwclientloc)
|
wwlog.Printf(wwlog.DEBUG, "WWCLIENTDIR = '%s'\n", wwclientdir)
|
||||||
return wwclientloc
|
return wwclientdir
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,5 +14,5 @@ func init() {
|
|||||||
wwprovisiondir = "@WWPROVISIONDIR@"
|
wwprovisiondir = "@WWPROVISIONDIR@"
|
||||||
version = "@VERSION@"
|
version = "@VERSION@"
|
||||||
release = "@RELEASE@"
|
release = "@RELEASE@"
|
||||||
wwclientloc = "@WWCLIENTLOC@"
|
wwclientdir = "@WWCLIENTDIR@"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -61,12 +61,13 @@ system for large clusters of bare metal and/or virtual systems.
|
|||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
# Install to sharedstatedir by redirecting LOCALSTATEDIR
|
||||||
make genconfig \
|
make genconfig \
|
||||||
PREFIX=%{_prefix} \
|
PREFIX=%{_prefix} \
|
||||||
BINDIR=%{_bindir} \
|
BINDIR=%{_bindir} \
|
||||||
SYSCONFDIR=%{_sysconfdir} \
|
SYSCONFDIR=%{_sysconfdir} \
|
||||||
DATADIR=%{_datadir} \
|
DATADIR=%{_datadir} \
|
||||||
LOCALSTATEDIR=%{_localstatedir} \
|
LOCALSTATEDIR=%{_sharedstatedir} \
|
||||||
SHAREDSTATEDIR=%{_sharedstatedir} \
|
SHAREDSTATEDIR=%{_sharedstatedir} \
|
||||||
MANDIR=%{_mandir} \
|
MANDIR=%{_mandir} \
|
||||||
INFODIR=%{_infodir} \
|
INFODIR=%{_infodir} \
|
||||||
@@ -76,7 +77,7 @@ make genconfig \
|
|||||||
SYSTEMDDIR=%{_unitdir} \
|
SYSTEMDDIR=%{_unitdir} \
|
||||||
BASHCOMPDIR=/etc/bash_completion.d/ \
|
BASHCOMPDIR=/etc/bash_completion.d/ \
|
||||||
FIREWALLDDIR=/usr/lib/firewalld/services \
|
FIREWALLDDIR=/usr/lib/firewalld/services \
|
||||||
WWCLIENTDIR=%{_libexecdir}/warewulf
|
WWCLIENTDIR=/warewulf
|
||||||
make
|
make
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user