Skip to content

Commit b7ff3c0

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 d2626ef commit b7ff3c0

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

configure

+10-8
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

@@ -432,7 +434,7 @@ intl_optgroup.add_option('--download',
432434
intl_optgroup.add_option('--download-path',
433435
action='store',
434436
dest='download_path',
435-
default=os.path.join(root_dir, 'deps'),
437+
default='deps',
436438
help='Download directory [default: %default]')
437439

438440
parser.add_option_group(intl_optgroup)
@@ -1050,7 +1052,7 @@ def configure_openssl(o):
10501052
o['defines'] += ['NODE_WITHOUT_NODE_OPTIONS']
10511053
if options.openssl_fips:
10521054
o['variables']['openssl_fips'] = options.openssl_fips
1053-
fips_dir = os.path.join(root_dir, 'deps', 'openssl', 'fips')
1055+
fips_dir = os.path.join('deps', 'openssl', 'fips')
10541056
fips_ld = os.path.abspath(os.path.join(fips_dir, 'fipsld'))
10551057
# LINK is for Makefiles, LD/LDXX is for ninja
10561058
o['make_fips_settings'] = [
@@ -1095,7 +1097,7 @@ def configure_static(o):
10951097

10961098

10971099
def write(filename, data):
1098-
filename = os.path.join(root_dir, filename)
1100+
filename = filename
10991101
print('creating %s' % filename)
11001102
f = open(filename, 'w+')
11011103
f.write(data)
@@ -1217,7 +1219,7 @@ def configure_intl(o):
12171219
return
12181220

12191221
# this is just the 'deps' dir. Used for unpacking.
1220-
icu_parent_path = os.path.join(root_dir, 'deps')
1222+
icu_parent_path = 'deps'
12211223

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

0 commit comments

Comments
 (0)