aboutsummaryrefslogblamecommitdiffstats
path: root/erts/epmd/src/Makefile.in
blob: da4370d5f946294abe372bdc38ff177b89adb98a (plain) (tree)
1
2
3
4
5


                  
                                                       
  










                                                                          




                                 




                                  
 


                     
                         
    

                   

            
                








                                                    








                                                                                                                


                                                                                                              

                                                                                                                  
     
 

                                                             

                  
                                                              
              
                                                            


                   
 































                                                      
                      














                                                       
                                           
                                                                          
 
                                    
                                                   
 
            
                                                                    
 


                                              

                                                                             


                  
#
# %CopyrightBegin%
# 
# Copyright Ericsson AB 1998-2016. All Rights Reserved.
# 
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# 
# %CopyrightEnd%
#
include $(ERL_TOP)/make/target.mk

ifeq ($(TYPE),debug)
PURIFY     =
TYPEMARKER = .debug
TYPE_FLAGS = -DDEBUG @DEBUG_FLAGS@
else

ifeq ($(TYPE),purify)
PURIFY     = purify
TYPEMARKER =
TYPE_FLAGS = -O2 -DPURIFY
else

override TYPE = opt
PURIFY     =
TYPEMARKER =
TYPE_FLAGS = -O2
endif
endif

include $(ERL_TOP)/make/$(TARGET)/otp.mk
include ../../vsn.mk
include ../epmd.mk

BINDIR  = $(ERL_TOP)/bin/$(TARGET)
OBJDIR  = $(ERL_TOP)/erts/obj$(TYPEMARKER)/$(TARGET)
ERTS_INCL = -I$(ERL_TOP)/erts/include \
            -I$(ERL_TOP)/erts/include/$(TARGET) \
            -I$(ERL_TOP)/erts/include/internal \
            -I$(ERL_TOP)/erts/include/internal/$(TARGET)

# On windows we always need reentrant libraries.
ifeq ($(TARGET),win32)
ERTS_INTERNAL_LIBS=-L../../lib/internal/$(TARGET) -lerts_internal_r$(ERTS_LIB_TYPEMARKER) @ERTS_INTERNAL_X_LIBS@
else
ifeq ($(findstring vxworks,$(TARGET)),vxworks)
ERTS_INTERNAL_LIBS=-L../../lib/internal/$(TARGET) -lerts_internal$(ERTS_LIB_TYPEMARKER) @ERTS_INTERNAL_X_LIBS@
else
ERTS_INTERNAL_LIBS=-L../../lib/internal/$(TARGET) -lerts_internal$(ERTS_LIB_TYPEMARKER) @ERTS_INTERNAL_X_LIBS@ -lm
endif
endif

ERTS_LIB = $(ERL_TOP)/erts/lib_src/obj/$(TARGET)/$(TYPE)/MADE

CC      = @CC@
WFLAGS  = @WFLAGS@
CFLAGS  = @CFLAGS@ @DEFS@ $(TYPE_FLAGS) $(WFLAGS) $(ERTS_INCL)
LD      = @LD@
LIBS    = @LIBS@ @SYSTEMD_DAEMON_LIBS@ $(ERTS_INTERNAL_LIBS)
LDFLAGS = @LDFLAGS@



# ----------------------------------------------------
# Release directory specification
# ----------------------------------------------------

# The targets
ifeq ($(findstring win32,$(TARGET)),win32)
EPMD = epmd.exe
else
EPMD = epmd
endif

INSTALL_PROGS = $(BINDIR)/$(EPMD)

#---------------------------------
# Options
#---------------------------------
 
EPMD_FLAGS = -DEPMD_PORT_NO=$(EPMD_PORT_NO)

#---------------------------------
# source and object file information
#---------------------------------

EPMD_OBJS = $(OBJDIR)/epmd.o       \
               $(OBJDIR)/epmd_cli.o   \
               $(OBJDIR)/epmd_srv.o 

#---------------------------------
# Build targets
#---------------------------------


all: $(BINDIR)/$(EPMD)

docs:

clean:
	rm -f $(BINDIR)/$(EPMD) 
	rm -f $(ERL_TOP)/erts/obj/$(TARGET)/epmd.o
	rm -f $(ERL_TOP)/erts/obj/$(TARGET)/epmd_cli.o
	rm -f $(ERL_TOP)/erts/obj/$(TARGET)/epmd_srv.o 
	rm -f *.o
	rm -f *~ core

#
# Objects & executables
#

$(BINDIR)/$(EPMD): $(EPMD_OBJS) $(ERTS_LIB)
	$(ld_verbose)$(PURIFY) $(LD) $(LDFLAGS) -o $@ $(EPMD_OBJS) $(LIBS)

$(OBJDIR)/%.o: %.c epmd.h epmd_int.h
	$(V_CC) $(CFLAGS) $(EPMD_FLAGS) -o $@ -c $<

$(ERTS_LIB):
	$(make_verbose)cd $(ERL_TOP)/erts/lib_src && $(MAKE) $(TYPE)

include $(ERL_TOP)/make/otp_release_targets.mk

release_spec: all
	$(INSTALL_DIR)     "$(RELEASE_PATH)/erts-$(VSN)/bin"
	$(INSTALL_PROGRAM) $(INSTALL_PROGS) "$(RELEASE_PATH)/erts-$(VSN)/bin"


release_docs_spec: