@@ -414,19 +414,18 @@ putvar CFG_LLVM_LDFLAGS
414
414
putvar CFG_LLVM_LIBS
415
415
putvar CFG_LLVM_TRIPLE
416
416
417
- # Munge any paths that appear in config.mk back to posix-y
418
- perl -i.bak -p -e ' s@ ([a-zA-Z]):[/\\]@ /\1/@go;' \
419
- -e ' s@\\@/@go;' config.mk
420
- rm -f config.mk.bak
417
+ CFG_LLVM_BUILD_DIR=llvm/build
418
+ CFG_LLVM_INST_DIR=llvm/install
421
419
422
420
step_msg " making directories"
421
+
423
422
for i in \
424
423
doc doc/std \
425
424
nd nd/std \
426
425
dl \
427
426
test/run-pass test/run-fail test/compile-fail \
428
427
test/bench test/perf test/pretty \
429
- llvm/build llvm/install
428
+ $LLVM_BUILD_DIR $LLVM_INST_DIR
430
429
do
431
430
make_dir $i
432
431
done
@@ -497,8 +496,53 @@ cd ${CFG_BUILD_DIR}
497
496
msg
498
497
499
498
500
- # Configure llvm
499
+ # Configure llvm. Here we go...
500
+ step_msg " configure: LLVM"
501
+
502
+ CFG_LLVM_SRC_DIR=${CFG_SRC_DIR} /src/llvm
503
+
504
+ LLVM_TARGETS=" --enable-targets=x86,x86_64"
505
+ LLVM_DISABLE=" --disable-docs"
506
+
507
+ LLVM_CXX_32=" g++ -m32"
508
+ LLVM_CC_32=" gcc -m32"
509
+ LLVM_CFLAGS_32=" -m32"
510
+ LLVM_CXXFLAGS_32=" -m32"
511
+ LLVM_LDFLAGS_32=" -m32"
512
+
513
+ # FIXME: Need to change flags for x64
514
+ LLVM_CXX=$LLVM_CXX_32
515
+ LLVM_CC=$LLVM_CC_32
516
+ LLVM_CFLAGS=$LLVM_CFLAGS_32
517
+ LLVM_CXXFLAGS=$LLVM_CXXFLAGS_32
518
+ LLVM_LDFLAGS=$LLVM_LDFLAGS_32
501
519
520
+ CXX=$LLVM_CXX
521
+ CC=$LLVM_CC
522
+ CFLAGS=$LLVM_CFLAGS
523
+ CXXFLAGS=$LLVM_CXXFLAGS
524
+ LDFLAGS=$LLVM_LDFLAGS
525
+
526
+ export CXX
527
+ export CC
528
+ export CFLAGS
529
+ export CXXFLAGS
530
+ export LDFLAGS
531
+
532
+ cd $CFG_LLVM_BUILD_DIR
533
+ # FIXME: This won't work if CFG_SRC_DIR is absolute
534
+ ${CFG_BUILD_DIR} /${CFG_LLVM_SRC_DIR} /configure $LLVM_TARGETS $LLVM_DISABLE
535
+ cd $CFG_BUILD_DIR
536
+
537
+ putvar CFG_LLVM_SRC_DIR
538
+ putvar CFG_LLVM_BUILD_DIR
539
+ putvar CFG_LLVM_INST_DIR
540
+
541
+
542
+ # Munge any paths that appear in config.mk back to posix-y
543
+ perl -i.bak -p -e ' s@ ([a-zA-Z]):[/\\]@ /\1/@go;' \
544
+ -e ' s@\\@/@go;' config.mk
545
+ rm -f config.mk.bak
502
546
503
547
copy ${CFG_SRC_DIR} Makefile.in ./Makefile
504
548
0 commit comments