Menu

#211 rewrite .mk inclusion rule to use $(WW_THIS_PROJECT_SOURCE_FILES)

open
None
5
2014-10-10
2012-09-01
Lee Worden
No

the title kind of says it all

Discussion

  • Lee Worden

    Lee Worden - 2012-09-06

    See discussion about how to implement this in https://sourceforge.net/p/workingwiki/feature-requests/54/.

    I think it's best to restrict this to .mk files in the project directory proper, not including any that may be in subdirectories. Anybody who's putting makefiles in subdirectories should be allowed to decide for themselves when to include them.

     
  • Lee Worden

    Lee Worden - 2012-09-07

    OK, did that. It's a few lines in ProjectEngine/resources/site-lalashan/makefile-after.

     
  • Lee Worden

    Lee Worden - 2012-09-07

    I don't think the title says it all, actually. This change means our WW installation no longer includes all .mk files in the main project directory - it now only includes .mk files in the main project directory that are source files.

    This should be helpful for the reported problem where .mk files somehow persist after being removed from the list of source files.

    Also, it should make it easier (possible, actually, judging by my attempts) to make rules that generate .mk files from other things, because you'll have control over when/how/whether they get included and/or made.

    • status: open --> closed
    • assigned_to: Lee Worden
    • priority: 6 --> 5
     
  • Lee Worden

    Lee Worden - 2012-09-28

    Reopening because the current implementation breaks projects that use $(MAKE) -C rather than $(call ww-make-in-other-project).

    I think I can write it so that it doesn't break that. This seems worth doing because when we switch to using automatically generated GNUmakefile files in each project, $(MAKE) -C will probably be a fine option, so why make people abandon it now?

    • status: closed --> open
     
  • Lee Worden

    Lee Worden - 2012-09-28

    I will also want to revisit https://sourceforge.net/p/workingwiki/bugs/48/ (the same thing, but for the list of .tex files)

     
  • Lee Worden

    Lee Worden - 2012-09-28

    The current definition of the call is

    define ww-make-in-other-project
      $(MAKE) WW_THIS_DIR=$(strip $1) -C $1 -f $(RESOURCES)/makefile $2
    endef
    

    I'm changing to inferring WW_THIS_DIR from $(CURDIR), because that's what it is, why go in circles passing it in from outside? So once make doesn't need to be told what WW_THIS_DIR is, this'll be equivalent to

    $(MAKE) -C $(PROJECT_DIR_Whatever) -f $(RESOURCES)/makefile $(TARGET).
    

    So people can just as well use that command directly.

     
  • Lee Worden

    Lee Worden - 2012-09-28

    Checked in in r889. It should now be okay to use

    $(MAKE) -C $(PROJECT_DIR_Whatever) -f $(RESOURCES)/makefile $(TARGET).
    
    • status: open --> closed
     
  • Jonathan Dushoff

    Nice.

    JD

    On Fri, Sep 28, 2012 at 3:40 PM, Lee Worden worden@users.sf.net wrote:

    Checked in in r889. It should now be okay to use

    $(MAKE) -C $(PROJECT_DIR_Whatever) -f $(RESOURCES)/makefile $(TARGET).


    bugs:211 rewrite .mk inclusion rule to use $(WW_THIS_PROJECT_SOURCE_FILES)

    Status: open Created: Sat Sep 01, 2012 06:07 AM UTC by Lee Worden Last
    Updated: Fri Sep 28, 2012 07:26 PM UTC Owner: Lee Worden

    the title kind of says it all


    Sent from sourceforge.net because you indicated interest in
    https://sourceforge.net/p/workingwiki/bugs/211/

    To unsubscribe from further messages, please visit
    https://sourceforge.net/auth/prefs/

    --
    McMaster University Department of Biology
    http://lalashan.mcmaster.ca/theobio/DushoffLab/index.php/Main_Page
    https://twitter.com/jd_mathbio

     
  • Lee Worden

    Lee Worden - 2014-10-07
    • status: closed --> open
     
  • Lee Worden

    Lee Worden - 2014-10-07

    Reportedly $(MAKE) -C doesn't invoke the .mk files in the other directory, while ww-make-in-other-project does. I've been telling users that they are supposed to be equivalent. There is strong demand for them to be equivalent.

     
  • Jonathan Dushoff

    We first need to consense on whether using $(MAKE) -C is a stable desideratum.

     

Anonymous
Anonymous

Add attachments
Cancel





Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.