# # targets.mk # # $Source: /usr/local/CVS/SETREF_1_0_Release/pkcs7/src/targets.mk,v # $Revision: 1.9 # $Date: 1997/06/25 16:56:15 # $Name: SETREF_1_0_Release # $Disclaimer: # ---------------------------------------------------------------------- # SET Draft Reference Implementation Disclaimer/License # June 30, 1997 # # This is a beta version of the SET Draft Reference Implementation # ("DRI"). It is a work in progress and is being provided at this # stage and in this form to help developers and other interested # parties to understand the SET protocol. This version of the DRI # provides the core functionality required to process a simple # transaction. This release does not support certificate authority # messages. Nor does it support the SET option to perform # transactions without cardholder certificates. For more details # on the functionality in this beta version, please refer to the # attached documentation. # # Later versions of the DRI will include additional functionality # and may include other changes. DO NOT RELY UPON THIS CODE IN YOUR # DEVELOPMENT. If you discover a bug, please let us know by posting # a message to the SET-DEV mailing list. Our lawyers made us include # the next four paragraphs, so PLEASE READ THE TEXT BELOW because it # describes what you can do with the DRI. # # Copyright (C) 1996, 1997, Visa International Service Association and # MasterCard International Incorporated. All rights reserved. # Permission to copy and implement the material contained herein is # granted subject to the conditions that (i) any copy or re-publication # must bear this legend in full; (ii) any derivative work must bear # a notice that it is not the Draft Reference Implementation ("DRI") # for SET and (iii) that none of the copyright holders shall have any # responsibility or liability whatsoever to any other party arising # from the use or publication of the material contained herein. # # Visa and MasterCard ("Licensors") hereby grant you ("Licensee") a # limited license to (i) make, use, copy and modify the DRI for the # purpose of developing software that complies with the SET # Specification ("SET Products") and for the purpose of achieving a # better understanding of the SET Protocol; and (ii) distribute SET # Products that incorporate all or a portion of the DRI and other # software, which together are provided under a defined interface # different from that provided by the DRI's API. Licensee shall not # redistribute or sell a license to the DRI nor shall Licensee # incorporate any part of the DRI into a SET Toolkit. A "Toolkit" # means a product that provides comprehensive facilities to enable # other parties to create software products for distribution. # Bolt-on applications and payment modules shall not be considered # Toolkits for the purpose of this license. The DRI is not intended # to be used as a Toolkit. # # Licensors make no representation or warranty of any kind, express # or implied, relating to the DRI. Licensors are making the DRI # publicly available as an aid to understanding, creating, and # testing SET Products. Licensees are solely responsible for any # use of the DRI and agree to hold Licensors harmless for any claim # that may arise out of any product created with the DRI. # # Licensee expressly acknowledges Terisa Systems, Inc., a Delaware # Corporation with offices at 4984 El Camino Real, Los Altos, # California, as a third party beneficiary of this license. # # This software is controlled material under U.S. law and the laws # of other jurisdictions and you hereby acknowledge and agree that # you must fully comply with all the current laws of the United States # including, without limitation, rules and regulations of the United # States Office of Export Administration and other applicable U.S. # governmental agencies. # ---------------------------------------------------------------------- # $ # # Copyright (C) 1997, Visa International Service Association and MasterCard International Incorporated # All Rights Reserved. # # briank@terisa.com # # # CONFIGURE USER-DEFINED LOCAL ENVIRONMENT # # These fields are specified by the user. The remainder of # this file is generated from this user-specified information. # # PKCS7_DEFINES: # cpp defines, with the -D flag preceeding each # # PKCS7_INCLUDES: # cpp include directories, with the -I flag preceeding each # # PKCS7_INTERNAL: # headers files which are local to a specific module directory, # and should not be used by other parts of the toolkit or by # the user # # PKCS7_LIBNAME: # the library associated with this module directory, used in # most cases for debugging purposes # # PKCS7_MAKEFILES: # the makefiles # # PKCS7_PREFIX: # defines the module name, which also serves as the # prefix for all the variable names defined in this file # # PKCS7_PRIVATE: # the private, for-toolkit-use-only API header files # # PKCS7_PROGRAMS: # programs to build # # PKCS7_PUBLIC: # the header files that define the public API for the toolkit # # PKCS7_SOURCES: # the source files to compile to object # PKCS7_DEFINES = PKCS7_INCLUDES = -I$(A2C_SRCDIR) -I$(ALGAE_SRCDIR) \ -I$(ALLOC_CTX_SRCDIR) -I$(ASN1_SRCDIR) \ -I$(BSAFE_SRCDIR) -I$(CERTS_SRCDIR) \ -I$(INCLUDE_SRCDIR) -I$(ERROR_CTX_SRCDIR) \ -I$(IO_CTX_SRCDIR) -I$(KDB_SRCDIR) \ -I$(UTIL_SRCDIR) PKCS7_INTERNAL = findkey.h oaep_codec.h pkcs7_error.h pkcs7attr.h \ signeddata.h PKCS7_LIBNAME = libpkcs7.$(LIBSUFFIX) PKCS7_MAKEFILES = Makefile global.mk override.mk targets.mk PKCS7_PREFIX = PKCS7 PKCS7_PRIVATE = DigestedData.h common.h pkcs7_types.h pkcs7ctx.h PKCS7_PROGRAMS = PKCS7_PUBLIC = setpublic.h PKCS7_SOURCES = DigestedData.c common.c envelopeddata.c findkey.c \ nocsigneddata.c oaep_codec.c pkcs7_error.c \ pkcs7attr.c pkcs7ctx.c signeddata.c # # CONFIGURE AUTOMATICALLY-GENERATED LOCAL ENVIRONMENT # # PKCS7_OBJECTS: # object files to build # # PKCS7_UNUSED: # obsolete files in the module directory that are not # used during the build process # # PKCS7_USED: # all files in the module directory that are used # during the build process # PKCS7_OBJECTS = DigestedData.$(OBJSUFFIX) common.$(OBJSUFFIX) \ envelopeddata.$(OBJSUFFIX) findkey.$(OBJSUFFIX) \ nocsigneddata.$(OBJSUFFIX) oaep_codec.$(OBJSUFFIX) \ pkcs7_error.$(OBJSUFFIX) pkcs7attr.$(OBJSUFFIX) \ pkcs7ctx.$(OBJSUFFIX) signeddata.$(OBJSUFFIX) PKCS7_UNUSED = PKCS7_USED = $(PKCS7_INTERNAL:%=$(PKCS7_SRCDIR)%) \ $(PKCS7_MAKEFILES:%=$(PKCS7_SRCDIR)%) \ $(PKCS7_PRIVATE:%=$(PKCS7_SRCDIR)%) \ $(PKCS7_PUBLIC:%=$(PKCS7_SRCDIR)%) \ $(PKCS7_SOURCES:%=$(PKCS7_SRCDIR)%) # # NOTES # # The following variables may be used during the build process, # but are not defined in this file. If they are to be set # to something other than the default blank, then they must # be set by the calling make system. # # PKCS7_SRCDIR: # if the build target directory is different from the # module directory (the source directory), then this # variable contains the relative or full path of # the module directory # # LIBARS: # the library archive files (with fully-specified paths) that # executables built from this module directory depend upon # # LIBPATHS: # the paths to search for library archives (specified with # the -L) # # LIBS: # the libraries to use while building executables from # this module directory (specified with the -l) # # # GENERIC ENVIRONMENT # DEFINES += $(PKCS7_DEFINES) OBJECTS += $(PKCS7_OBJECTS) PUBLIC += $(PKCS7_PUBLIC) # # GENERIC DEPENDENCIES # # default: # default dependency, must be the first dependency in this makefile # # all: # build everything in this module directory # # build: # make only the toolkit build files of this module directory # # ci: # perform an RCS check-in of this module directory # # clean: # remove the compiled files # # clean_public: # remove the public header files that have been copied # to a public build directory # # objects: # build the object files (this dependency is used for # building the toolkit library) # # private: # build only the private API header files # # public: # build only the public API header files # default: $(PKCS7_LIBNAME) default: $(PKCS7_PROGRAMS) all: $(PKCS7_PUBLIC) all: $(PKCS7_OBJECTS) all: $(PKCS7_LIBNAME) all: $(PKCS7_PROGRAMS) build: $(PKCS7_PUBLIC) build: $(PKCS7_OBJECTS) ci: pkcs7_ci clean: pkcs7_clean clean_public: pkcs7_clean_public objects: $(PKCS7_OBJECTS) private: $(PKCS7_PRIVATE) public: $(PKCS7_PUBLIC) # # LOCAL UTILITY DEPENDENCIES # # utility dependencies are necessary because of some # make-isms having to do with dependencies # pkcs7_ci: $(CI) $(CIFLAGS) $(PKCS7_USED) pkcs7_clean: $(RM) $(RMFLAGS) $(PKCS7_OBJECTS) $(PKCS7_LIBNAME) $(PKCS7_PROGRAMS) pkcs7_clean_public: $(RM) $(RMFLAGS) $(PKCS7_PUBLIC) pkcs7_objects: $(PKCS7_OBJECTS) pkcs7_programs: $(PKCS7_PROGRAMS) pkcs7_public: $(PKCS7_PUBLIC) # # BUILD DEPENDENCIES # # build dependencies invoke the rule used to build each # class of file # $(PKCS7_LIBNAME): $(AR) $(ARFLAGS) $@ $? $(RANLIB) $@ $(PKCS7_OBJECTS): $(COMPILE.c) $(PKCS7_SRCDIR)$(@:%.$(OBJSUFFIX)=%.c) $(DEFINES) $(INCLUDES) $(PKCS7_PUBLIC): $(CP) $(CPFLAGS) $(PKCS7_SRCDIR)$@ $@ $(PKCS7_PROGRAMS): $(LINK.c) $@.$(OBJSUFFIX) $(LDLIBS) $(LIBS) $(LIBPATHS) # # FILE DEPENDENCIES # # file dependencies state, for each file that is built, # which file(s) it depends upon # setpublic.h: $(PKCS7_SRCDIR)setpublic.h DigestedData.$(OBJSUFFIX): $(PKCS7_SRCDIR)DigestedData.h DigestedData.$(OBJSUFFIX): $(PKCS7_SRCDIR)DigestedData.c common.$(OBJSUFFIX): $(PKCS7_SRCDIR)common.h common.$(OBJSUFFIX): $(PKCS7_SRCDIR)common.c envelopeddata.$(OBJSUFFIX): $(PKCS7_SRCDIR)envelopeddata.c findkey.$(OBJSUFFIX): $(PKCS7_SRCDIR)findkey.h findkey.$(OBJSUFFIX): $(PKCS7_SRCDIR)findkey.c nocsigneddata.$(OBJSUFFIX): $(PKCS7_SRCDIR)nocsigneddata.c oaep_codec.$(OBJSUFFIX): $(PKCS7_SRCDIR)oaep_codec.h oaep_codec.$(OBJSUFFIX): $(PKCS7_SRCDIR)oaep_codec.c pkcs7_error.$(OBJSUFFIX): $(PKCS7_SRCDIR)pkcs7_error.h pkcs7_error.$(OBJSUFFIX): $(PKCS7_SRCDIR)pkcs7_error.c pkcs7attr.$(OBJSUFFIX): $(PKCS7_SRCDIR)pkcs7attr.h pkcs7attr.$(OBJSUFFIX): $(PKCS7_SRCDIR)pkcs7attr.c pkcs7ctx.$(OBJSUFFIX): $(PKCS7_SRCDIR)pkcs7ctx.h pkcs7ctx.$(OBJSUFFIX): $(PKCS7_SRCDIR)pkcs7ctx.c signeddata.$(OBJSUFFIX): $(PKCS7_SRCDIR)signeddata.h signeddata.$(OBJSUFFIX): $(PKCS7_SRCDIR)signeddata.c $(PKCS7_LIBNAME): $(PKCS7_OBJECTS)