Skip to content

Commit e27e709

Browse files
sgallagherRafaelGSS
authored andcommitted
build: add --libdir flag to configure
This will allow distribution packages to select an alternative location for the unofficial libnode.so. For example, on Fedora it will install into /usr/lib64 on 64-bit systems. Signed-off-by: Stephen Gallagher <sgallagh@redhat.com> PR-URL: #44361 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
1 parent 754d26a commit e27e709

File tree

2 files changed

+11
-7
lines changed

2 files changed

+11
-7
lines changed

configure.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -735,6 +735,14 @@
735735
help='compile shared library for embedding node in another project. ' +
736736
'(This mode is not officially supported for regular applications)')
737737

738+
parser.add_argument('--libdir',
739+
action='store',
740+
dest='libdir',
741+
default='lib',
742+
help='a directory to install the shared library into relative to the '
743+
'prefix. This is a no-op if --shared is not specified. ' +
744+
'(This mode is not officially supported for regular applications)')
745+
738746
parser.add_argument('--without-v8-platform',
739747
action='store_true',
740748
dest='without_v8_platform',
@@ -1376,6 +1384,7 @@ def configure_node(o):
13761384
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
13771385

13781386
o['variables']['node_shared'] = b(options.shared)
1387+
o['variables']['libdir'] = options.libdir
13791388
node_module_version = getmoduleversion.get_version()
13801389

13811390
if options.dest_os == 'android':

tools/install.py

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -169,19 +169,14 @@ def files(action):
169169

170170
# install libnode.version.so
171171
so_name = 'libnode.' + re.sub(r'\.x$', '.so', variables.get('shlib_suffix'))
172-
action([output_prefix + so_name], 'lib/' + so_name)
172+
action([output_prefix + so_name], variables.get('libdir') + '/' + so_name)
173173

174174
# create symlink of libnode.so -> libnode.version.so (C++ addons compat)
175175
link_path = abspath(install_path, 'lib/libnode.so')
176176
try_symlink(so_name, link_path)
177177
else:
178178
output_lib = 'libnode.' + variables.get('shlib_suffix')
179-
action([output_prefix + output_lib], 'lib/' + output_lib)
180-
if 'true' == variables.get('node_use_dtrace'):
181-
action(['out/Release/node.d'], 'lib/dtrace/node.d')
182-
183-
# behave similarly for systemtap
184-
action(['src/node.stp'], 'share/systemtap/tapset/')
179+
action([output_prefix + output_lib], variables.get('libdir') + '/' + output_lib)
185180

186181
action(['deps/v8/tools/gdbinit'], 'share/doc/node/')
187182
action(['deps/v8/tools/lldb_commands.py'], 'share/doc/node/')

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy