From: Blue Lizard (webmaster@dofty.zzn.com)
Date: Sat Apr 06 2002 - 20:30:31 EST
On Sat, 2002-04-06 at 20:09, Blue Lizard wrote:
> Just for kicks, I did similar to what i talk about, but left out/deleted
> things that may have confused matters. This was used for my 0995 build.
> ATTACHED: linux.mk
Or not. Let's try again.
ATTACHED: linux.mk
#! gmake
## AbiSource Program Utilities
## Copyright (C) 1998 AbiSource, Inc.
##
## This program is free software; you can redistribute it and/or
## modify it under the terms of the GNU General Public License
## as published by the Free Software Foundation; either version 2
## of the License, or (at your option) any later version.
##
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
## GNU General Public License for more details.
##
## You should have received a copy of the GNU General Public License
## along with this program; if not, write to the Free Software
## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
## 02111-1307, USA.
##############################################################################
## Linux platform defines
##############################################################################
##################################################################
##################################################################
## The main makefile and/or this file requires that OS_ARCH be set
## to something to describe which chip that this OS is running on.
## This can be used to change which tools are used and/or which
## compiler/loader options are used. It will probably also be used
## in constructing the name object file destination directory.
OS_ARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ -e s/arm.*/arm/ -e s/sa110/arm/ | sed "s/\//-/")
# Define architecture-specific flags (L. Kollar, 3 Nov 1998)
# These are (probably) optional for your platform.
# Compiler defaults should be fine for Intel.
i386_ARCH_FLAGS =
# Jerry LeVan <levan@eagle.eku.edu> provided the PPC flags
# Gary Thomas <gdt@linuxppc.org> suggests using -fno-schedule-insns2
# for some EGCS builds
PPC_ARCH_FLAGS = -fsigned-char -fno-schedule-insns2
ALPHA_ARCH_FLAGS =
SPARC_ARCH_FLAGS =
IA64_ARCH_FLAGS =
S390_ARCH_FLAGS =
# Define tools
CC = gcc
CCC = g++
RANLIB = ranlib
# Suffixes
OBJ_SUFFIX = o
LIB_SUFFIX = a
DLL_SUFFIX = so
AR = ar cr $@
# Compiler flags
ifeq ($(ABI_OPT_PROF),1)
OPTIMIZER = -pg -Wall -ansi -pedantic -fprofile-arcs -ftest-coverage
DEFINES =
OBJ_DIR_SFX = PRF
ABI_OPT_DEBUG = ""
ABI_OPT_OPTIMIZE= ""
ABI_OPTIONS += Profile:On
#endif #/* PROF */
ifeq ($(ABI_OPT_OPTIMIZE),1)
OPTIMIZER = $OPTIMIZER -O3 -fomit-frame-pointer -ansi -pedantic
DEFINES = $DEFINES
OBJ_DIR_SFX = $OBJ_DIR_SFX _OPT
ABI_OPTIONS += Optimize:On
ABI_OPT_DEBUG = ""
endif #/* OPTIMIZE */
ifeq ($(ABI_OPT_DEBUG),1)
#OPTIMIZER = -g -Wall -ansi -pedantic
OPTIMIZER = $OPTIMIZER -g -Wall -pedantic -Wno-long-long
DEFINES = $DEFINES -DDEBUG -UNDEBUG
OBJ_DIR_SFX = $OBJ_DIR_SFX _DBG
endif #/* OPTIMIZE */
ifeq ($(ABI_OPT_GNOME),1)
ifeq ($(ABI_OPT_LIBXML2),1)
OBJ_DIR_SFX = $OBJ_DIR_SFX _GNOME_XML
else
OBJ_DIR_SFX = $OBJ_DIR_SFX _GNOME
endif #/* LIBXML2 */
endif #/* GNOME */
else # DEBUG
OPTIMIZER = -O2 -Wall -ansi -pedantic
DEFINES =
OBJ_DIR_SFX = OBJ
endif
ifeq ($(ABI_OPT_WAY_TOO_MANY_WARNINGS),1)
OPTIMIZER += -Weffc++
endif #/* WAY_TOO_MANY_WARNINGS */
# Includes
OS_INCLUDES =
ifeq ($(ABI_REQUIRE_PEER_ICONV),1)
OS_INCLUDES += -I$(ABI_ROOT)/../libiconv/include
endif
G++INCLUDES = -I/usr/include/g++
# Compiler flags
PLATFORM_FLAGS = -pipe -DLINUX -Dlinux
PORT_FLAGS = -D_POSIX_SOURCE -D_BSD_SOURCE -DHAVE_STRERROR -D_XOPEN_SOURCE -D__USE_XOPEN_EXTENDED
OS_CFLAGS = $(DSO_CFLAGS) $(PLATFORM_FLAGS) $(PORT_FLAGS)
# Architecture-specific flags
ifeq ($(OS_ARCH), i386)
PLATFORM_FLAGS += $(i386_ARCH_FLAGS)
OS_ENDIAN = LittleEndian32
endif
ifeq ($(OS_ARCH), ppc)
PLATFORM_FLAGS += $(PPC_ARCH_FLAGS)
OS_ENDIAN = BigEndian32
endif
ifeq ($(OS_ARCH), alpha)
PLATFORM_FLAGS += $(ALPHA_ARCH_FLAGS)
OS_ENDIAN = LittleEndian32
endif
ifeq ($(OS_ARCH), sparc)
PLATFORM_FLAGS += $(SPARC_ARCH_FLAGS)
OS_ENDIAN = BigEndian32
endif
# Endian for ARM from Jim Studt <jim@federated.com>
ifeq ($(OS_ARCH), arm)
PLATFORM_FLAGS += $(ARM_ARCH_FLAGS)
OS_ENDIAN = LittleEndian32
endif
# Endian for M68K from Roman Hodek <Roman.Hodek@informatik.uni-erlangen.de>
ifeq ($(OS_ARCH), m68k)
PLATFORM_FLAGS += $(M68K_ARCH_FLAGS)
OS_ENDIAN = BigEndian32
endif
ifeq ($(OS_ARCH), ia64)
PLATFORM_FLAGS += $(IA64_ARCH_FLAGS)
OS_ENDIAN = LittleEndian32
endif
ifeq ($(OS_ARCH), s390)
PLATFORM_FLAGS += $(S390_ARCH_FLAGS)
OS_ENDIAN = BigEndian32
endif
ifeq ($(OS_ARCH), parisc)
PLATFORM_FLAGS += $(HPPA_ARCH_FLAGS)
OS_ENDIAN = BigEndian32
endif
ifeq ($(OS_ARCH), parisc64)
PLATFORM_FLAGS += $(HPPA_ARCH_FLAGS)
OS_ENDIAN = BigEndian32
endif
GLIB_CONFIG = glib-config
GTK_CONFIG = gtk-config
GNOME_CONFIG = gnome-config
LIBXML_CONFIG = xml2-config
# Shared library flags
MKSHLIB = $(LD) $(DSO_LDOPTS) -soname $(@:$(OBJDIR)/%.so=%.so)
#MKSHLIB = g++ -shrared -o $(@:$(OBJDIR)/%.so=%.so)
# Which links can this platform create. Define one or
# both of these options.
UNIX_CAN_BUILD_DYNAMIC=1
UNIX_CAN_BUILD_STATIC=1
# Compiler options for static and dynamic linkage
DL_LIBS = dl
STATIC_FLAGS = -static
ABI_NATIVE = unix
ABI_FE = Unix
##################################################################
## Here you can choice if you want to use the gnome stuff.
## Set ABI_OPT_GNOME to 1 (when invoking 'make') or set as
## an environment variable.
##
##ABI_OPT_GNOME=1
##################################################################
## ABIPKGDIR defines the directory containing the Makefile to use to
## build a set of distribution archives (.deb, .rpm, .tgz, .exe, etc)
## This is relative to $(ABI_ROOT)/src/pkg
ABIPKGDIR = linux
PSICONV_PLATFORM_DEFS= CFLAGS='-O2'
# End of linux defs
This archive was generated by hypermail 2.1.4 : Sun Apr 07 2002 - 01:30:48 EST