Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020 
<== Date ==> <== Thread ==>

Subject: Makefile question
From: Mark Rivers via Tech-talk <tech-talk@aps.anl.gov>
To: "tech-talk@aps.anl.gov" <tech-talk@aps.anl.gov>
Date: Sun, 9 Dec 2018 13:49:36 +0000

I have a Makefile that builds 2 libraries.  Library A must be built before library B, because B depends on A (important for dynamic builds on Windows).  What is the rule I need to add to force A to be built before B? 

 

 

This is the actual Makefile.  bitshuffle_hdf5.lib must be built after bitshuffle.lib.

 

TOP=../..

include $(TOP)/configure/CONFIG

#----------------------------------------

#  ADD MACRO DEFINITIONS AFTER THIS LINE

#=============================

 

 

ifeq ($(WITH_BITSHUFFLE),YES)

  ifeq ($(BITSHUFFLE_EXTERNAL),NO)

 

    LIBRARY_IOC = bitshuffle

    BITSHUFFLE = $(TOP)/supportApp/bitshuffleSrc

    USR_CFLAGS_Linux += -std=c99

    USR_CFLAGS_WIN32 += -DLZ4_DLL_EXPORT=1

 

    INC += bitshuffle.h

    INC += bitshuffle_core.h

    INC += bshuf_h5filter.h

    bitshuffle_SRCS += bitshuffle.c

    bitshuffle_SRCS += bitshuffle_core.c

    bitshuffle_SRCS += iochain.c

   

    SRC_DIRS += $(BITSHUFFLE)/lz4

    INC += lz4.h

    bitshuffle_SRCS += lz4.c

 

    ifeq ($(WITH_HDF5),YES)

        LIBRARY_IOC = bitshuffle_hdf5

        bitshuffle_hdf5_SRCS += bshuf_h5filter.c

        bitshuffle_hdf5_SRCS += bshuf_h5plugin.c

        bitshuffle_hdf5_LIBS += bitshuffle hdf5

    endif # ($(WITH_HDF5),YES)

 

  endif # ($(BITSHUFFLE_EXTERNAL),NO)

endif # ($(WITH_BITSHUFFLE),YES)

 

include $(TOP)/configure/RULES

#----------------------------------------

#  ADD RULES AFTER THIS LINE

 

 

 

I tried this rule, which would only work on Windows, but it did not work.

 

bitshuffle_hdf5.lib: bitshuffle.lib

 

 


Replies:
Re: Makefile question Johnson, Andrew N. via Tech-talk

Navigate by Date:
Prev: Re: AD R3-2 libzlib.so Siniša Veseli via Tech-talk
Next: Re: Makefile question Johnson, Andrew N. via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020 
Navigate by Thread:
Prev: Re: AD R3-2 libzlib.so Siniša Veseli via Tech-talk
Next: Re: Makefile question Johnson, Andrew N. via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020 
ANJ, 09 Dec 2018 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·