Skip to content

Commit 5b04621

Browse files
committed
build: allow running configure from any directory
PR-URL: #17321 Reviewed-By: Richard Lau <[email protected]> Reviewed-By: Jon Moss <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Refael Ackermann <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]>
1 parent 831f021 commit 5b04621

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

configure

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -35,21 +35,23 @@ import subprocess
3535
import shutil
3636
import string
3737

38+
# If not run from node/, cd to node/.
39+
os.chdir(os.path.dirname(__file__) or '.')
40+
3841
# gcc and g++ as defaults matches what GYP's Makefile generator does,
3942
# except on OS X.
4043
CC = os.environ.get('CC', 'cc' if sys.platform == 'darwin' else 'gcc')
4144
CXX = os.environ.get('CXX', 'c++' if sys.platform == 'darwin' else 'g++')
4245

43-
root_dir = os.path.dirname(__file__)
44-
sys.path.insert(0, os.path.join(root_dir, 'tools', 'gyp', 'pylib'))
46+
sys.path.insert(0, os.path.join('tools', 'gyp', 'pylib'))
4547
from gyp.common import GetFlavor
4648

4749
# imports in tools/configure.d
48-
sys.path.insert(0, os.path.join(root_dir, 'tools', 'configure.d'))
50+
sys.path.insert(0, os.path.join('tools', 'configure.d'))
4951
import nodedownload
5052

5153
# imports in tools/
52-
sys.path.insert(0, os.path.join(root_dir, 'tools'))
54+
sys.path.insert(0, 'tools')
5355
import getmoduleversion
5456
from gyp_node import run_gyp
5557

@@ -426,7 +428,7 @@ intl_optgroup.add_option('--download',
426428
intl_optgroup.add_option('--download-path',
427429
action='store',
428430
dest='download_path',
429-
default=os.path.join(root_dir, 'deps'),
431+
default='deps',
430432
help='Download directory [default: %default]')
431433

432434
parser.add_option_group(intl_optgroup)
@@ -1038,7 +1040,7 @@ def configure_openssl(o):
10381040
o['defines'] += ['NODE_WITHOUT_NODE_OPTIONS']
10391041
if options.openssl_fips:
10401042
o['variables']['openssl_fips'] = options.openssl_fips
1041-
fips_dir = os.path.join(root_dir, 'deps', 'openssl', 'fips')
1043+
fips_dir = os.path.join('deps', 'openssl', 'fips')
10421044
fips_ld = os.path.abspath(os.path.join(fips_dir, 'fipsld'))
10431045
# LINK is for Makefiles, LD/LDXX is for ninja
10441046
o['make_fips_settings'] = [
@@ -1083,7 +1085,7 @@ def configure_static(o):
10831085

10841086

10851087
def write(filename, data):
1086-
filename = os.path.join(root_dir, filename)
1088+
filename = filename
10871089
print('creating %s' % filename)
10881090
f = open(filename, 'w+')
10891091
f.write(data)
@@ -1205,7 +1207,7 @@ def configure_intl(o):
12051207
return
12061208

12071209
# this is just the 'deps' dir. Used for unpacking.
1208-
icu_parent_path = os.path.join(root_dir, 'deps')
1210+
icu_parent_path = 'deps'
12091211

12101212
# The full path to the ICU source directory. Should not include './'.
12111213
icu_full_path = 'deps/icu'

0 commit comments

Comments
 (0)