Merge Andrew's libs-prereq branch
This commit is contained in:
@@ -170,7 +170,13 @@ endif
|
||||
$(DIRECTORY_TARGETS) :
|
||||
$(MKDIR) -p $@
|
||||
|
||||
$(PRODNAME): $(INSTALL_LIB_INSTALLS)
|
||||
# Install LIB_INSTALLS libraries before linking executables
|
||||
$(TESTPRODNAME) $(PRODNAME): | $(INSTALL_LIB_INSTALLS)
|
||||
|
||||
# Install built libraries too, unless Makefile says to wait
|
||||
ifneq ($(DELAY_INSTALL_LIBS),YES)
|
||||
$(TESTPRODNAME) $(PRODNAME): | $(INSTALL_LIBS) $(INSTALL_DLLSTUB_LIBS)
|
||||
endif
|
||||
|
||||
# RELEASE file consistency checking
|
||||
checkRelease:
|
||||
|
||||
@@ -15,6 +15,18 @@
|
||||
<h2 align="center">Changes made on the 3.15 branch since 3.15.3</h2>
|
||||
<!-- Insert new items immediately below here ... -->
|
||||
|
||||
<h3>Build rules and DELAY_INSTALL_LIBS</h3>
|
||||
|
||||
<p>A new order-only prerequisite build rule has been added to ensure that
|
||||
library files (and DLL stubs on Windows) get installed before linking any
|
||||
executables, which resolves parallel build problems on high-powered CPUs. There
|
||||
are some (rare) cases though where a Makefile has to build an executable and run
|
||||
it to be able to compile code for a library built by the same Makefile. With
|
||||
this new build rule GNUmake will complain about a circular dependency and the
|
||||
build will probably fail in those cases. To avoid this problem the failing
|
||||
Makefile should set <tt>DELAY_INSTALL_LIBS = YES</tt> before including the
|
||||
<tt>$(TOP)/configure/RULES</tt> file, disabling the new build rule.</p>
|
||||
|
||||
<h3>IOC environment variables and build parameters</h3>
|
||||
|
||||
<p>The IOC now sets a number of environment variables at startup that provide
|
||||
|
||||
@@ -69,6 +69,11 @@ CLEANS += $(COMMON_DIR)/aitConvertGenerated.cc
|
||||
USR_CXXFLAGS_Linux = -fno-strict-aliasing
|
||||
USR_CXXFLAGS_RTEMS = -fno-strict-aliasing
|
||||
|
||||
ifeq ($(T_A),$(EPICS_HOST_ARCH))
|
||||
# genApps and aitGen are needed to finish libgdd
|
||||
DELAY_INSTALL_LIBS = YES
|
||||
endif
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
# Manual dependencies
|
||||
|
||||
@@ -45,6 +45,11 @@ Com_SYS_LIBS_WIN32 = ws2_32 advapi32 user32
|
||||
|
||||
Com_RCS = Com.rc
|
||||
|
||||
ifeq ($(T_A),$(EPICS_HOST_ARCH))
|
||||
# Antelope & flex are needed to finish libCom
|
||||
DELAY_INSTALL_LIBS = YES
|
||||
endif
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
include $(LIBCOM)/as/RULES
|
||||
|
||||
Reference in New Issue
Block a user