* [PATCH] Makefile: Install database in a share directory
@ 2020-06-10 3:08 Gwendal Grignou
2020-06-10 18:08 ` Dan Carpenter
0 siblings, 1 reply; 4+ messages in thread
From: Gwendal Grignou @ 2020-06-10 3:08 UTC (permalink / raw)
To: error27; +Cc: smatch, groeck, Gwendal Grignou
'make install' installs the database .schema files and other assets at
$DESTDIR/$(SHAREDIR)/smatch/smatch_data,
/usr/share/smatch/smatch_data by default.
This way the source code tree does not need to be present to run smatch,
and --data is not required as smatch is compiled to look for data assets
at the above location, in addition to the local directory.
Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
---
Makefile | 21 ++++++++++++---------
1 file changed, 12 insertions(+), 9 deletions(-)
diff --git a/Makefile b/Makefile
index ec3a5a84..452e2537 100644
--- a/Makefile
+++ b/Makefile
@@ -14,7 +14,8 @@ CFLAGS ?= -g
DESTDIR ?=
PREFIX ?= $(HOME)
BINDIR ?= $(PREFIX)/bin
-MANDIR ?= $(PREFIX)/share/man
+SHAREDIR ?= $(PREFIX)/share
+MANDIR ?= $(SHAREDIR)/man
PKG_CONFIG ?= pkg-config
@@ -85,9 +86,11 @@ PROGRAMS += test-linearize
PROGRAMS += test-parsing
PROGRAMS += test-unssa
-INST_PROGRAMS=smatch sparse cgcc
-INST_MAN1=sparse.1 cgcc.1
-
+INST_PROGRAMS = smatch sparse cgcc
+INST_MAN1 = sparse.1 cgcc.1
+INST_ASSETS = $(wildcard smatch_data/db/*.schema)
+INST_ASSETS += $(wildcard smatch_data/*)
+INST_ASSETS += $(wildcard smatch_data/db/kernel.*)
all:
@@ -106,6 +109,7 @@ cflags += -DMULTIARCH_TRIPLET=\"$(MULTIARCH_TRIPLET)\"
bindir := $(DESTDIR)$(BINDIR)
man1dir := $(DESTDIR)$(MANDIR)/man1
+smatch_datadir := $(DESTDIR)$(SHAREDIR)/smatch
########################################################################
# target specificities
@@ -197,8 +201,6 @@ Q := $(V:1=)
########################################################################
-SMATCHDATADIR=$(INSTALL_PREFIX)/share/smatch
-
SMATCH_OBJS :=
SMATCH_OBJS += avl.o
SMATCH_OBJS += smatch_about_fn_ptr_arg.o
@@ -317,7 +319,7 @@ check_list_local.h:
touch check_list_local.h
smatch.o: smatch.c $(LIB_H) smatch.h check_list.h check_list_local.h
- $(CC) $(CFLAGS) -c smatch.c -DSMATCHDATADIR='"$(SMATCHDATADIR)"'
+ $(CC) $(CFLAGS) -c smatch.c -DSMATCHDATADIR='"$(smatch_datadir)"'
$(SMATCH_OBJS) $(SMATCH_CHECKS): smatch.h smatch_slist.h smatch_extra.h avl.h
@@ -375,14 +377,15 @@ clean-check:
\) -exec rm {} \;
-install: install-bin install-man
+install: install-bin install-man install-assets
install-bin: $(INST_PROGRAMS:%=$(bindir)/%)
install-man: $(INST_MAN1:%=$(man1dir)/%)
+install-assets: $(INST_ASSETS:%=$(smatch_datadir)/%)
$(bindir)/%: %
@echo " INSTALL $@"
$(Q)install -D $< $@ || exit 1;
-$(man1dir)/%: %
+$(man1dir)/% $(smatch_datadir)/%: %
@echo " INSTALL $@"
$(Q)install -D -m 644 $< $@ || exit 1;
--
2.27.0.290.gba653c62da-goog
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] Makefile: Install database in a share directory
2020-06-10 3:08 [PATCH] Makefile: Install database in a share directory Gwendal Grignou
@ 2020-06-10 18:08 ` Dan Carpenter
2020-08-24 5:22 ` Gwendal Grignou
0 siblings, 1 reply; 4+ messages in thread
From: Dan Carpenter @ 2020-06-10 18:08 UTC (permalink / raw)
To: Gwendal Grignou; +Cc: error27, smatch, groeck
On Tue, Jun 09, 2020 at 08:08:50PM -0700, Gwendal Grignou wrote:
> 'make install' installs the database .schema files and other assets at
> $DESTDIR/$(SHAREDIR)/smatch/smatch_data,
> /usr/share/smatch/smatch_data by default.
>
> This way the source code tree does not need to be present to run smatch,
> and --data is not required as smatch is compiled to look for data assets
> at the above location, in addition to the local directory.
>
> Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
Thanks so much. Applied.
regards,
dan carpenter
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] Makefile: Install database in a share directory
2020-06-10 18:08 ` Dan Carpenter
@ 2020-08-24 5:22 ` Gwendal Grignou
2020-08-24 8:54 ` Dan Carpenter
0 siblings, 1 reply; 4+ messages in thread
From: Gwendal Grignou @ 2020-08-24 5:22 UTC (permalink / raw)
To: Dan Carpenter; +Cc: error27, smatch, Guenter Roeck
Dan,
I don't see the patch applied in https://repo.or.cz/smatch.git/tree.
Is it in a different git tree?
Regards,
Gwendal
On Wed, Jun 10, 2020 at 11:08 AM Dan Carpenter <dan.carpenter@oracle.com> wrote:
>
> On Tue, Jun 09, 2020 at 08:08:50PM -0700, Gwendal Grignou wrote:
> > 'make install' installs the database .schema files and other assets at
> > $DESTDIR/$(SHAREDIR)/smatch/smatch_data,
> > /usr/share/smatch/smatch_data by default.
> >
> > This way the source code tree does not need to be present to run smatch,
> > and --data is not required as smatch is compiled to look for data assets
> > at the above location, in addition to the local directory.
> >
> > Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
>
> Thanks so much. Applied.
>
> regards,
> dan carpenter
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] Makefile: Install database in a share directory
2020-08-24 5:22 ` Gwendal Grignou
@ 2020-08-24 8:54 ` Dan Carpenter
0 siblings, 0 replies; 4+ messages in thread
From: Dan Carpenter @ 2020-08-24 8:54 UTC (permalink / raw)
To: Gwendal Grignou; +Cc: error27, smatch, Guenter Roeck
Heh... Wow. So sorry. I don't know what went wrong. Fixed now.
regards,
dan carpenter
On Sun, Aug 23, 2020 at 10:22:29PM -0700, Gwendal Grignou wrote:
> Dan,
>
> I don't see the patch applied in https://repo.or.cz/smatch.git/tree.
> Is it in a different git tree?
>
> Regards,
> Gwendal
>
> On Wed, Jun 10, 2020 at 11:08 AM Dan Carpenter <dan.carpenter@oracle.com> wrote:
> >
> > On Tue, Jun 09, 2020 at 08:08:50PM -0700, Gwendal Grignou wrote:
> > > 'make install' installs the database .schema files and other assets at
> > > $DESTDIR/$(SHAREDIR)/smatch/smatch_data,
> > > /usr/share/smatch/smatch_data by default.
> > >
> > > This way the source code tree does not need to be present to run smatch,
> > > and --data is not required as smatch is compiled to look for data assets
> > > at the above location, in addition to the local directory.
> > >
> > > Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
> >
> > Thanks so much. Applied.
> >
> > regards,
> > dan carpenter
> >
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-08-24 8:54 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-10 3:08 [PATCH] Makefile: Install database in a share directory Gwendal Grignou
2020-06-10 18:08 ` Dan Carpenter
2020-08-24 5:22 ` Gwendal Grignou
2020-08-24 8:54 ` Dan Carpenter
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.