diff -r -u parrot-current/config/gen/makefiles/parrot_embed_pl.in parrot-andy/config/gen/makefiles/parrot_embed_pl.in
old
|
new
|
|
19 | 19 | $config{PARROT} = '..@slash@..@slash@parrot@exe@'; |
20 | 20 | $config{C_LIBS} = '@libs@'; |
21 | 21 | $config{INCLUDE} = "$config{PARROTDIR}/include"; |
22 | | #UNLESS(win32):$config{ALL_PARROT_LIBS} = "@libparrot_ldflags@ $config{C_LIBS} @linkflags@"; |
| 22 | #UNLESS(win32):$config{ALL_PARROT_LIBS} = "@libparrot_linkflags@ $config{C_LIBS} @linkflags@"; |
23 | 23 | $config{ABS_PARROTDIR} = Cwd::realpath( |
24 | 24 | File::Spec->rel2abs( $config{PARROTDIR} ) ); |
25 | 25 | $config{LDDLFLAGS} = $Config{lddlflags}; |
… |
… |
|
36 | 36 | 'PREREQ_PM' => { 'ExtUtils::CBuilder' => 0 }, |
37 | 37 | #IF(win32): 'LIBS' => [ $config{C_LIBS} ], |
38 | 38 | #ELSE: 'LIBS' => [ $config{ALL_PARROT_LIBS} ], |
39 | | #IF(win32): 'OBJECT' => q|@libparrot_ldflags@ Embed@o@|, |
| 39 | #IF(win32): 'OBJECT' => q|@libparrot_linkflags@ Embed@o@|, |
40 | 40 | 'INC' => "-I$config{INCLUDE}", |
41 | 41 | 'PM' => { map { $_ => "blib/$_" } <lib/Parrot/*pm> }, |
42 | 42 | 'clean' => { FILES => '*.xs t/greet.pbc' }, |
diff -r -u parrot-current/config/gen/makefiles/pirc.in parrot-andy/config/gen/makefiles/pirc.in
old
|
new
|
|
68 | 68 | pirc$(EXE): $(OBJS) |
69 | 69 | $(LINK) @ld_out@$@ \ |
70 | 70 | $(OBJS) \ |
71 | | @rpath_blib@ @libparrot_ldflags@ $(C_LIBS) $(LINKFLAGS) $(LINK_DYNAMIC) |
| 71 | @rpath_blib@ @libparrot_linkflags@ $(C_LIBS) $(LINKFLAGS) $(LINK_DYNAMIC) |
72 | 72 | |
73 | 73 | src/pirparser$(O): src/pirparser.c src/pirparser.h |
74 | 74 | src/pirlexer$(O): src/pirlexer.c src/pirlexer.h |
diff -r -u parrot-current/config/gen/makefiles/root.in parrot-andy/config/gen/makefiles/root.in
old
|
new
|
|
510 | 510 | LIBPARROT := @libparrot@ |
511 | 511 | |
512 | 512 | #IF(has_icu):ICU_SHARED := @icu_shared@ |
513 | | ALL_PARROT_LIBS := @libparrot_ldflags@ $(ICU_SHARED) $(C_LIBS) |
| 513 | ALL_PARROT_LIBS := @libparrot_linkflags@ $(ICU_SHARED) $(C_LIBS) |
514 | 514 | |
515 | 515 | # dynamic extensions |
516 | 516 | DYNEXT_DIR := runtime/parrot/dynext |
diff -r -u parrot-current/config/init/hints/cygwin.pm parrot-andy/config/init/hints/cygwin.pm
old
|
new
|
|
52 | 52 | blib_dir => '.', |
53 | 53 | libparrot_ldflags => '-L' . $build_dir . ' -lparrot', |
54 | 54 | inst_libparrot_ldflags => '-L' . $bindir . ' -lparrot', |
| 55 | libparrot_linkflags => '-L' . $build_dir . ' -lparrot', |
| 56 | inst_libparrot_linkflags => '-L' . $bindir . ' -lparrot', |
55 | 57 | ); |
56 | 58 | |
57 | 59 | # inet_aton needs to be defined on Cygwin. |
diff -r -u parrot-current/config/init/hints/mswin32.pm parrot-andy/config/init/hints/mswin32.pm
old
|
new
|
|
109 | 109 | |
110 | 110 | # If we are building shared, need to include dynamic libparrot.lib, otherwise |
111 | 111 | # the static libparrot.lib. |
| 112 | # Unclear if it's needed both for ld and link. |
112 | 113 | $conf->data->set( libparrot_ldflags => "\"$build_dir\\libparrot.lib\"" ); |
| 114 | $conf->data->set( libparrot_linkflags => "\"$build_dir\\libparrot.lib\"" ); |
113 | 115 | |
114 | 116 | # 'link' needs to be link.exe, not cl.exe. |
115 | 117 | # This makes 'link' and 'ld' the same. |
… |
… |
|
247 | 249 | ld_share_flags => '-shared ', |
248 | 250 | libparrot_ldflags => "\"$build_dir\\libparrot.dll\"", |
249 | 251 | inst_libparrot_ldflags => "\"$bindir\\libparrot.dll\"", |
| 252 | libparrot_linkflags => "\"$build_dir\\libparrot.dll\"", |
| 253 | inst_libparrot_linkflags => "\"$bindir\\libparrot.dll\"", |
250 | 254 | ncilib_link_extra => 'src/libnci_test.def', |
251 | 255 | sym_export => '__declspec(dllexport)', |
252 | 256 | sym_import => '__declspec(dllimport)', |
diff -r -u parrot-current/config/inter/libparrot.pm parrot-andy/config/inter/libparrot.pm
old
|
new
|
|
118 | 118 | : '' |
119 | 119 | ); |
120 | 120 | |
| 121 | # When building shared libraries and dynamically loadable |
| 122 | # modules with 'ld', do we need to include -lparrot? If so |
| 123 | # this variable contains the necessary flags. (This is normally |
| 124 | # empty, but may be overridden by various hints files for |
| 125 | # specific platforms.) |
| 126 | |
| 127 | # This version works in the build directory. |
121 | 128 | unless ( defined( $conf->data->get('libparrot_ldflags') ) ) { |
122 | | $conf->data->set(libparrot_ldflags => |
| 129 | $conf->data->set(libparrot_ldflags => ''); |
| 130 | } |
| 131 | |
| 132 | # This version refers to the installed library. |
| 133 | unless ( defined( $conf->data->get('inst_libparrot_ldflags') ) ) { |
| 134 | $conf->data->set(inst_libparrot_ldflags => ''); |
| 135 | } |
| 136 | |
| 137 | # When linking an executable to -lparrot, this variable |
| 138 | # contains the necessary flags to find and use -lparrot. |
| 139 | |
| 140 | # This version uses the -lparrot in the build directory. |
| 141 | unless ( defined( $conf->data->get('libparrot_linkflags') ) ) { |
| 142 | $conf->data->set(libparrot_linkflags => |
123 | 143 | '-L' |
124 | 144 | . $conf->data->get('build_dir') |
125 | 145 | . $conf->data->get('slash') |
… |
… |
|
128 | 148 | ); |
129 | 149 | } |
130 | 150 | |
131 | | unless ( defined( $conf->data->get('inst_libparrot_ldflags') ) ) { |
132 | | $conf->data->set(inst_libparrot_ldflags => |
| 151 | # This version uses the installed -lparrot. |
| 152 | unless ( defined( $conf->data->get('inst_libparrot_linkflags') ) ) { |
| 153 | $conf->data->set(inst_libparrot_linkflags => |
133 | 154 | '-L' |
134 | 155 | . $conf->data->get('libdir') |
135 | 156 | . ' -lparrot' |
diff -r -u parrot-current/lib/Parrot/Test.pm parrot-andy/lib/Parrot/Test.pm
old
|
new
|
|
966 | 966 | ? "" |
967 | 967 | : "-L$PConfig{blib_dir} ")) |
968 | 968 | . ($^O =~ m/MSWin32/ |
969 | | ? $PConfig{libparrot_ldflags} |
| 969 | ? $PConfig{libparrot_linkflags} |
970 | 970 | : "-lparrot") |
971 | 971 | : File::Spec->join( |
972 | 972 | @PConfig{qw/build_dir blib_dir libparrot_static/}, |
diff -r -u parrot-current/tools/dev/mk_language_shell.pl parrot-andy/tools/dev/mk_language_shell.pl
old
|
new
|
|
318 | 318 | CFLAGS := @ccflags@ @cc_shared@ @cc_debug@ @ccwarn@ @cc_hasjit@ @cg_flag@ @gc_flag@ |
319 | 319 | CC_OUT := @cc_o_out@ |
320 | 320 | LD_OUT := @ld_out@ |
321 | | #IF(parrot_is_shared):LIBPARROT := @inst_libparrot_ldflags@ |
322 | | #ELSE:LIBPARROT := |
| 321 | LIBPARROT := @inst_libparrot_ldflags@ |
323 | 322 | |
324 | 323 | OPS2C := $(PERL) $(LIB_DIR)/tools/build/ops2c.pl |
325 | 324 | |
… |
… |
|
411 | 410 | CFLAGS := @ccflags@ @cc_shared@ @cc_debug@ @ccwarn@ @cc_hasjit@ @cg_flag@ @gc_flag@ |
412 | 411 | CC_OUT := @cc_o_out@ |
413 | 412 | LD_OUT := @ld_out@ |
414 | | #IF(parrot_is_shared):LIBPARROT := @inst_libparrot_ldflags@ |
415 | | #ELSE:LIBPARROT := |
| 413 | LIBPARROT := @inst_libparrot_ldflags@ |
416 | 414 | |
417 | 415 | PMC2C_INCLUDES := --include $(SRC_DIR) --include $(SRC_DIR)/pmc |
418 | 416 | PMC2C := $(PERL) $(LIB_DIR)/tools/build/pmc2c.pl |
diff -r -u parrot-current/tools/dev/pbc_to_exe.pir parrot-andy/tools/dev/pbc_to_exe.pir
old
|
new
|
|
284 | 284 | link_dynamic = $P0['link_dynamic'] |
285 | 285 | linkflags = $P0['linkflags'] |
286 | 286 | ld_out = $P0['ld_out'] |
287 | | libparrot = $P0['libparrot_ldflags'] |
| 287 | libparrot = $P0['libparrot_linkflags'] |
288 | 288 | libs = $P0['libs'] |
289 | 289 | o = $P0['o'] |
290 | 290 | rpath = $P0['rpath_blib'] |