Blame win/Makefile.mingw

Packit 022b05
#
Packit 022b05
# Makefile.mingw --
Packit 022b05
#
Packit 022b05
#       Makefile for win32 mingw environment.
Packit 022b05
#
Packit 022b05
# See the file "COPYING" for information on usage and redistribution
Packit 022b05
# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
Packit 022b05
#
Packit 022b05
# @(#) $Id: Makefile.mingw 7949 2008-03-22 16:19:33Z schoenw $
Packit 022b05
#
Packit 022b05
Packit 022b05
##
Packit 022b05
## Installation paths: 
Packit 022b05
##
Packit 022b05
## MIBDIR   -- MIB destination (let it end with /mibs; check againt config.h)
Packit 022b05
## PIBDIR   -- MIB destination (let it end with /pibs; check againt config.h)
Packit 022b05
## BINDIR   -- destination for the binaries (smidump.exe, ...)
Packit 022b05
##
Packit 022b05
# INSTROOT = c:\smi
Packit 022b05
INSTROOT = c/smi
Packit 022b05
MIBDIR = $(INSTROOT)/mibs
Packit 022b05
PIBDIR = $(INSTROOT)/pibs
Packit 022b05
BINDIR = $(INSTROOT)/bin
Packit 022b05
LIBDIR = $(INSTROOT)/lib
Packit 022b05
Packit 022b05
##
Packit 022b05
## Commands:
Packit 022b05
##
Packit 022b05
Packit 022b05
##
Packit 022b05
## Linux cross-compile is now the way to go.
Packit 022b05
## compilation within win-environment works, but you need to
Packit 022b05
## change path an options settings to get installation work.
Packit 022b05
## 
Packit 022b05
# CC	= gcc
Packit 022b05
# CP	= copy
Packit 022b05
# RM      = del
Packit 022b05
# AR	= ar
Packit 022b05
# MKDIR	= -mkdir
Packit 022b05
Packit 022b05
##
Packit 022b05
## Debian Linux mingw cross-compiler version:
Packit 022b05
##
Packit 022b05
CC	= i586-mingw32msvc-gcc
Packit 022b05
CP	= cp
Packit 022b05
RM	= rm -f
Packit 022b05
AR	= i586-mingw32msvc-ar
Packit 022b05
MKDIR	= -mkdir
Packit 022b05
Packit 022b05
##
Packit 022b05
## Definitions:
Packit 022b05
##
Packit 022b05
CFLAGS = -O2 -Wall
Packit 022b05
INCLUDES = -I. -I../lib -I../tools
Packit 022b05
Packit 022b05
## 
Packit 022b05
## Global Makefile settings
Packit 022b05
##
Packit 022b05
LIBSMIOBJS = \
Packit 022b05
	win.o \
Packit 022b05
	data.o \
Packit 022b05
	check.o \
Packit 022b05
	error.o \
Packit 022b05
	util.o \
Packit 022b05
	smi.o \
Packit 022b05
	parser-smi.o \
Packit 022b05
	scanner-smi.o \
Packit 022b05
	parser-sming.o \
Packit 022b05
	scanner-sming.o \
Packit 022b05
	snprintf.o
Packit 022b05
Packit 022b05
TOOLSOBJS = \
Packit 022b05
	smiquery.o \
Packit 022b05
	smilint.o \
Packit 022b05
	smidump.o \
Packit 022b05
	smidiff.o \
Packit 022b05
	smixlate.o \
Packit 022b05
	shhopt.o \
Packit 022b05
	fprint.o \
Packit 022b05
	fortopat.o \
Packit 022b05
	rea.o \
Packit 022b05
 	dstring.o \
Packit 022b05
	dump-sming.o \
Packit 022b05
	dump-smi.o \
Packit 022b05
	dump-imports.o \
Packit 022b05
	dump-types.o \
Packit 022b05
	dump-tree.o \
Packit 022b05
	dump-mosy.o \
Packit 022b05
	dump-corba.o \
Packit 022b05
	dump-cm.o \
Packit 022b05
	dump-jax.o \
Packit 022b05
	dump-netsnmp.o \
Packit 022b05
	dump-xml.o \
Packit 022b05
	dump-identifiers.o \
Packit 022b05
	dump-metrics.o \
Packit 022b05
	dump-python.o \
Packit 022b05
	dump-perl.o \
Packit 022b05
	dump-scli.o \
Packit 022b05
	dump-xsd.o \
Packit 022b05
	dump-sppi.o \
Packit 022b05
	dump-sizes.o \
Packit 022b05
	dump-svg.o \
Packit 022b05
	dump-compliance.o \
Packit 022b05
	dump-yang.o \
Packit 022b05
	dump-boilerplate.o
Packit 022b05
#	dump-smiv3.o
Packit 022b05
#	dump-fig.o
Packit 022b05
Packit 022b05
SMILIB = libsmi.a
Packit 022b05
Packit 022b05
##
Packit 022b05
## Implicit Targets
Packit 022b05
##
Packit 022b05
VPATH = .:../lib:../tools
Packit 022b05
.c.o:
Packit 022b05
	$(CC) -c $(CFLAGS) $(INCLUDES) -o $@ $<
Packit 022b05
Packit 022b05
Packit 022b05
##
Packit 022b05
## Targets
Packit 022b05
##
Packit 022b05
all:	libs tools
Packit 022b05
Packit 022b05
libs:	$(SMILIB)
Packit 022b05
Packit 022b05
$(SMILIB):	$(LIBSMIOBJS)
Packit 022b05
	$(AR) -ruv $(SMILIB) $(LIBSMIOBJS)
Packit 022b05
Packit 022b05
tools:	smiquery.exe smilint.exe smidump.exe smidiff.exe smixlate.exe
Packit 022b05
Packit 022b05
smiquery.exe:	$(TOOLSOBJS) $(SMILIB)
Packit 022b05
	$(CC) $(CFLAGS) -o smiquery.exe smiquery.o shhopt.o $(SMILIB)
Packit 022b05
Packit 022b05
smilint.exe:	$(TOOLSOBJS) $(SMILIB)
Packit 022b05
	$(CC) $(CFLAGS) -o smilint.exe smilint.o shhopt.o $(SMILIB)
Packit 022b05
Packit 022b05
smidump.exe:	$(TOOLSOBJS) $(SMILIB)
Packit 022b05
	$(CC) $(CFLAGS) \
Packit 022b05
		-o smidump.exe smidump.o dump-sming.o dump-smi.o \
Packit 022b05
		dump-imports.o dump-types.o dump-tree.o dump-mosy.o \
Packit 022b05
		dump-corba.o dump-netsnmp.o dump-cm.o dump-jax.o dump-xml.o \
Packit 022b05
		dump-identifiers.o dump-metrics.o dump-python.o dump-perl.o \
Packit 022b05
		dump-scli.o dump-xsd.o dump-sppi.o dump-sizes.o dump-svg.o \
Packit 022b05
		dump-compliance.o dump-yang.o dump-boilerplate.o \
Packit 022b05
		shhopt.o fprint.o fortopat.o rea.o $(SMILIB)
Packit 022b05
Packit 022b05
smidiff.exe:	$(TOOLSOBJS) $(SMILIB)
Packit 022b05
	$(CC) $(CFLAGS) -o smidiff.exe smidiff.o shhopt.o $(SMILIB)
Packit 022b05
Packit 022b05
smixlate.exe:	$(TOOLSOBJS) $(SMILIB)
Packit 022b05
	$(CC) $(CFLAGS) -o smixlate.exe smixlate.o shhopt.o dstring.o $(SMILIB)
Packit 022b05
Packit 022b05
clean:
Packit 022b05
	$(RM) *.o
Packit 022b05
	$(RM) *.a
Packit 022b05
	$(RM) *.exe
Packit 022b05
Packit 022b05
install:	all install-doc install-bin install-mibs install-pibs
Packit 022b05
Packit 022b05
install-doc:
Packit 022b05
	$(MKDIR) $(INSTROOT)
Packit 022b05
	$(CP) ../README $(INSTROOT)
Packit 022b05
	$(CP) ../COPYING $(INSTROOT)
Packit 022b05
	$(CP) ../ChangeLog $(INSTROOT)
Packit 022b05
	$(CP) ../THANKS $(INSTROOT)
Packit 022b05
	$(CP) ../TODO $(INSTROOT)
Packit 022b05
	$(CP) README.mingw $(INSTROOT)
Packit 022b05
	$(MKDIR) $(INSTROOT)/doc
Packit 022b05
	-$(CP) ../doc/*.txt $(INSTROOT)/doc
Packit 022b05
	-$(CP) ../doc/*.ps $(INSTROOT)/doc
Packit 022b05
	-$(CP) ../doc/smi* $(INSTROOT)/doc
Packit 022b05
Packit 022b05
install-bin:
Packit 022b05
	$(MKDIR) $(BINDIR)
Packit 022b05
	$(CP) *.exe $(BINDIR)
Packit 022b05
	$(MKDIR) $(LIBDIR)
Packit 022b05
	$(CP) *.a $(LIBDIR)
Packit 022b05
Packit 022b05
install-mibs:
Packit 022b05
	$(MKDIR) $(MIBDIR)
Packit 022b05
	$(MKDIR) $(MIBDIR)/iana
Packit 022b05
	-$(CP) ../mibs/iana/* $(MIBDIR)/iana
Packit 022b05
	$(MKDIR) $(MIBDIR)/ietf
Packit 022b05
	-$(CP) ../mibs/ietf/* $(MIBDIR)/ietf
Packit 022b05
	$(MKDIR) $(MIBDIR)/irtf
Packit 022b05
	-$(CP) ../mibs/irtf/* $(MIBDIR)/irtf
Packit 022b05
	$(MKDIR) $(MIBDIR)/tubs
Packit 022b05
	-$(CP) ../mibs/tubs/* $(MIBDIR)/tubs
Packit 022b05
	$(MKDIR) $(MIBDIR)/site
Packit 022b05
	-$(CP) ../mibs/site/* $(MIBDIR)/site
Packit 022b05
Packit 022b05
install-pibs:
Packit 022b05
	$(MKDIR) $(PIBDIR)
Packit 022b05
	$(MKDIR) $(PIBDIR)/ietf
Packit 022b05
	-$(CP) ../pibs/ietf/* $(PIBDIR)/ietf
Packit 022b05
	$(MKDIR) $(PIBDIR)/tubs
Packit 022b05
	-$(CP) ../pibs/tubs/* $(PIBDIR)/tubs
Packit 022b05
	$(MKDIR) $(PIBDIR)/site
Packit 022b05
	-$(CP) ../pibs/site/* $(PIBDIR)/site
Packit 022b05
Packit 022b05
zip: install
Packit 022b05
	(cd c; zip -r ../libsmi.zip .)
Packit 022b05
Packit 022b05
##