From owner-freebsd-ports-bugs@FreeBSD.ORG Sun Jun 12 03:20:09 2005 Return-Path: X-Original-To: freebsd-ports-bugs@hub.freebsd.org Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A6EDF16A41C for ; Sun, 12 Jun 2005 03:20:09 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4239B43D49 for ; Sun, 12 Jun 2005 03:20:09 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.3/8.13.3) with ESMTP id j5C3K9EE039714 for ; Sun, 12 Jun 2005 03:20:09 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.3/8.13.1/Submit) id j5C3K9qY039713; Sun, 12 Jun 2005 03:20:09 GMT (envelope-from gnats) Resent-Date: Sun, 12 Jun 2005 03:20:09 GMT Resent-Message-Id: <200506120320.j5C3K9qY039713@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Woody Carey Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3BEDB16A41C for ; Sun, 12 Jun 2005 03:19:30 +0000 (GMT) (envelope-from wcarey@adsl-67-112-113-91.dsl.pltn13.pacbell.net) Received: from adsl-67-112-113-91.dsl.pltn13.pacbell.net (adsl-67-112-113-91.dsl.pltn13.pacbell.net [67.112.113.91]) by mx1.FreeBSD.org (Postfix) with ESMTP id 747A743D4C for ; Sun, 12 Jun 2005 03:19:29 +0000 (GMT) (envelope-from wcarey@adsl-67-112-113-91.dsl.pltn13.pacbell.net) Received: from adsl-67-112-113-91.dsl.pltn13.pacbell.net (localhost [127.0.0.1]) by adsl-67-112-113-91.dsl.pltn13.pacbell.net (8.13.3/8.13.3) with ESMTP id j5C4NivP037425 for ; Sat, 11 Jun 2005 21:23:44 -0700 (PDT) (envelope-from wcarey@adsl-67-112-113-91.dsl.pltn13.pacbell.net) Received: (from root@localhost) by adsl-67-112-113-91.dsl.pltn13.pacbell.net (8.13.3/8.13.3/Submit) id j5C4NhI1037424; Sat, 11 Jun 2005 21:23:43 -0700 (PDT) (envelope-from wcarey) Message-Id: <200506120423.j5C4NhI1037424@adsl-67-112-113-91.dsl.pltn13.pacbell.net> Date: Sat, 11 Jun 2005 21:23:43 -0700 (PDT) From: Woody Carey To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: ports/82155: New port: devel/dynamic-classes C++ dynamic class implementation X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Woody Carey List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Jun 2005 03:20:09 -0000 >Number: 82155 >Category: ports >Synopsis: New port: devel/dynamic-classes C++ dynamic class implementation >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sun Jun 12 03:20:08 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Woody Carey >Release: FreeBSD 5.4-STABLE i386 >Organization: None >Environment: System: FreeBSD adsl-67-112-113-91.dsl.pltn13.pacbell.net 5.4-STABLE FreeBSD 5.4-STABLE #0: Fri May 20 19:18:14 PDT 2005 wcarey@adsl-67-112-113-91.dsl.pltn13.pacbell.net:/usr/obj/usr/src/sys/SMP i386 >Description: Please accept my humble first attempt at contributing a new port to the FreeBSD project. Legal Note: Dr. Gray has not responded to multiple requests for clarification of copyrights and redistribution rights of the original source files upon which this port is based. See http://www.research.att.com/~gisli/dynamic/README.html for info. Neither has his co-author Gisli Hjamytysson. Thank you. >How-To-Repeat: sh dynamic-classes.shar >Fix: --- dynamic-classes.shar begins here --- # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # dynamic-classes # dynamic-classes/pkg-message # dynamic-classes/pkg-descr # dynamic-classes/pkg-plist # dynamic-classes/Makefile # dynamic-classes/distinfo # echo c - dynamic-classes mkdir -p dynamic-classes > /dev/null 2>&1 echo x - dynamic-classes/pkg-message sed 's/^X//' >dynamic-classes/pkg-message << 'END-of-dynamic-classes/pkg-message' XNote: this port installs *nothing* by default! X XTo install this port to a place to experiment with it and modify, Xor use it in your code, first copy the "work/dynamic" directory over to Xsomewhere you can mess with it as non-root user. X XThen from there you can copy another over to your non-root $HOME and Xmess with it. X XIf you do a 'make clean', the work directory will be blown away! X XMake sure you set your LD_LIBRARY_PATH and VERSION_LIBRARY as per Xthe README in work/dynamic. For compiling, don't forget to export Xor setenv CXX=g++ END-of-dynamic-classes/pkg-message echo x - dynamic-classes/pkg-descr sed 's/^X//' >dynamic-classes/pkg-descr << 'END-of-dynamic-classes/pkg-descr' XThis is the initial port of Robert and Gisli's dynamic classes implementation Xin C++ to FreeBSD 5.4. Dynamic Classes wrap around dlopen()/dlsym() to Xprovide a syntactically clean way to load and unload various versions of Xa C++ class at runtime. It is a very powerful technique, making use of Xall of C++ advanced features and demonstrating how to achieve the latest Xbinding possible (runtime binding and re-binding) of a C++ class Ximplementation. See also devel/commmoncpp2 for the DSO class as another Xclass which implements similar functionality. To see this practice in Xfull and glorious action, look at the ACE Service Configurator Framework. X XWWW: http://www.research.att.com/~gisli/dynamic/README.html END-of-dynamic-classes/pkg-descr echo x - dynamic-classes/pkg-plist sed 's/^X//' >dynamic-classes/pkg-plist << 'END-of-dynamic-classes/pkg-plist' X X END-of-dynamic-classes/pkg-plist echo x - dynamic-classes/Makefile sed 's/^X//' >dynamic-classes/Makefile << 'END-of-dynamic-classes/Makefile' X# New ports collection makefile for: dynamic-classes X# Date created: June 10th, 2005 X# Whom: wcarey X# X# $FreeBSD$ X# X XPORTNAME= dynamic-classes XPORTVERSION= 1.0 XCATEGORIES= devel XMASTER_SITES= http://www.research.att.com/~gisli/dynamic/ \ X http://www.badplandude.com/~wcarey/dynamic/ XDISTFILES= dynamic.tgz X XPATCH_SITES= http://www.badplandude.com/~wcarey/dynamic/ XPATCHFILES= patch-Makefile.in \ X patch-genTcpip.cc \ X patch-dynmedium.h \ X patch-load.cc X XMAINTAINER= woodycarey@hotmail.com XCOMMENT= Robert Gray and Gisli Hjalmtysson dynamic classes c++ code X X# configure must be run with environment variable CXX set to "g++" X# and should be passed "--enable-shared" XHAS_CONFIGURE= yes XCONFIGURE_ENV= CXX=g++ XCONFIGURE_ARGS= --enable-shared X XNO_INSTALL=yes XNO_INSTALL_MANPAGES=yes XONLY_FOR_ARCHS= i386 X XWRKSRC= ${WRKDIR}/dynamic X Xpost-build: X ${CAT} pkg-message X X.include END-of-dynamic-classes/Makefile echo x - dynamic-classes/distinfo sed 's/^X//' >dynamic-classes/distinfo << 'END-of-dynamic-classes/distinfo' XMD5 (dynamic.tgz) = b32958ab1ed7b18a9bcc5202a936abaf XSIZE (dynamic.tgz) = 387108 XMD5 (patch-Makefile.in) = 054b06f56db18dfb0d3d791132cd8d80 XSIZE (patch-Makefile.in) = 1205 XMD5 (patch-genTcpip.cc) = 1c2153573739438f691bd253f2ef720a XSIZE (patch-genTcpip.cc) = 4876 XMD5 (patch-dynmedium.h) = fd2fcaa1846c0d2cf618f11a9b1fec03 XSIZE (patch-dynmedium.h) = 562 XMD5 (patch-load.cc) = 8cdb5c4182585a73e1c0644eaefd7905 XSIZE (patch-load.cc) = 2718 END-of-dynamic-classes/distinfo exit --- dynamic-classes.shar ends here --- >Release-Note: >Audit-Trail: >Unformatted: