Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 29 Mar 1999 00:20:04 -0600 (CST)
From:      Nikita Sawant <nikita@evl.uic.edu>
To:        freebsd-questions@FreeBSD.ORG
Subject:   Re: Makefiles in FreeBSD  (fwd)
Message-ID:  <Pine.SGI.3.95.990329001750.4808K-300000@whitted.evl.uic.edu>

next in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
Hi,

I am having problems with making my Makefile freeBSD compatible..
I am a novice user to FreeBSD. 

I am attaching two files with this mail
1) My Makefile
2) Another file (CAVERN_MAKEFILE_INCLUDES)included in the Makefile

You can just guide me on what is to be done to make the Makefile FreeBSD
friendly.

To give you a gist of my work:  
------------------------------
The makefile is for CAVERNSoft, a library developed in our Lab. that
facilitates the networking of CAVEs (Cave Automated Virtual Environment).
All our work has till now been done on SGI Workstations, however we now
wish to do the same networking using PCs and ATM links. For this I need to
port the entire library on to a PC that is powered by FreeBSD. 

If you give me directions to some URL that addresses a similar problem, it
would help me a lot.

> Alternately you can install gmake from ports or packages and see if taht
> handles the Makefile correctly (it is like a GNUMakefilethat you have
> now.)

Where can i find more information on this ??

Thanks,
Nikita

[-- Attachment #2 --]
#CAVERN library includes

# EDIT THE FIRST LINE TO INDICATE WHERE THE CAVERN DISTRIBUTION
# IS STORED.

CAVERN=/tmp_mnt/netusr/disk10/evl/nikita/CAVERN_PORT/CAVERN_GLOBUS
#CAVERN=/nfs/spiff/cavern_globus
#CAVERN=/usr/local/CAVERN

# ALSO: Edit this line to determine whether you want to use the n32 or 32
# binary

BITS=
#BITS=-n32
#BITS=-32

INTER_MODULE_OPTIMIZE=
#-j
OPTIMIZE=-O2

nexus_build_dir_lib=$(CAVERN)/globus/lib
nexus_build_dir_inc=$(CAVERN)/globus/include

CAVERN_INC_DIR=$(CAVERN)/include
CAVERN_LIB_DIR=$(CAVERN)/lib
CAVERN_SRC_DIR=$(CAVERN)/src

############################################################

#THREAD_LIB=-lpthread
THREAD_LIB=

#NEXUS_LIB=-L$(nexus_build_dir_lib) -lglobus_nexus_n32 -lglobus_dc_n32 -lglobus_common_n32  $(THREAD_LIB)
NEXUS_LIB=-L$(nexus_build_dir_lib) -lglobus_nexus_GNU -lglobus_dc_GNU -lglobus_common_GNU  $(THREAD_LIB)
NEXUS_CFLAGS=-I$(nexus_build_dir_inc) 
#NEXUS_CFLAGS=$(INTER_MODULE_OPTIMIZE) -I$(nexus_build_dir_inc) 

HASH_DICT_INC_DIR=$(CAVERN_INC_DIR)/hashDict
MD5KEY_INC_DIR=$(CAVERN_INC_DIR)/md5key
MD5KEY_SRC_DIR=$(MD5KEY_INC_DIR)
KEYTOOL_INC_DIR=$(CAVERN_INC_DIR)/keytool_md5_hashtable_treedir
KEYTOOL_SRC_DIR=$(KEYTOOL_INC_DIR)
SUPPORT_HASH_INC_DIR=$(CAVERN_INC_DIR)/_support_hash
SUPPORT_HASH_SRC_DIR=$(SUPPORT_HASH_INC_DIR)

CAVERN_SUPPORT_INC=-I$(HASH_DICT_INC_DIR) -I$(MD5KEY_INC_DIR) -I$(KEYTOOL_INC_DIR) -I$(SUPPORT_HASH_INC_DIR)
CAVERN_SUPPORT_OBJ= $(MD5KEY_SRC_DIR)/md5.o $(KEYTOOL_SRC_DIR)/keytool.o $(SUPPORT_HASH_SRC_DIR)/_support_hash.o

CAVERN_CFLAGS= -DNEXUS_THREAD_SAFE -I$(CAVERN_INC_DIR) $(CAVERN_SUPPORT_INC) $(NEXUS_CFLAGS)
#_CAVERN_LIB=$(CAVERN_SRC_DIR)/libcavern_n32.a
#_CAVERN_LIB=$(CAVERN_LIB_DIR)/libcavern_n32.a #Nikita
_CAVERN_LIB=$(CAVERN_LIB_DIR)/libcavern_GNU.a
CAVERN_LIB=$(BITS) $(OPTIMIZE) $(_CAVERN_LIB) $(NEXUS_LIB)


[-- Attachment #3 --]
include /usr/include/make/commondefs
include /usr/include/make/commonrules

include ../CAVERN_MAKEFILE_INCLUDES

CAVERN_OBJ=	cvrn_globals.o\
		cvrn_base.o\
		cvrn_comm.o\
		cvrn_debug.o\
		cvrn_db.o\
		cvrn_garbage.o\
		CAVERN_irbKeyId_c.o\
		CAVERN_irb_c.o\
		CAVERN_irbId_c.o\
		CAVERN_irbChannel_c.o\
		CAVERN_irbMcastLink_c.o\
		CAVERN_irbMcastChannel_c.o\
		CAVERN_qosAttrib_c.o\
		CAVERNInit.o\
		CAVERN_irbLink_c.o\
		CAVERN_irbKey_c.o\
		CAVERNplus_mutex_c.o\
		CAVERNplus_condition_c.o\
		CAVERNplus_thread_c.o\
		CAVERNplus_callSequencer_c.o\
		nexus_ez.o\
		logging.o

DIRT=libcavern.a *.o *~ Makedepend 

#############################################################################

CC=/usr/local/bin//g++

all:
	make libcavern.a 

.c++.o:	
	$(CC) -DNEXUS_THREAD_SAFE $(CAVERN_CFLAGS) -c $*.c++
#ptused is needed to make sure the libcavern.a library gets instantiations of all
#classes that are formed from templates.

libcavern.a:	$(CAVERN_OBJ)
	ar rv libcavern.a $(CAVERN_OBJ)  $(CAVERN_SUPPORT_OBJ)


Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SGI.3.95.990329001750.4808K-300000>