lkml.org 
[lkml]   [2013]   [Oct]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH trace-cmd 2/5] build: Install data files without execute permissions
From
Date
On Thu, 2013-10-24 at 14:14 -0500, Seth Forshee wrote:
> diff --git a/Makefile b/Makefile
> index 1964949..2423038 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -86,7 +86,8 @@ ifeq ($(shell sh -c "python-config --includes > /dev/null 2>&1 && echo y"), y)
> PYTHON_PLUGINS := plugin_python.so
> BUILD_PYTHON := $(PYTHON) $(PYTHON_PLUGINS)
> PYTHON_SO_INSTALL := ctracecmd.install
> - PYTHON_PY_INSTALL := event-viewer.install tracecmd.install tracecmdgui.install
> + PYTHON_PY_PROGS := event-viewer.install
> + PYTHON_PY_LIBS := tracecmd.install tracecmdgui.install
> endif
> endif # NO_PYTHON
>
> @@ -506,21 +507,32 @@ define do_install
> $(INSTALL) $1 '$(DESTDIR_SQ)$2'
> endef
>
> +define do_install_data
> + $(print_install) \
> + if [ ! -d '$(DESTDIR_SQ)$2' ]; then \
> + $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$2'; \
> + fi; \
> + $(INSTALL) -m 644 $1 '$(DESTDIR_SQ)$2'
> +endef
> +
> $(PLUGINS_INSTALL): %.install : %.so force
> - $(Q)$(call do_install,$<,$(plugin_dir_SQ))
> + $(Q)$(call do_install_data,$<,$(plugin_dir_SQ))
>
> install_plugins: $(PLUGINS_INSTALL)
>
> $(PYTHON_SO_INSTALL): %.install : %.so force
> - $(Q)$(call do_install,$<,$(python_dir_SQ))
> + $(Q)$(call do_install_data,$<,$(python_dir_SQ))

Hmm, I never realized that shared libraries are not suppose to be
executable. At first I thought this was a mistake, but looking at other
shared libraries on my system, it seems a lot are not executable
(although many are, but those may also be made by people like myself who
thought there were suppose to be).

Thanks,

-- Steve

>
> -$(PYTHON_PY_INSTALL): %.install : %.py force
> +$(PYTHON_PY_PROGS): %.install : %.py force
> $(Q)$(call do_install,$<,$(python_dir_SQ))
>
> +$(PYTHON_PY_LIBS): %.install : %.py force
> + $(Q)$(call do_install_data,$<,$(python_dir_SQ))
> +
> $(PYTHON_PY_PLUGINS): %.install : %.py force
> - $(Q)$(call do_install,$<,$(plugin_dir_SQ))
> + $(Q)$(call do_install_data,$<,$(plugin_dir_SQ))
>
> -install_python: $(PYTHON_SO_INSTALL) $(PYTHON_PY_INSTALL) $(PYTHON_PY_PLUGINS)
> +install_python: $(PYTHON_SO_INSTALL) $(PYTHON_PY_PROGS) $(PYTHON_PY_LIBS) $(PYTHON_PY_PLUGINS)
>
> install_cmd: all_cmd install_plugins install_python
> $(Q)$(call do_install,trace-cmd,$(bindir_SQ))




\
 
 \ /
  Last update: 2013-10-25 11:21    [W:0.129 / U:0.128 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site