Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 1 Aug 2006 12:38:37 -0700
From:      "Robb Force" <robb_force@hotmail.com>
To:        <freebsd-emulation@freebsd.org>
Subject:   Need help creating Daphne laserdisc emulator port
Message-ID:  <BAY120-DAV116116741B092D0227CAAAF05D0@phx.gbl>

next in thread | raw e-mail | index | archive | help
I'm not sure if I'm sending this to the right list since this seems to be
devoted primarily to emulating operating systems. I thought I would give it
a shot, my apologies if I was wrong. I'm also sorry for the length of this
email!

I would like to create a port of the Daphne laserdisc emulator and have made
some progress I think. This is my first attempt at anything like this and
I'm very new to Unix. Before I attempt anything further I could use some
pointers. I discovered there is a work-in-progress port for this at NetBSD's
site, so I borrowed part of it's pkg list and other things hoping to make
this easier. I've also looked at several other FreeBSD ports that used the
same libraries. Here is my Makefile so far:

<---------------------------------------------------------------------------
------------

# New ports collection makefile for:   daphne
# Date created:        31 July 2006
# Whom:                Nathaniel Roark <robb_force@hotmail.com>
#
# $FreeBSD$
#

PORTNAME=  daphne
PORTVERSION= 0.99.7
CATEGORIES=  emulators
MASTER_SITES= http://www.daphne-emu.com/download/
DISTNAME=  ${PORTNAME}-${PORTVERSION}c-src

MAINTAINER=  ports@FreeBSD.org
COMMENT=  A multiple arcade laserdisc emulator

BUILD_DEPENDS= gsed:${PORTSDIR}/textproc/gsed
LIB_DEPENDS= ogg:${PORTSDIR}/audio/libogg \
   vorbis:${PORTSDIR}/audio/libvorbis
USE_GCC=  3.4+
USE_GMAKE=  yes
GNU_CONFIGURE= yes
USE_SDL=  sdl mixer
USE_LDCONFIG= ${PREFIX}/lib/daphne

.if ${MACHINE_ARCH} == "i386"
MAKE_ENV+=  USE_MMX_RGB2YUV=1
MAKE_ENV+=  PFLAGS="-DNATIVE_CPU_X86 -DMMX_RGB2YUV"
.endif

WRKSRC=  ${WRKDIR}/${PORTNAME}

post-extract:
 ${CP} ${WRKSRC}/src/Makefile.vars.freebsd_x86 ${WRKSRC}/src/Makefile.vars

