Makefiles


 
Thread Tools Search this Thread
Top Forums UNIX for Beginners Questions & Answers Makefiles
# 1  
Old 12-30-2016
Makefiles

Hi All,

I was going through some makefiles where I saw occurrences of explib_subdirs and expinc_subdirs, which I could not understand.

Exporting libs to subdirs ? Exporting include files to specified subdirs ? When do we need to do that ?

What I could understand is, for a build, I would need libraries, but what is getting exported ?

Thanks,
Rohit
# 2  
Old 12-30-2016
Without seeing the makefile (and, maybe also seeing some of the source files being processed by those targets) there is no way to give a definitive answer. You assume that exp is an abbreviation of export. I would have made a 1st guess that it was an abbreviation of experimental. Maybe they are for libraries and include files developed by someone with the initials EXP. I'm sure there are lots of other possibilities.
# 3  
Old 12-30-2016
Makefiles

Thanks for responding.
May be this could be of some help:

Code:
.if (${TARGET_MACHINE} == "LINUX")
EXPLIB_SUBDIRS+= abc sprc cpd
SUBDIRS+= \
    cpd \
    abc \
    sprc \
    generic
.else
/* some code */
.endif

Also, I found the following from OSF Development Environment User’s Guide:
SUBDIRS The list of sub-directories to to be searched.
EXPINC_SUBDIRS The list of sub-directories which should be searched for
include files to export.
EXPLIB_SUBDIRS The list of sub-directories which should be searched for
libraries to export.

Thanks.

Last edited by rbatte1; 12-30-2016 at 06:08 AM.. Reason: Changed ICODE tags to CODE tags for clarity
# 4  
Old 12-30-2016
Hi,

Code:
EXPLIB_SUBDIRS+= abc sprc cpd

appending the list of directories to a variable EXPLIB_SUBDIRS in above line.

IMO, what (external) libraries , include files , header files are to be included depends on respective project as above variable is not default/special variable.
# 5  
Old 12-30-2016
Makefiles

hi,

Quote:
what (external) libraries , include files , header files are to be included depends on respective project as above variable is not default/special variable.
Ofcourse, abc, sprd, cpd are variables. That is already understood.

EXPLIB_SUBDIRS :

EXP = Export
LIB = Libraries
SUBDIRS = Sub-directories to be searched for the libraries.

What I am unable to understand is what is getting "exported" ? Importing libs or includes, for a second, makes sense. One might need to link the program and the libraries and for that purpose, the libs and include files could be imported from the same directory or the sub-directories.

Thanks.

---------- Post updated at 03:58 PM ---------- Previous update was at 03:37 PM ----------

Hi All,

Answering my own question:

The concept of export is related to Sandboxing and backing tree. Export is a directory in which all the required libraries and include files from the original source are copied into. So, by EXPLIB_SUBDIRS = abc def, it is meant that copy the required libs from the sub-directories abc, def to the EXPORT directory for linking.
This way only the required libs are imported in the EXPORT directory.

Please improve the answer or let me know if there is some gap in my understanding.

Thanks for your answers.
This User Gave Thanks to alltaken For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Programming

First time programmer needs Help with Makefiles

I am trying to practice to create Makefiles. The goal is to create a makefile such that if a change is made to any of the source code files, the project can be rebuilt by typing make at the command line. I have the following files: ac.cc: has include ac.h and pg.h fr.cc: has main... (8 Replies)
Discussion started by: pintu1228
8 Replies

2. Shell Programming and Scripting

Building programs from separate makefiles

I have several makefiles to build various programs in a software suite (currently 4 programs). I want to create a main Makefile so that I can build everything I need. Unsure on the way I should proceed, for example using include fdtc.mk or calling $(MAKE) -f ./mk/Makefile nfdtc Here... (15 Replies)
Discussion started by: kristinu
15 Replies

3. Shell Programming and Scripting

Makefiles: Writing list to screen

I have a make file and want to write some information and am doing @echo " RAYPK_LIBSRC = $(RAYPK_LIBSRC)" The line of code produces RAYPK_LIBSRC = ./source/library/raypk/time.f ./source/library/raypk/model.f ./source/library/raypk/tomo.f ./source/library/raypk/plt.f... (1 Reply)
Discussion started by: kristinu
1 Replies

4. Programming

Makefiles for different programs

I have several programs in several directories and want to use make to build the executables. What I have done is to put the main programs in their own directory together with a makefile to build the program. Then I am thinking of having another makefile residing in the directory above so I can run... (1 Reply)
Discussion started by: kristinu
1 Replies

5. UNIX for Dummies Questions & Answers

Linux kernel modules makefiles doubts

This query is regarding the makefiles of linux kernel modules. I saw at some sites on net it is suggesting to include the following path: KERNEL_SOURCE := /usr/src/linux... while at some places it is askibg to include /lib/modules path: KERNEL_SOURCE := /lib/modules/2.6.27-7-generic/build... (0 Replies)
Discussion started by: rupeshkp728
0 Replies

6. Programming

How to modify all Makefiles in a source tree into linux environment

Hi Frndz, I am new to the makefile generation. I have a source code which contains makefiles in each sub-directories. Previously we have used the entire source code in Dtbuild environment to get the executables. Now have to change the current Dtbuild environment to Linux build... (1 Reply)
Discussion started by: korraag
1 Replies

7. UNIX for Advanced & Expert Users

makefiles

Solved........ (0 Replies)
Discussion started by: klam
0 Replies

8. Shell Programming and Scripting

How can I print variables im using in makefiles?

for example in my make file im building path from env variables and string but need to see what is did what is the best way to print the result? say I have in my Makefile : exec_prefix = $(RUN_ENV_LOCAL)/apache and I will like to print the exec_prefix value , how can it be done ? (1 Reply)
Discussion started by: umen
1 Replies

9. UNIX for Dummies Questions & Answers

makefiles in a directory and subdirectories

I need to develop a makefile that spans across directories. For example, let's say i have an upper level directory (main) and about 2 subdirectories. I want my .cpp files and .o files to be in one subdirectory. I want my .a files to be in the other subdirectory. The .a files are made up of the... (0 Replies)
Discussion started by: benjie_asu
0 Replies

10. UNIX for Advanced & Expert Users

Combining makefiles

I have concatenated 2 makefiles, to produce 1 however it is not running all of the code, producing a fatal error: symbol referencing errors. No output written. Can anybody please help? (4 Replies)
Discussion started by: Dan Rooney
4 Replies
Login or Register to Ask a Question