# Port request - celtx



## sambler (Oct 4, 2011)

Has anyone tried to build celtx for freebsd?

Based on mozilla code base it shouldn't be hard but my initial atempts have failed to build.


----------



## SirDice (Oct 4, 2011)

Some pointers to the original source or website would be nice.

Did you have a look at the Porter's handbook?


----------



## sambler (Oct 4, 2011)

Should have thought of that - the main site is http://www.celtx.com/
The latest release source is at http://download.celtx.com/source/celtx-2-9-1-src.tar.bz2
I think it is based on firefox 3.0.5 code so may need to dig up old firefox patches.

Starting with firefox36 port I change the following to get it downloading but the patches fail - 



```
PORTNAME=	celtx
DISTVERSION=	2-9-1
PORTEPOCH=	1
CATEGORIES=	misc
MASTER_SITES=	[url]http://download.celtx.com/source/[/url]
MASTER_SITE_SUBDIR=	
DISTNAME=	${PORTNAME}-${DISTVERSION}-src

--enable-application=celtx \

WRKSRC:=	${WRKDIR}/${PORTNAME}-${DISTVERSION}-src
```


----------



## SirDice (Oct 4, 2011)

It might be based on FF3.0.5 but the source may have been changed considerably. You'll have to figure out what exactly gets patched and what changed in the celtx source compared to the original FF3 code.


----------



## sambler (Oct 7, 2011)

I started by adding it to ports/misc but multimedia or editor may be a better option. it is basically an editor customized for people making multimedia projects.

Using the old patches and makefile for www/firefox3 about the time of 3.0.5 (dec 2008) I have adjusted one patch slightly from jsnum.c to jsnum.cpp and made minimal changes to makefile so far.

Celtx configures and begins compiling but stops at nanojit/jscntxt.cpp

The makefile and patches I have can be found here


```
g++ -o jscntxt.o -c -I../../dist/include/system_wrappers -include ../../config/gcc_hidden.h -DAVMPLUS_IA32 -DFEATURE_NANOJIT -DJS_TRACER
 -DOSTYPE=\"FreeBSD8\" -DOSARCH=FreeBSD -DEXPORT_JS_API  -DJS_USE_SAFE_ARENA  -I. -I.  -I../../dist/include   -I../../dist/include/js
 -I/usr/local/include/nspr   -I/usr/include  -I../../dist/sdk/include -I. -I/usr/local/include   -fPIC  -I/usr/local/include
  -I/usr/local/include -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy
 -Wno-non-virtual-dtor -Wcast-align -Wno-long-long -fno-strict-aliasing -fshort-wchar -pipe  -DNDEBUG -DTRIMMED -O2  -I/usr/local/include
  -I/usr/local/include -DMOZILLA_CLIENT -include ../../mozilla-config.h jscntxt.cpp
In file included from nanojit/nanojit.h:43,
                 from jstracer.h:53,
                 from jscntxt.cpp:69:
nanojit/avmplus.h: In member function 'void* GCHeap::Alloc(uint32_t)':
nanojit/avmplus.h:228: error: 'valloc' was not declared in this scope
gmake[3]: *** [jscntxt.o] Error 1
gmake[3]: Leaving directory `/usr/ports/misc/celtx/work/celtx-2-9-1-src/mozilla/js/src'
gmake[2]: *** [libs_tier_js] Error 2
gmake[2]: Leaving directory `/usr/ports/misc/celtx/work/celtx-2-9-1-src/mozilla'
gmake[1]: *** [tier_js] Error 2
gmake[1]: Leaving directory `/usr/ports/misc/celtx/work/celtx-2-9-1-src/mozilla'
gmake: *** [default] Error 2
*** Error code 1

Stop in /usr/ports/misc/celtx.
```


----------



## segfault (Oct 7, 2011)

Nice work.
I looked into this a year or so back but never got very far. 
If I have time I may take a look and see if I can lend a hand.


----------

