Ticket #338 (closed todo: fixed)

Opened 6 years ago

Last modified 5 years ago

deprecated: dynoplibs.pl and dynpmc.pl

Reported by: allison Owned by: coke
Priority: normal Milestone:
Component: configure Version:
Severity: medium Keywords:
Cc: Language:
Patch status: Platform:

Description

The scripts tools/build/dynoplibs.pl and tools/build/dynpmc.pl are deprecated and will be removed. (Perl scripts generated from template files to embed hardcoded paths in an attempt to poorly emulate a Makefile, should just be replaced with a Makefile. Especially when it's such a simple Makefile.)

I'll happily write the relevant makefiles for any language migrating off of these tools. Good examples will soon be found in the new versions of config/gen/makefiles/dynoplibs.in and config/gen/makefiles/dynpmc.in.

Attachments

convert_dynoplibs_to_makefile.patch Download (3.5 KB) - added by allison 6 years ago.
Replacement makefile template for dynoplibs.
convert_dynpmc_to_makefile.patch Download (5.9 KB) - added by allison 6 years ago.
Replacement makefile template for dynpmc.

Change History

Changed 6 years ago by allison

Replacement makefile template for dynoplibs.

Changed 6 years ago by allison

Replacement makefile template for dynpmc.

  Changed 6 years ago by fperrad

tools/build/dynpmc.pl takes care of 'group' & 'lib' declaration in PMC file. Makefiles cannot.

'group' & 'lib' could be deprecated or not ?

  Changed 6 years ago by allison

  • milestone 1.0 deleted

Makefiles can take care of group and lib, the makefiles I added for Rakudo and Partcl already do.

Postponing the removal of dynoplibs.pl and dynpmc.pl, as many languages still depend on them. (Parrot no longer uses them.)

We might also add a makefile generator for the dynpmc and dyops makefiles, to make the task easier on the language maintainer.

  Changed 5 years ago by coke

  • owner set to coke

It's been 8 months. Let's plan on removing these before the next release.

follow-up: ↓ 6   Changed 5 years ago by coke

The only use of this in core is in compilers/ncigen. Will attempt to remove this in branches/one_make for just-after-2.0 mergeback.

follow-up: ↓ 7   Changed 5 years ago by coke

clarification: only dynpmc.pl is used in ncigen; removed dynopslib.pl in branch.

in reply to: ↑ 4   Changed 5 years ago by jkeenan

Replying to coke:

The only use of this in core is in compilers/ncigen. Will attempt to remove this in branches/one_make for just-after-2.0 mergeback.

one_make branch was merged into trunk at r43593.

in reply to: ↑ 5   Changed 5 years ago by coke

Replying to coke:

clarification: only dynpmc.pl is used in ncigen; removed dynopslib.pl in branch.

compilers/ncigen is not built by default, and when I build and run 'make test' in it, tests fail.

Is anyone using this compiler?

  Changed 5 years ago by coke

  • status changed from new to closed
  • resolution set to fixed

tewk++ points out that this script, while referenced in the ncigen makefile, is never actually invoked. Removed the script and all references to it in r43705.

Note: See TracTickets for help on using tickets.