Detecting host OS in Gnu make


 
Thread Tools Search this Thread
Top Forums Programming Detecting host OS in Gnu make
# 1  
Old 11-02-2008
Detecting host OS in Gnu make

Is this possible? Right now I'm developing some code for Linux, Windows and OS X. To build on each of the systems I've currently got separate build targets for each platform. Ideally I'd like to set up a single make rule that can detect the appropriate target and build it.

I know this is correctly done via autoconf for distribution but that is overkill for my purposes.
# 2  
Old 11-03-2008
Perhaps use uname(1) to find out OS, e.g.
Code:
OS := $(shell uname -o)
ifeq $(OS) GNU/Linux
# set variables for Linux 
else
# check for other OSs and set variables appropriately
endif

You would need to check what uname gives you on each of your build platforms.
# 3  
Old 11-03-2008
Cheers for that. It works if I use 'uname -s', OS X doesn't have the -o option. It seems to make me dependent on MinGW for windows since 'uname -s' gives 'MINGW32_NT-5.1' but that isn't a problem.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

I received a WARN when was configuring GNU make,

When I tried to configure GNU make, I received:... WARNING: Your system has neither waitpid() nor wait3(). Without one of these, signal handling is unreliable You should be aware that running GNU make with -j could result in erratic behavior. ... What is that supposed to mean ? my spec: ... (1 Reply)
Discussion started by: abdulbadii
1 Replies

2. Programming

Gnu make: default values and conditionals

I need some help. I use variables and conditionals to build with or without specic libraries. I set USEAL ?= 1 # get value from cmd, defaults to 1 (see comment) the conditional is: ifeq ($(USEAL),1) LIBS = <any libs> else LIBS = endif Its amazing that this works when invoked... (4 Replies)
Discussion started by: dodona
4 Replies

3. OS X (Apple)

Alternatives to GNU Make for users of newer OS X

As you may already know, Apple has integrated all the GNU developer tools into their own graphical development environment so you can no longer use them from the command line. This means that open source software that is distributed as source is inaccessible to users of newer versions of Mac OS X,... (4 Replies)
Discussion started by: Ultrix
4 Replies

4. Shell Programming and Scripting

extension building make GNU Linux

Hi, I do "touch poub.mlc" Download my Makefile, But when I try : make -f Makefile.txt(.txt in order my file to be accepted for upload), it says:"no rule for poub.mlo target" What is wrong in my Makefile(test yourself please before posting)? (1 Reply)
Discussion started by: synhedionn
1 Replies

5. Shell Programming and Scripting

GNU make doesn't pick up changes

It's been a while since I had to write a Makefile, but I've managed to clobber this together: SRC=module1.c module2.c OBJS=$(SRC:%.c=%.o) HDR=include1.h include2.h CC=gcc CFLAGS=-Wall -ggdb -D_XOPEN_SOURCE -I. -ansi all: program program: $(OBJS) $(CC) $(CFLAGS) -o $@ $(OBJS) ... (3 Replies)
Discussion started by: pludi
3 Replies

6. AIX

Not picking up the GNU version of make

Hi team, I am new to unix,and need your advice on the below. I am using aix5.3 and have installed make-3.82 on the server. I need to use gmake for configuring and installing a package ,but it is giving error at the below root@sapsrp:/usr/tmp/xymon-4.3.2 # ./configure.server ... (7 Replies)
Discussion started by: sonal kumar
7 Replies

7. AIX

gnu make fir AIX 5.3 and gcc 3.3.2

Hi all i had installed gcc version 3.3.2 on my AIX 5.3 machine. which make utility i have to instal so it will fit the gcc version tnx skfn (2 Replies)
Discussion started by: skfn1203
2 Replies

8. SCO

GNU cpp and make on SCO

Installed GNU make and the GNU C/C++ compiler on SCO Openserver 5.0.7 recently. Only a normal user is able to run make and compile programs - root is not able to. Under root, make do run, but root can't access the compiler at all, even tho I set root's path to point to the compiler.... (0 Replies)
Discussion started by: The_Librarian
0 Replies

9. UNIX for Dummies Questions & Answers

What's the difference between PMake and GNU Make?

My system is ubuntu, can I use PMake ? (0 Replies)
Discussion started by: meili100
0 Replies

10. UNIX for Advanced & Expert Users

Problems with gnu make

I am running a make file through the gnu make tool and i am getting the following error jsh1035c:/users/egate453/admegate/kapil/samples $ make -f GNUmakefile queue_c make -f ./GNUmakefile queue_c in_objdir=1 build_root=/users/egate453/admegate/kapil/samples make: Entering directory... (2 Replies)
Discussion started by: handak9
2 Replies
Login or Register to Ask a Question