do-install:
 ${INSTALL_PROGRAM} ${WRKSRC}/daphne ${PREFIX}/bin
 ${MKDIR} ${PREFIX}/lib/daphne
 ${INSTALL_DATA} ${WRKSRC}/libvldp2.so ${PREFIX}/lib/daphne
 ${MKDIR} ${DATADIR}
 ${MKDIR} ${DATADIR}/pics
 ${INSTALL_DATA} ${WRKSRC}/pics/*.bmp ${DATADIR}/pics
 ${MKDIR} ${DATADIR}/sound
 ${INSTALL_DATA} ${WRKSRC}/sound/*.wav ${DATADIR}/sound
 ${INSTALL_DATA} ${WRKSRC}/sound/*.ogg ${DATADIR}/sound
.if !defined(NOPORTDOCS)
 ${MKDIR} ${DOCSDIR}
 ${{INSTALL_MAN}} ${WRKSRC}/doc/docs.html ${DOCSDIR}/index.html
 ${MKDIR} ${DOCSDIR}/graphics
 ${INSTALL_MAN} ${WRKSRC}/doc/docs_files/*.[Jj][Pp][Gg] ${DOCSDIR}/graphics
.endif

.include <bsd.port.mk>

<--------------------------------------------------------------

The items I would like to point out:
- The machine_arch check for i386 is in the NetBSD port. I don't know enough
about environment flags and haven't seen any detailed docs about it so I'm
at a loss on how to alter this for FreeBSD.
- There is a note in the Daphne instructions that explains "You also need to
compile libvldp2.so which comes with DAPHNE and has its own set of
instructions inside the vldp2 directory.  Go read those after you're done
here." I only see "CONFIGURE_DIRS=  src/vldp2" and installing the library in
the NetBSD makefile. Here's the link I've been referring to
http://pkgsrc.se/wip/daphne
- I added the line "USE_LDCONFIG= ${PREFIX}/lib/daphne" since the port will
add a shared library to /usr/local/lib/daphne. Is this correct?
- Lastly, I borrowed this from the other port "${INSTALL_MAN}
${WRKSRC}/doc/docs_files/*.[Jj][Pp][Gg] ${DOCSDIR}/graphics" and am unsure
if this will work in FreeBSD.

Here is the pkg-plist:

<------------------------------------------------------------

bin/daphne
lib/daphne/libvldp2.so
share/daphne/pics/ConsoleFont.bmp
share/daphne/pics/credits.bmp
share/daphne/pics/gamenowook.bmp
share/daphne/pics/ldp1450.bmp
share/daphne/pics/led0.bmp
share/daphne/pics/led1.bmp
share/daphne/pics/led2.bmp
share/daphne/pics/led3.bmp
share/daphne/pics/led4.bmp
share/daphne/pics/led5.bmp
share/daphne/pics/led6.bmp
share/daphne/pics/led7.bmp
share/daphne/pics/led8.bmp
share/daphne/pics/led9.bmp
share/daphne/pics/led10.bmp
share/daphne/pics/led11.bmp
share/daphne/pics/led12.bmp
share/daphne/pics/led13.bmp
share/daphne/pics/led14.bmp
share/daphne/pics/led15.bmp
share/daphne/pics/led16.bmp
share/daphne/pics/lives.bmp
share/daphne/pics/overlayleds1.bmp
share/daphne/pics/overlayleds2.bmp
share/daphne/pics/player1.bmp
share/daphne/pics/player2.bmp
share/daphne/pics/saveme.bmp
share/daphne/sound/ab_alarm1.wav
share/daphne/sound/ab_alarm2.wav
share/daphne/sound/ab_alarm3.wav
share/daphne/sound/ab_alarm4.wav
share/daphne/sound/ab_enemy.wav
share/daphne/sound/ab_fire.wav
share/daphne/sound/ab_ship.wav
share/daphne/sound/bl_shot.wav
share/daphne/sound/cliff_correct.wav
share/daphne/sound/cliff_startup.wav
share/daphne/sound/cliff_wrong.wav
share/daphne/sound/dl2_bad.wav
share/daphne/sound/dl2_coin1.wav
share/daphne/sound/dl2_coin2.wav
share/daphne/sound/dl2_coin3.wav
share/daphne/sound/dl2_coin4.wav
share/daphne/sound/dl2_error.wav
share/daphne/sound/dl2_good.wav
share/daphne/sound/dl2_tic.wav
share/daphne/sound/dl2_toc.wav
share/daphne/sound/dl2_warble.wav
share/daphne/sound/dl2_warn.wav
share/daphne/sound/dl_accept.wav
share/daphne/sound/dl_buzz.wav
share/daphne/sound/dl_credit.wav
share/daphne/sound/esh_beep.wav
share/daphne/sound/gr_alarm1.wav
share/daphne/sound/gr_alarm2.wav
share/daphne/sound/gr_alarm3.wav
share/daphne/sound/gr_alarm4.wav
share/daphne/sound/gr_attack.wav
share/daphne/sound/gr_cannon.wav
share/daphne/sound/gr_fire.wav
share/daphne/sound/gr_mineon.wav
share/daphne/sound/mach3-01.ogg
share/daphne/sound/mach3-02.ogg
share/daphne/sound/mach3-03.ogg
share/daphne/sound/mach3-04.ogg
share/daphne/sound/mach3-05.ogg
share/daphne/sound/mach3-06.ogg
share/daphne/sound/mach3-07.ogg
share/daphne/sound/mach3-08.ogg
share/daphne/sound/mach3-09.ogg
share/daphne/sound/mach3-11.ogg
share/daphne/sound/mach3-13.ogg
share/daphne/sound/mach3-15.ogg
share/daphne/sound/mach3-19.ogg
share/daphne/sound/mach3-20.ogg
share/daphne/sound/mach3-22.ogg
share/daphne/sound/mach3-33.ogg
share/daphne/sound/mach3-34.ogg
share/daphne/sound/mach3-35.ogg
share/daphne/sound/mach3-36.ogg
share/daphne/sound/mach3-37.ogg
share/daphne/sound/mach3-39.ogg
share/daphne/sound/mach3-40.ogg
share/daphne/sound/mach3-41.ogg
share/daphne/sound/mach3-42.ogg
share/daphne/sound/mach3-43.ogg
share/daphne/sound/mach3-45.ogg
share/daphne/sound/mach3-49.ogg
share/daphne/sound/mach3-null.ogg
share/daphne/sound/saveme.wav
share/daphne/sound/sd_coin.wav
share/daphne/sound/sd_fail.wav
share/daphne/sound/sd_succeed.wav
share/daphne/sound/sda_success_hi.wav
share/daphne/sound/sda_success_lo.wav
%%PORTDOCS%%%%DOCSDIR%%/graphics/c15_to_25.jpg
%%PORTDOCS%%%%DOCSDIR%%/graphics/c25_to_null.jpg
%%PORTDOCS%%%%DOCSDIR%%/graphics/c9_to_15.jpg
%%PORTDOCS%%%%DOCSDIR%%/graphics/c9_to_null.jpg
%%PORTDOCS%%%%DOCSDIR%%/graphics/cstraight.jpg
%%PORTDOCS%%%%DOCSDIR%%/graphics/ldp1450_dip2.jpg
%%PORTDOCS%%%%DOCSDIR%%/graphics/ldv6010a.jpg
%%PORTDOCS%%%%DOCSDIR%%/graphics/scoreboard1.jpg
%%PORTDOCS%%%%DOCSDIR%%/graphics/scoreboard2.jpg
%%PORTDOCS%%%%DOCSDIR%%/graphics/screenshot1.jpg
%%PORTDOCS%%%%DOCSDIR%%/graphics/screenshot2.jpg
%%PORTDOCS%%%%DOCSDIR%%/graphics/screenshot3.jpg
%%PORTDOCS%%%%DOCSDIR%%/index.html
%%PORTDOCS%%@dirrm %%DOCSDIR%%/graphics
%%PORTDOCS%%@dirrm %%DOCSDIR%%
@dirrm share/daphne/sound
@dirrm share/daphne/pics
@dirrm share/daphne
@dirrm lib/daphne

<------------------------------------------------------

And finally the pkg-descr:

<-------------------------------------------------------

DAPHNE is a multiple arcade laserdisc emulator that lets one play the
original versions of many laserdisc arcade games (such as Dragon's Lair or
Space Ace) on one's PC.

http://www.daphne-emu.com/index.php

<-------------------------------------------------------

Any assistance with this attempt would be appreciated. Thanks for reading!




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BAY120-DAV116116741B092D0227CAAAF05D0>